Alembic export data type
-
- Posts: 17
- Joined: Sat Dec 30, 2017 4:07 pm
Alembic export data type
Hello,
I was wondering if there's a way to change the data type when exporting alembic files. For instance, velocity is exported as vector which totally makes sense, but Maya's alembic reader doesn't read it correctly. Maya's workflow allows to select a color set as motion source, so it would be very helpful to write the velocity attribute as color set (vertex map). But on the other hand, Houdini can read the velocity attribute perfectly, so I think a way to let the user choose the data type written to the alembic files would be the best solution.
On this same topic, I would like to ask if the velocity data is per frame or per second. I think it's per second but I'm not entirely sure. For instance, I simulated at 240 fps but was rendering at 24 fps. The velocity values were totally off until I did some math on the velocity attributes (v/(240/24)). Is there a way to change this parameter also before exporting the alembic files?.
I'm asking these questions because different DCCs and different renderers have different workflows for interpreting this data, and not everyone has a Houdini license around to change the data types. Also, if you search for RealFlow motion blur, you'll find lots of people asking about this and suggesting workarounds. For Maya for instance, an extra (paid) plugin is needed just to change the data type. So having the ability of set the data type would be very useful for every user, regardless of the DCC.
What do you think?
Orlando.
I was wondering if there's a way to change the data type when exporting alembic files. For instance, velocity is exported as vector which totally makes sense, but Maya's alembic reader doesn't read it correctly. Maya's workflow allows to select a color set as motion source, so it would be very helpful to write the velocity attribute as color set (vertex map). But on the other hand, Houdini can read the velocity attribute perfectly, so I think a way to let the user choose the data type written to the alembic files would be the best solution.
On this same topic, I would like to ask if the velocity data is per frame or per second. I think it's per second but I'm not entirely sure. For instance, I simulated at 240 fps but was rendering at 24 fps. The velocity values were totally off until I did some math on the velocity attributes (v/(240/24)). Is there a way to change this parameter also before exporting the alembic files?.
I'm asking these questions because different DCCs and different renderers have different workflows for interpreting this data, and not everyone has a Houdini license around to change the data types. Also, if you search for RealFlow motion blur, you'll find lots of people asking about this and suggesting workarounds. For Maya for instance, an extra (paid) plugin is needed just to change the data type. So having the ability of set the data type would be very useful for every user, regardless of the DCC.
What do you think?
Orlando.
Last edited by Orlando Esponda on Thu Jan 25, 2018 1:36 pm, edited 1 time in total.
-
- Posts: 178
- Joined: Tue Aug 29, 2017 12:35 pm
Re: Alembic export data type
Thanks for sharing your thoughts Orlando.
The data type cannot be be changed with a one-click action, and is fixed for each channel. Giving users the possibility of defining a custom data type is certainly something to think about, but I don't expect such a feature to come in the near future. Anyway, I agree that it could make things easier in terms of data exchange on different platforms. I'll pass your idea to our developers as a feature request.
With regards the speed values there's a tip from our RealFlow Xpert Daniel Moreno in our blog http://blog.realflow.com/tips/realflow- ... ts-part-1/ that might address your issue:
The data type cannot be be changed with a one-click action, and is fixed for each channel. Giving users the possibility of defining a custom data type is certainly something to think about, but I don't expect such a feature to come in the near future. Anyway, I agree that it could make things easier in terms of data exchange on different platforms. I'll pass your idea to our developers as a feature request.
With regards the speed values there's a tip from our RealFlow Xpert Daniel Moreno in our blog http://blog.realflow.com/tips/realflow- ... ts-part-1/ that might address your issue:
When collating Alembic files of a simulation created in SLOW MOTION, always remember to turn the simulation rate back to 24 or 30 FPS. This way the alembic file speed will be correctly created and not messed up.
-
- Posts: 17
- Joined: Sat Dec 30, 2017 4:07 pm
Re: Alembic export data type
Thanks Thomas,
I really hope the developers see this request a a good suggestion because it will help a lot of people, really
About the speed tip, I'm going to test it soon, but just to be sure... so, the fps of the scene have a direct relation on how the speed values are stored in the alembic files, right? These values are "scaled" if I simulate at a higher fps but before generating the meshes, I switch to a lower fps. Is this correct?
Thanks again.
I really hope the developers see this request a a good suggestion because it will help a lot of people, really
About the speed tip, I'm going to test it soon, but just to be sure... so, the fps of the scene have a direct relation on how the speed values are stored in the alembic files, right? These values are "scaled" if I simulate at a higher fps but before generating the meshes, I switch to a lower fps. Is this correct?
Thanks again.
Re: Alembic export data type
I found that after merging all alembic files into one file, all channels they are messed up. When imported to 3D MAX mesh looks normal accept that it has some black spots located in one small area, not entire object. It's impossible to find any channel information in MAX. If I import alembic file of a particular frame, everything is fine, all channels can be found and used. I was even able to create blending effect... for one frame only. Unfortunately, MAX doesn't work with sequence of alembic files.
-
- Posts: 178
- Joined: Tue Aug 29, 2017 12:35 pm
Re: Alembic export data type
@ Orlando
@ duke3d
Question is if the problems you see with stitched files are caused by the Alembic importer in MAX? From my experience I can tell that many Alembic importers don't work correctly and have issues: they don't support certain things, rotate/flip imported elements, expect Xform nodes, and so on.
Are you familiar with MAXScript? If yes, I recommend writing a short sequence importer script. I've written such a script for Clarisse and it's definitely the most economic and hazzle-free way to use RF's Alembics.
Yes, this is how I read it, but to be sure we'll contact the guy who shared this tip.These values are "scaled" if I simulate at a higher fps but before generating the meshes, I switch to a lower fps. Is this correct?
@ duke3d
Most 3D apps expect a single Alembic file. When we introduced Alembic in RF we were thinking about this issue for a long time, but finally decided to go the sequence route. The reason is that RF might create Alembic files with hundreds of Gigabytes in the worst case. There's a chance that these huge files go corrupt and they also slow down RF when writing simulation files. So it was a bit like choosing between the devil and the deep blue sea. For the sake of reliability and speed we decided to store sequences.Unfortunately, MAX doesn't work with sequence of alembic files.
Question is if the problems you see with stitched files are caused by the Alembic importer in MAX? From my experience I can tell that many Alembic importers don't work correctly and have issues: they don't support certain things, rotate/flip imported elements, expect Xform nodes, and so on.
Are you familiar with MAXScript? If yes, I recommend writing a short sequence importer script. I've written such a script for Clarisse and it's definitely the most economic and hazzle-free way to use RF's Alembics.
-
- Posts: 17
- Joined: Sat Dec 30, 2017 4:07 pm
Re: Alembic export data type
Strange… I tested this and nothing changed: before creating the mesh, I changed my scene fps from 240 to 24 expecting to get normalized velocity values but the results were the same as before. Is not a big deal when working with Houdini, but a big issue for other DCCs I think.Thomas Schlick wrote: ↑Tue Jan 30, 2018 9:18 am@ OrlandoYes, this is how I read it, but to be sure we'll contact the guy who shared this tip.These values are "scaled" if I simulate at a higher fps but before generating the meshes, I switch to a lower fps. Is this correct?
Thanks anyway
-
- Posts: 178
- Joined: Tue Aug 29, 2017 12:35 pm
Re: Alembic export data type
I've just tested a stitched ABC with meshes in Clarisse and it turned out correctly. I've been using a frame rate of 125 for the simulation, and 25 for meshing. I think that Clarisse works very similar to Houdini here.
I also don't see any black spots or other glitches with my meshes, and all channels are visible in Clarisse. So, I assume it's really an issue with the MAX Alembic importer. Anyway, I'll get in touch with our MAX user to see if he's able to reproduce your observations. Maybe he can share more information on this topic.
Thanks for all of your reports! They're really helpful for us to sort out things. And sorry for the inconveniences
I also don't see any black spots or other glitches with my meshes, and all channels are visible in Clarisse. So, I assume it's really an issue with the MAX Alembic importer. Anyway, I'll get in touch with our MAX user to see if he's able to reproduce your observations. Maybe he can share more information on this topic.
Thanks for all of your reports! They're really helpful for us to sort out things. And sorry for the inconveniences
Re: Alembic export data type
here is more information.
I checked my old project. It was done in previous version of Realflow. I also used MAX 2016. Today, I've imported mesh to MAX 2017 and got this: I was wrong about channels. I was able to get all of them, but couldn't use them because of that weird black spots. The same thing as in MAX 2016.
Then I stitched my old Alembic mesh in current version of Realflow. Imported to MAX 2017 and got this: mesh looks good now, but quantity of channels is not that large any more O.o. I tried newer project. Mesh looked good. I also got not so many channels as it was in past.
I also got a error every time I want to render with Standard MAX rendering engine. I thnk this particular issue is MAX problem only, because I was able to use VRay and RedShift without any errors. So! Old version of stitched alembic mesh still have that ugly spots. Newly generated (from the same old mesh sequence) in the latest Version of Realflow has no black artifacts, but has less channels in MAX.
Hope it will help somehow.
My respect,
Andrey
I checked my old project. It was done in previous version of Realflow. I also used MAX 2016. Today, I've imported mesh to MAX 2017 and got this: I was wrong about channels. I was able to get all of them, but couldn't use them because of that weird black spots. The same thing as in MAX 2016.
Then I stitched my old Alembic mesh in current version of Realflow. Imported to MAX 2017 and got this: mesh looks good now, but quantity of channels is not that large any more O.o. I tried newer project. Mesh looked good. I also got not so many channels as it was in past.
I also got a error every time I want to render with Standard MAX rendering engine. I thnk this particular issue is MAX problem only, because I was able to use VRay and RedShift without any errors. So! Old version of stitched alembic mesh still have that ugly spots. Newly generated (from the same old mesh sequence) in the latest Version of Realflow has no black artifacts, but has less channels in MAX.
Hope it will help somehow.
My respect,
Andrey
You do not have the required permissions to view the files attached to this post.
-
- Posts: 178
- Joined: Tue Aug 29, 2017 12:35 pm
Re: Alembic export data type
Thanks again for the additional information. Unfortunately, I can't say very much here since I'm not on 3DS, but I'll pass it to our developers. Did you think about a scripted import solution? Could this be an option for you?
Re: Alembic export data type
I din't think about it. For now, I can use alembic files without any problem in MAX 2017. The quantity of the channels is not a big problem for me. I usually use only velocity channel for storing different data I need ))Thomas Schlick wrote: ↑Tue Jan 30, 2018 12:04 pmThanks again for the additional information. Unfortunately, I can't say very much here since I'm not on 3DS, but I'll pass it to our developers. Did you think about a scripted import solution? Could this be an option for you?
Thank you for responding
Andrey