Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • 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
0
Question by fat-chunk · Mar 30, 2015 at 09:24 AM · shaderkinectocclusion

Making a character appear through 1 layer of objects but not 2 or more

Hi,

I am working on a project using Kinect and Zigfu. I have a Kinect feed object (a flat screen between the main camera and the rest of the scene) through which I want my character to appear. This works pretty well, I have written the following shader to achieve this:

     Properties {
         _Color ("Main Color", Color) = (1,1,1,1)
         _MainTex ("Base (RGB)", 2D) = "white" {}
     }
     Category {
         SubShader {
       
             //sampler2D _MainTex;
           
             Tags { "Queue"="Overlay+1" }
                                           
              Pass
             {
                 ZTest Greater
                 Lighting Off
                 SetTexture [_MainTex] {combine texture}
             }
                                           
             Pass
             {
                 ZTest Less
                 SetTexture [_MainTex] {combine texture}
             }
           
             CGPROGRAM
             #pragma surface surf Lambert
 
             sampler2D _MainTex;
             fixed4 _Color;
 
             struct Input {
                 float2 uv_MainTex;
             };
 
             void surf (Input IN, inout SurfaceOutput o) {
                 fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color;
                 o.Albedo = c.rgb;
                 o.Alpha = c.a;
             }
             ENDCG
         }
     }
     FallBack "VertexLit"
 }

However, if there is an object between this Kinect screen and the character, I want that part of the character to be occluded. Right now, the character appears through everything regardless of the number of objects standing between it and the camera. Is there a way for the character to only be rendered with 1 or less objects being between it and the camera? I have also read that I could add a second Z buffer or something, would that be a better solution?

Also I think the CPROGRAM part of my shader is not doing anything. I included that as I wanted phong/specular shading applied to my model but right now it seems as though I am only getting diffuse. Any help with this would also be greatly appreciated.

I'll answer any questions and provide more info if that makes it any easier.

Comment
Add comment
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

0 Replies

· Add your reply
  • Sort: 

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.

Follow this Question

Answers Answers and Comments

2 People are following this question.

avatar image avatar image

Related Questions

Noob - Fern Tree Not Working Properly - Occlusion Error 2 Answers

Adding Occlusion and Specular Map to Shader? 1 Answer

Shaders and ambient occlusion 1 Answer

adapting the green screen shader from Kinect v2 package 1 Answer

Shader Problem 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