Search Unity

  1. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice

TextMesh Pro Plans For Hdrp Compatibility For Tmp?

Discussion in 'UGUI & TextMesh Pro' started by dgoyette, Apr 12, 2019.

  1. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    3,426
    I was just trying out the 2019.1 beta, hoping maybe there was a new TMP package to start integrating with HDRP features, but unfortunately I don't see anything that isn't in 2018.3. Are there plans to improve the functionality of TMP to accommodate the various features that HDRP supports? For example, currently it appears there is no support for the refraction pass. TMP text in front of or behind some refractive glass will either fully hide or show, not exhibit any refraction blur.

    upload_2019-4-12_11-56-49.png
     
  2. sinjinn

    sinjinn

    Joined:
    Mar 31, 2019
    Posts:
    116
    Any news on this?
     
  3. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    4,967
    Support for HDRP should be available within the next 30 to 60 days for Unity 2019.3. Support for editable custom shaders via Shader Graph with added functionality like ability to have multiple outlines, shadows, etc. is also coming but for that we are waiting on features from the shader graph team.
     
  4. alexandre-fiset

    alexandre-fiset

    Joined:
    Mar 19, 2012
    Posts:
    470
    Any update on this ? :) Really looking forward to TMP Shader Graph!
     
  5. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    4,967
    Had a discussions with the Graphics team yesterday. Will provide an update mid / late next week.
     
    alexandre-fiset likes this.
  6. alexandre-fiset

    alexandre-fiset

    Joined:
    Mar 19, 2012
    Posts:
    470
    Any news? :)
     
  7. Liderangel

    Liderangel

    Joined:
    Jul 8, 2018
    Posts:
    27

    What was the outcome of this?
     
  8. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    4,967
    I just need to find the time to create the custom editor for the new shader graph shaders.

    I will try to provide an update later this week. (for real).
     
  9. Ziboo

    Ziboo

    Joined:
    Aug 30, 2011
    Posts:
    355
    Also waiting on HDRP shaders for TextMeshPro. Will that work with VR also ?
     
  10. Ultroman

    Ultroman

    Joined:
    Mar 10, 2014
    Posts:
    64
    I also have to stress that I'm sailing in uncharted waters with reprehensible Unity UI Text-elements all over my otherwise very pretty game, waiting patiently to be able to use TMP for my HDRP project. It's so odd, that the default text-component looks so bad. I don't get it. I have to scale them down and make the font size larger to get any sort of quality, but then the text gets weirdly jaggy and Unity's Layout Groups don't understand child-scale properly, so it becomes a huge mess. Somehow, TMP just pwns it in every aspect!
     
  11. Liderangel

    Liderangel

    Joined:
    Jul 8, 2018
    Posts:
    27

    For real? :(
     
  12. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    4,967
    Quick update:
    - The Shader Graph shader(s) are mostly working but still need some tweaking and full testing.
    - The core functionality needed to use custom inspector(s) is now available in the latest ShaderGraph package.
    - HDRP related options like "Surface Options" and keyword management is still not exposed.

    Without a custom material inspector those material inspectors are pretty scary / non intuitive as seen in the image below

    upload_2020-9-1_15-18-28.png
     
    MrMahgu, Liderangel and Ultroman like this.
  13. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    3,426
    The main issue I'm having with TMP in HDRP has been that I can't get it to render "After post-process", like I can with other materials:

    upload_2020-9-1_20-4-49.png

    Having the text of the HUD affected by motion blur is a pretty bad experience. When you say the Surface Options aren't exposed yet, does that leave me some way to set the Rendering Pass?
     
    Ultroman likes this.
  14. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    4,967
    Do you have a simple scene setup that you could share for testing the above?
     
  15. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    3,426
    Sure. I've attached a basic repro project showing the issue, hopefully clearly. Made in Unity 2019.4.8. (The Library folder is obviously not included, so it'll take a few minutes to open it.)

    In that project, open SampleScene, and run it. You'll see something like this:

    upload_2020-9-2_2-9-7.png

    If you hold RMB and move the mouse, it should rotate the camera. Most of the stuff on the screen should show heavy motion blur, provided by the post-processing in the scene. The middle text at the top is in a screen-space canvas, and isn't affected by post processing, so it should look fine as you move the mouse. All of the other text, however, will blur.

    Now look at the two blur circles. They're both in the world-space canvas. The upper one has no material on it, and you'll see it blurs as you move the camera. The lower circle, however, has a material set to "After post-process" for its render pass. Because of this, it isn't affected by motion blur.

    My HUD is a physical object, made of a world-space canvas, so currently I'm getting bad motion blur on the TMP text in the HUD. I was just hoping for some way to set the render pass on the TMP to After PostProcess, so it would behave like the bottom blue circle.

    Edit: And just to be very clear: What I'm trying to do is to get TMP objects in world-space canvases not to be affected by post-processing, just like that lower blue circle's shader renders after the post-processing pass.
     

    Attached Files:

    Last edited: Sep 2, 2020
    Ultroman likes this.
  16. Liderangel

    Liderangel

    Joined:
    Jul 8, 2018
    Posts:
    27



    That's looking very nice, thanks on the update! So we are getting this shader template plus the material custom inspector sometime in the 2019.4 LTS lifespan? (Asking since I can't find anything in the Shader Graph changelog for that version nor the 10.0)
     
  17. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    4,967
    The plan is to release these new Shader Graph shaders in 2019.4 LTS as soon as possible.
     
    Liderangel likes this.
  18. alexandre-fiset

    alexandre-fiset

    Joined:
    Mar 19, 2012
    Posts:
    470
    I am hoping to see Text Shader Graph appear in this list at some point, is that the plan?
    upload_2020-9-23_16-48-38.png

    Still as of now, even in 2020.2, there's not easy way to customize the text shader :(
     
  19. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    4,967
    I am considering having the new shaders in the following location:

    "TextMeshPro/URP/Name of Shader"
    "TextMeshPro/HDRP/Name of Shader"

    Right now I do have some ShaderGraph URP / HDRP SDF text shaders working.

    I do not have custom inspectors for those yet. Without custom inspectors, those are pretty scary and do not have sanity checks against invalid values resulting in incorrect rendering.

    I am considering perhaps releasing those shaders without custom inspector but not sure. Thoughts?
     
  20. alexandre-fiset

    alexandre-fiset

    Joined:
    Mar 19, 2012
    Posts:
    470
    @Stephan_B I don't think the image you posted is scary especially given how complex are some HDRP shaders.

    At the moment there is no opaque/surface shader for text rendering, so any basic graph would definitely help.

    Thanks for the quick reply, by the way :)
     
  21. Liderangel

    Liderangel

    Joined:
    Jul 8, 2018
    Posts:
    27

    Temporarily I don't think it's that big of a deal since it is readable based on the image that you posted above (it's basically like any custom shader one can make).
    So at least we can start working in making our shaders and then when you finish the custom inspector work we can give them a pass with the extra feedback from that.
     
  22. Ultroman

    Ultroman

    Joined:
    Mar 10, 2014
    Posts:
    64
    I'll take ANYTHING over the standard Unity Text component by now.
     
  23. alexandre-fiset

    alexandre-fiset

    Joined:
    Mar 19, 2012
    Posts:
    470
    Well you do have TextMeshPro which works way better than Unity Text even without the shader graph..
     
  24. nehvaleem

    nehvaleem

    Joined:
    Dec 13, 2012
    Posts:
    64
    any news of the way to set hdrp surface options (such as all time loved "after post process" option)? It doesn't matter for me if I do it via shader graph or any other way.
     
  25. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    4,967
    Once HDRP compatible shaders are released this will work as expected which I was able to test with project provided in the following post above.
     
    nehvaleem likes this.
  26. nehvaleem

    nehvaleem

    Joined:
    Dec 13, 2012
    Posts:
    64
    thanks for the response, but may I ask for any ETA or something? For now, it isn't obvious at all.
     
  27. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    3,426
    That's awesome to hear. Thanks very much.
     
  28. Ultroman

    Ultroman

    Joined:
    Mar 10, 2014
    Posts:
    64
    I can't get them to work properly in HDRP. We have some layering issues that we just can't solve without the shaders.
     
  29. AudrasC

    AudrasC

    Joined:
    Feb 19, 2016
    Posts:
    19
  30. Liderangel

    Liderangel

    Joined:
    Jul 8, 2018
    Posts:
    27

    I believe this update is for the overlay one since using HDRP with TMPro Distant Field Overlay it renders pitch black. Using in HDRP the TMPro Distant Field shader looks like this in-game if you use World Space Canvas and stand next to a mesh:



    Here you can see a column in the way of the Resolution text, Windowed Mode, Vertical Sync, etc (the graphics like the arrow and borders aren't getting affected since we are making our own custom shaders for those).
     
unityunity