Unity 2019.4 LTS Textmesh Pro 2.1.3 Sprites not working with Oculus VR Single Pass Instanced mode

I just upgraded my project from Unity 2018.4 LTS to Unity 2019.4 LTS (latest version)… I also updated the Textmesh pro to version 2.1.3

Using the latest Oculus Integration package, building for PC

I have a Textmeshpro GUI, using the TextmeshPro/Distance Field shader, label with the following text:

Start <sprite=1>

(You can use the sample emojis sprites asset from TextmeshPro)

When you run the project with the Stereo Rendering Mode set to Single Pass Instanced the text looks ok but the sprite is only draw on the left eye …

Its seems as the shader is not updated to handle correctly the sprites with Single Pass Instanced selected, this mode is preferred for VR for performance reasons

On Unity 2018 it was working fine…

Was this working correctly in 2018.4?

Please replace the existing TMP_Sprite.shader will the following file and let me know if it works as expected.

6805517–789632–TMP_Sprite.shader (2.61 KB)

1 Like

Yes it was working correctly on 2018.4 LTS…

And now is working correctly on 2019.4 LTS using the new Sprite shader that you send me…

Thank you very much!!!

I’ll include this revised shader in the next release of TMP package. It will be contained in an updated version of the TMP Essential Resources.

The same here in november 2021. I am using Unity 2020.3.23 and TextMeshPro 3.0.6, using default TMP sprite material. When i want to show some sprite in my text, for example <sprite=0>, it is shown only for left eye in my VR helm.

However, this file fixes this issue. Thank you.

Please user version 3.2.0-pre.2 which contained updated shaders.

You will need to update / re-import the TMP Essential Resources and TMP Examples & Extras with this new release as those resources have been updated.

Please let me know if you still have the above issue with the update shaders?

A year later and this is still an issue... Only by including a non production ready package in a production ready Unity version this can be fixed. Why is this taking so long to be production ready?