MeshFromStrandsNode > shader assignements > abc workflow questions.

 
 
 
Posted by:engineeringa52
Data created:21 September 2016

Hello!

First off I am loving this software and the support and response I'm getting on this forum is amazing.  Thank you and keep up the great work!

Ok, now down to business.  I have a workflow questions when using MeshFromNodes that creates geometry with multiple shader assignements (pic 1) If i export it using regular alembic (in this case we use exocortex crate) I get a single mesh that only allows one shader assignment thus negating the random shader assignement in the MeshFromStrandNode.  Additionally I can export the same system as a Vray Proxy. Voalia!  i get a proper mesh material with slots to plugin my multiple materials... and things are good.... sort of.

for proof of concept this is great.  the downside is that vray proxies with motion blur tend to take lots of time to export and additionally our facility utilizes a abc/point cache animation attachement type animation pipeline.(and faster motion blur caclulation)  Thats not saying we couldn't go full mesh export for special cases like feathers...but that still leaves us with how to attache the shaders?

thoughts or ideas?  could the MeshfromStrandNode actually break out multiple meshes that coinside with the numbers of shaders in the shader list? This would allow us to attach the shaders to the isolated mesh per shaderList??  just an idea... i'd love to hear your thoughts on this workflow issue.

Thanks again,

Andy


Attached Files:
Image 1Image 2

in the second image the mesh on the right is a vray proxy(vrmesh) and the object is an abc full geometry export from the same fur system (pic 1)

Breaking down a mesh into separate mesh shapes based on shader assignment is an interesting idea, but it sounds like it should be handled using a separate/general node. Is the VRay Proxy export you mention also Alembic files? I wonder why it is slower than Exocortex approach. Maybe trying to get Exocortex to support mesh shader assignments would also be a good idea?

Marsel Khadiyev (Software Developer, EPHERE Inc.)

The vray proxy is its own thing... its a .vrmesh (pretranslated geo for the vray render...) all geo acutually goes though this process at render time... Honestly i don't know why its typically so slow... but its a moot point for us as this is not in our pipeline methodology

Yeah an extra node would be great.... and it would be silky smooth in our pipeline.  We would author the bird (in this case) generate the seperate geo and kill the history and add that to the model. (keeping the uv sets would be important for global and per strand mapping)  then we can put the animation through a "simulation" stage in which the feather setup is swapped out or added to the rig... and we bake out the .abc point cache.

There is a hard break between animation and lighting as we don't want the overhead of the rigs in our lighting scenes (my guess is most facilities do this).  That break as you see causes issues in a fur/feather pipe.  Also by having the feathers and baking them down to non history geo allows us our lighters/look dev guys to develop without the plugin.  shader model is published....and that is what is linked with the point cache (.abc/crate)

make sense?

thanks again!

Andy

excortex crate is now open source so any face assignements would have to be developed by the community....bummer really .

but there is attrubute support so you can stuff the perface shader assignement into an attrubute (like a dictionary) and that could be parced to force shader assignements into the scene.

or if you can create a maya face selection (per shaderList) set that could be used to force a face connection to a shader.

Thougths.... but I think the multiple mesh output is a bit cleaner and easier for the non technical user.

Andy

excortex crate is now open source so any face assignements would have to be developed by the community....bummer really .

but there is attrubute support so you can stuff the perface shader assignement into an attrubute (like a dictionary) and that could be parced to force shader assignements into the scene.

or if you can create a maya face selection (per shaderList) set that could be used to force a face connection to a shader.

Thougths.... but I think the multiple mesh output is a bit cleaner and easier for the non technical user.

Andy

My problem with multiple mesh output is the fact it won't work with our operator stack since there would have to be multiple meshes, one for each strand group. In fact this would likely need to be done through a command + node combination. I wonder if a tool like that already exists for Maya, since it isn't really hair-related at all and would work on any mesh which has multiple shaders.

Marsel Khadiyev (Software Developer, EPHERE Inc.)

if you can generate a selection set with the faces from the feathers.... could just a command... something like you hit a button in the MeshFromStrandsNode in the shader list section.... it this would return a facelist that I could use to apply a shader to specific faces... but Maya really sucks a faceSet assignements.(breaks render Layers...but not sure what happens in the new render setup in Maya 2017).  but I could see something like this working.

The biggest thing is that you would provide is the facelist that your already going for the shader assignment.

faceList = (obj.f[000],obj.f[001],obj.f[002])

cmds.sets( faceList , name = ( 'nodeName_shaderList1' ))

yeah?

i don't know if there is a way to attache an attribe to a face.... you can on a shape or transform... hmmmm


Attached Files:
Image 1

actually i just tried to select assigened shaders from the get assigned faces and created a set.... so it works.  I can get around this with that... not very elegant...but for now its ok.

 

 


Attached Files:
Image 1

as stated above I should be able to get it to work..... but i ran into this bug while testing UV sets and exporting .... This popped up on a sphere with the default feather groom preset.

Thanks

 


Attached Files:
Image 1

Ok, let's see if we can get this issue resolved first. I suppose it must be unique to your scene since Emil couldn't reproduce it. See the correspondence in the other thread.

Marsel Khadiyev (Software Developer, EPHERE Inc.)

can i get a direct contact and maybe some NDA paperwork so we can send you scene files to debug?  you can send email to this account and Kevin will take care of it.(paperwork)

 

Andy

Hi Andy, do you mind forwarding the NDA to marsel.khadiyev (at) ephere.com? Btw, sorry for referring to you as Kevin earlier :)

Marsel Khadiyev (Software Developer, EPHERE Inc.)

This is in the works.

 

:)

 

A