Непонятный порядок Opaque Unlit шейдера

Шейдеры и все-все-все.

Непонятный порядок Opaque Unlit шейдера

Сообщение Shock 29 мар 2018, 17:41

Накладываю на камеру Replacement-shader и его порядок ведет себя крайне странно. Такая сцена:
Изображение
Дает такой результат:
Изображение
Видно, что цилиндр отрисовался корректно относительно человека - за ним, в то время как сфера отрисовалась за ним, хотя должна была перед ним, а капсула - наоборот отрисовалась перед человеком, хотя должна была уйти за него.

Синтаксис:
Используется csharp
Shader "ColorReplacement" {

    Properties {
        ReplacementColor ("ReplacementColor", Color) = (0,0,0,1)
    }
        SubShader
        {
                Tags { "RenderType"="Opaque" }
                LOD 100
                Pass
                {
                        CGPROGRAM
                        #pragma vertex vert
                        #pragma fragment frag

                        struct appdata
                        {
                                float4 vertex : POSITION;
                        };

                        struct v2f
                        {
                                float4 vertex : SV_POSITION;
                        };
                        float4 ReplacementColor;
                       
                        v2f vert (appdata v)
                        {
                                v2f o;
                                o.vertex = UnityObjectToClipPos(v.vertex);
                                return o;
                        }
                       
                        fixed4 frag (v2f i) : SV_Target
                        {
                                return ReplacementColor;
                        }
                        ENDCG
                }
        }
}


Подскажите, пожалуйста, в чем моя ошибка?
Аватара пользователя
Shock
UNIт
 
Сообщения: 70
Зарегистрирован: 10 окт 2016, 18:22

Вернуться в Shader Lab

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1