TextMeshPro Outline not rendering correctly in VR

In VR the outline set on the material does not render unless I am close to the text and looking directly at it. From an angle it renders as if there isn’t an outline. Any ideas what is going wrong? I am on URP if that matters.

Here’s some screenshots showing off the issue
6601402--750679--upload_2020-12-8_11-43-9.png

6601402--750682--upload_2020-12-8_11-43-33.png

So at an angle the text is all white instead of still having the outline. It also looks brighter in color somehow

Please check if the text renders correctly using example “24 - Surface Shader Example” included in the TMP Examples & Extras.

Can you post an image showing your material settings. Make sure we can see the settings in the debug section of the material inspector as well.

Are you using a normal object or using a with the Canvas system?

Example 24, the text is pink, so I’m guessing something isn’t right for it on URP. I also don’t want it to be lit though, which is what the surface shader does, right?

6601915--750829--upload_2020-12-8_14-44-0.png

Let me know if you need anything in saved properties expanded, looked to be pretty long.

These are the “TextMeshPro - Text” components for world text outside of a Canvas.

Please post an image of the material inspector of the text object as seen below.

Ah sorry about that, here you go

What is the sampling point size of your font asset?

Is this only happening in VR or do you see the same behavior outside of VR?

Do you see the same behavior outside of URP? Just trying to isolate where the issue might be coming from.

How do I find that out? It’s just the default included font of Liberation Sans though

It seems to happen in the scene view while the game isn’t running. Not sure if that’s related to VR still or not while the game isn’t running

The larger the text is, the further out this happens at. I wonder if it might be related to font size or something in some way? This is pretty small text on a playing card

Since it is the default font asset, the sampling point size would be 90 with padding of 9 for Sampling to Padding ration of 10%. You can verify this by selecting the font asset and looking at the Generation Settings.

I would suggest creating a normal project (ie. not URP or HDRP) and adding a single text object as the relative same size / viewing angle to see if it behaves the same.

As the text gets smaller, you might be in a situation where there aren’t enough pixels to properly anti-alias and render the outline. As the text gets smaller where the outline width is less than 1 pixel it would eventually sort of disappear as the pixel trying to represent the outline and face gets ever closer to just being the face color.

I tried it in a new project that is not using VR or URP, and cannot seem to reproduce the issue. I bumped the outline up to 0.8 on both to make it very noticeable at a small font size

This is the new project
6602392--750922--upload_2020-12-8_17-26-17.png

And this is the VR URP project
6602392--750925--upload_2020-12-8_17-26-30.png

After a bit of testing, I’ve narrowed it down to being caused by the Linear Color Space. In Gamma it renders correctly, but in Linear it has the issue I’ve been running into. This is reproducible in both the old and new projects

@Stephan_B Any ideas on how to resolve this issue with the linear color space? This issue is critical for my project as we have a lot of small text in a VR game, so readability is very important

Any news on this mate?

Any updates on this?

Not on my end. I’ve mostly had to avoid using outlines in my designs due to this bug.