• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
Question by Martin Schultz · Jul 07, 2014 at 03:02 PM · shadertextmeshdepthz-buffer

3D Text Mesh Shader Z Buffer Issue

I use some 3D Text Mesh with a simple quad mesh background as sign/panel. Now the z depth is not correct on the text, it is seen through the different panels. I've been testing in the shader with ZTest and ZWrite, but failed to find a solution to this. Can anyone help out?

 Shader "GUI/3D Text Shader 2" 
 { 
     Properties 
     { 
        _MainTex ("Font Texture", 2D) = "white" {} 
       _Color ("Text Color", Color) = (1,1,1,1) 
     } 
 
     SubShader 
     { 
            Tags { "Queue"="Overlay+1" "IgnoreProjector"="True" "RenderType"="Transparent" } 
            Lighting Off Cull back ZWrite Off ZTest On Fog { Mode Off } 
            Blend SrcAlpha OneMinusSrcAlpha
            Pass 
            { 
               Color [_Color] 
               SetTexture [_MainTex] 
               { 
                  combine primary, texture * primary 
               } 
            } 
     } 
 }


alt text

zbuffer.jpg (287.9 kB)
Comment
DougRichardson

People who like this

1 Show 0
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
Best Answer

Answer by Owen-Reynolds · Jul 07, 2014 at 04:13 PM

Just keep it as Queue=Transparent (which is how it starts.) Only change is to ZTest.

ZTest On, which you have, isn't in the docs. ZTest Less is the usual way (but if ON isn't giving an error, maybe it means "the normal way," which is Less.)

FYI, the Overlay Queue is 4000, while Transparent is 3000. Higher Queue numbers place transparant objects more "on top" of lower ones. So Overlay+1 says to go on top of even transparent screen GUI stuff.

Comment
Martin Schultz

People who like this

1 Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Martin Schultz · Jul 07, 2014 at 07:28 PM 0
Share

Ahh yes, the render queue. Thanks for pointing it out. It solved the issue. Thanks!

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Update about the future of Unity Answers

Unity Answers content will be migrated to a new Community platform and we are aiming to launch a public beta later in June. Please note, we are aiming to set Unity Answers to read-only mode on the 31st of May in order to prepare for the final data migration.

For more information, please read our full announcement.

Follow this Question

Answers Answers and Comments

22 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Mesh z-fighting to itself 2 Answers

ZBuffer and Object Depth 1 Answer

Thickness Surface Shader 0 Answers

Overwrite DepthNormalsTexture 2 Answers

How do I use DecodeDepthNormal()? 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges