It appears I've misunderstood the purpose of Standard Shader's "Secondary Texture" options.

If I wish to map temporary details to an object, what is the Unity-appropriate way to do this? I am referring to effects like the following:

  • Tatoos
  • Blood Spatters
  • Logos
  • Decals
  • etc...

I'm aware that I could have two materials, but this is render-inefficient, and I avoid hackish workarounds when I can.

Standard practice?


Per the comment below, I will elaborate slightly:

In my specific case I'd like to have one of two scenerios:

1: Areas where a logo can be inserted (player created), pre-uv assigned. 2: Drag/drop logo placement, similarly, but without constraints. This would mean of course passing UV boundaries.

  • \$\begingroup\$ There are a number of ways we might approach this, depending on the needs of the final game. Things like: how many different decals can exist on one object? Are they lit? Can they overlap, does the order matter? Is the object a skinned mesh, dynamic, or static? Does the decal need to cross multiple distinct meshes? Can you work with existing UV layouts, or do these decals sometimes need to cross UV seams? Do they need to be applied during gameplay, or could they be baked? Etc... Try editing your question to focus on one specific application (you can always as a separate question for others) \$\endgroup\$ – DMGregory Oct 7 '17 at 2:36
  • \$\begingroup\$ Wow, I could not have anticipated so many variants. I'll edit. \$\endgroup\$ – Pipsqweek Oct 7 '17 at 20:38
  • \$\begingroup\$ The edit doesn't answer all of the questions in my previous comment, including whether the object is static or moving/dynamic, or a skinned mesh; or whether this is happening at runtime or at level creation time. These are important distinctions. \$\endgroup\$ – DMGregory Oct 7 '17 at 22:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.