Arnold Motion Blur on Tearing nCloth Mesh, Not Working!


#1

Hi,
Im tring to render motion blur using Arnold in Maya, and am having some difficulties.
I have a cached nCloth simulation, that tears so the geometry changes over time, which seems to be affecting the MB result.
Im rendering with deformation turned on, and on the first frame the mesh renders fine, however when the cloth tears, the geometry becomes transparent, at first i thought i was just gone, however when increasing keys value to around 50, it becomes less transparent, but still keeps some transparency.
The mesh also renders fine with deformation turned off, and i can see the cloth properly on every frame, but then there is no MB without deformation on.
I have tried MB with deformation on, on a normal nCloth cache (where nothing tears) and MB renders fine, which leads me to believe it has something to do with the tearing/changing of the mesh.

Ive read the documentation, but there is no mention of anything to do with this.

Does anyone have any ideas on how to fix this? Any ideas would be much appreciated. I can post an example scene file if my post isn’t clear.

Thanks


#2

Changing topology is always a problem. You can try to use an alembic cache which saves point velocities and can handle topology changes.


#3

Hey,

Maybe this can help you: http://soup-dev.com/examples2_3.htm Check at the bottom of the page. Not sure if this works with arnold but I think it does. If you download soup there are also example scenes so you can check how to set it up.

Good luck!


#4

Changing topology is always a problem. You can try to use an alembic cache which saves point velocities and can handle topology changes.

I had tried exporting as an alembic, however it dosn’t seem to store point velocities on its own, unless its exported with motion vector color set, which i think can then be read by Arnolds motion vector source? However i dont know how to create a motion vector color set, i believe you need velocity per vertex.

Found a quote from Duncan which confirms this

You can create a colorset for your mesh then set the color per vertex values to your velocity values( rgb = xyz ). On the shape then set motionVectorColorSet to your color set. If you render in Mental ray it should then use this for the motion blur instead of the difference between frames. (nParticles use this method for blur when converted to a mesh, because the mesh typically changes topology between frames) Colorsets were used because they have a lot of support in Maya, including things like special propagation across construction history and smoothing.

I had consindered Soup but wanted to avoid it if possible as the mesh is quite heavy, but will look in to it. Thanks