UsdPreviewSurface appears the most portable way to do materials with USD (with MaterialX being where most are heading… ?).
I would like to apply a blush texture to face skin. I wanted to do it once (inside the shader) for a range of characters.
To smoothly blend in the blush on another platform, I wanted to animate the opacity weight but it was not supported, so instead I created 4 strengths of blush and cycled between the levels (using texture tiles and X,Y offsets etc - which is supported in UsdPreviewSurface. But it meant I needed custom textures created per character. Doable, but a pain. I was wondering if there was anything better in USD? (while being portable)
E.g., my ideal would be to have a shader with a “blush” strength. I would use a “face texture” file per character using the shader, and a single blush texture file for all characters. It would use transparency to mix in well with the underlying skin texture (the blush strength would adjust the opacity level of the blush image - all my characters use pretty consistent face textures).
Any clever approaches? I know there is the transform operation in UsdPreviewSurface, so the old tiling approach is my fallback position.
(Another example of the same problem is I had an Iris image, with transparency, but I wanted to put an eyeball texture behind it, with options like bloodshot eyes. But I could not work out how to merge textures. So again it felt like I would have to create a texture file that had the eye white and iris in the one texture file, and swap the texture (using tiling again) to replace with bloodshot eyes.)