Is there a way to override a material's displacement map at the material level?
I have a project that involves rendering every possible combination of finishes and options of some architectural products for the company's online catalog. Each object has between 162 and 360 permutations of 2-3 different finish choices (each with 9 or 6 possibilities) and a displacement map (3 choices). I'm handling most of this with animated material IDs driven by simple expression controllers.
The problem is that the displaced surfaces need to a) be rendered with all the different finishes, b) need multiple UV channels in the displacement map due to masks, etc., making the VRayDisplacementMod a non-option (well, I'm using it for control, but with 'use object mtl' checked.) and c) need different mask bitmaps for different objects (2-3 per object).
If I set up multiple Multi/sub materials for each displacement mask by hand, something is sure to get out of sync, and given that ~5000 total images are being rendered, checking by hand is not going to be feasible.
In Brazil, there's a Utility material type similar to VRayOverrideMtl that lets me override the displacement map of a submaterial - I could throw an instance of my non-displaced multi-sub in there and call it a day. Can one do the same thing somehow in VRay? Is there another way to solve this problem I haven't thought of?
I have a project that involves rendering every possible combination of finishes and options of some architectural products for the company's online catalog. Each object has between 162 and 360 permutations of 2-3 different finish choices (each with 9 or 6 possibilities) and a displacement map (3 choices). I'm handling most of this with animated material IDs driven by simple expression controllers.
The problem is that the displaced surfaces need to a) be rendered with all the different finishes, b) need multiple UV channels in the displacement map due to masks, etc., making the VRayDisplacementMod a non-option (well, I'm using it for control, but with 'use object mtl' checked.) and c) need different mask bitmaps for different objects (2-3 per object).
If I set up multiple Multi/sub materials for each displacement mask by hand, something is sure to get out of sync, and given that ~5000 total images are being rendered, checking by hand is not going to be feasible.
In Brazil, there's a Utility material type similar to VRayOverrideMtl that lets me override the displacement map of a submaterial - I could throw an instance of my non-displaced multi-sub in there and call it a day. Can one do the same thing somehow in VRay? Is there another way to solve this problem I haven't thought of?
Comment