Search Issue Tracker

Fixed in 2019.3.X

Votes

0

Found in

2019.1.2f1

2019.2.0b4

Issue ID

1158323

Regression

No

Additional Shader Channel on a canvas resets when entering playmode.

uGUI

-

"Additional Shader Channel" on a canvas resets when entering playmode.

Text Mesh Pro is dependant on those additional channels. We display a warning "Shader channels Normal and Tangent are most often used with lighting, which an Overlay canas does not support."

This is false if you are using the Text Mesh Pro component.

If a Text Mesh Pro component is attached to a canvas the warning should be removed.

Steps to reproduce
- Create a new project in 2018.2.0b4
- Add a Canvas
- Notice that in the Inspector, Canvas - Additional Shader Channels are set to "nothing"
- Now create a UI > Text Mesh Pro - Text
- You'll be asked to install additional packages, install them
- In the inspector, Canvas, Additional Shader Channel is now set to mixed.
- Notice warning appears underneath the option.
- Change Additional Shader channel back to normal. Warning disappears
- Enter play mode
- Exit play mode
Notice issue >> Additional Shader Channel is now set to mixed.

Should we get rid of the warning and add it under Unity's documentation instead?

  1. Resolution Note (fix version 2019.3):

    The values are reset as TMP requires them so it sets the values. The warning says "are most often used" so its not true in all cases. Its up to the user to understand their use case to have the best performance if is the warning should be ignored.

    Cant just set it in the documentation as it should be more prevalent as it is a major gain on larger UIs if the channels are not needed.

Comments (5)

  1. Draco18s

    Jan 08, 2024 01:22

    I, too, have ended up here trying to figure out why my canvas was showing this warning and would automatically reset itself.

    Suggest adding the text, "Some UI features such as Text Mesh Pro utilize these channels."

    The remark "Its up to the user to understand their use case..." only makes sense if the user KNOWS what is causing the channels to be added. In the case of Text Mesh Pro (a Unity supplied add on!) the user does not in fact know.

  2. HeavensSword

    Jun 17, 2023 14:52

    I just want add that I do not believe this Warning Message is enough in its current form.

    I've dealt with this warning, cleared the tangent and normal flags, watched them come back when reloading the asset, only to get annoyed enough to finally look up why Unity wants to complain without allowing me to fix it.

    I did not realize that this was all because of my reliance on TMP. It makes sense once you are given the reason, but I STRONGLY feel that it should be mentioned in the warning!

    As others have pointed out, you guys integrated TMP years ago, why not make reference to the dependency or just flat out remove the warning if TMP components/package is preset?

    There are so many times I run into these bizarre issues that are always listed "as intended". Clearly if your users are sufficiently confused as to the how or why behind something the engine is doing, your intentions may need to be made more apparent without us having to scour issue tracker, the forums, stack overflow, etc...

  3. huulong

    May 30, 2020 17:19

    I use Unity 2019.3 with TextMesh Pro, had the same issue and just landed here. At least with this page, developers can understand what it's all about.

    I still don't see the extra explanation message on TextMesh Pro suggested by Arthur-LvGameDev though, so I guess this issue has been marked Fixed but it has really been handled as By Design.

    I understand why Unity wouldn't mention TextMesh Pro at the time it was a third-party plugin, but since it's now integrated you can expect more and more users use their components in their canvases.

  4. Fritsl

    May 01, 2020 12:19

    Agree, the entire history of Unity has been like oh.. UI? .. well, let's make something really.. erh..

    Why not a dedicated UI system, what's up with mixing it into the world and keep building on that really poor design over and again?

  5. Arthur-LVGameDev

    Jan 19, 2020 05:45

    IMO the warning should be either removed entirely, or it should be in the documentation here and/or in the TMP documentation. Even better, make the warning say "One reason that you might need this is TMP" -- otherwise someone like myself ends up Googling to figure out why/if I need those channels, or if it's a bug when it resets each time after exiting Play Mode.

    Morale of the story: It is a very poor UI/UX pattern as-is, and my mind would be blown if this was closed as "by design" -- UI/UX is critical to a PRODUCT, and something like this caused a 5-min search expedition for a veteran like myself; I'm sure less some developers have no idea what it does or file bug reports, etc.

    IMO: Improve/fix the warning text to be more explicit about potential use-cases (or allow packages access to alter or disable the warning) + document the above -- and these are the minimums IMO (if it were my product, I'd do more for such a simple/small and quick UI/UX improvement)!

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.