Испольщование time в шейдере - Форум Игроделов
Вс, 05 Май 2024, 12:49 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум Игроделов » UNITY3D » ШЕЙДЕРЫ, МАТЕРИАЛЫ И МОДИФИКАТОРЫ » Испольщование time в шейдере (Не работает?)
Испольщование time в шейдере
seamanДата: Вт, 13 Ноя 2012, 13:56 | Сообщение # 1
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Имею простейший шейдер:
Code
Shader "Procedure/Time"  {
Category {
     Tags { "Queue"="Background" }

     SubShader {
  AlphaTest Off
     Cull Off Lighting Off ZWrite Off  
   
         Pass {
       Blend One Zero
             Name "BASE"
             Tags { "LightMode" = "Always" }
CGPROGRAM
#pragma target 3.0
#pragma fragment frag
#pragma vertex vert

    struct appdata_t{
                 float4 vertex : POSITION;
                 float2 texcoord: TEXCOORD0;
             };
             struct v2f {    
                 float4 hPosition : POSITION;
             };
     
#include "UnityShaderVariables.cginc"

             v2f vert(appdata_t v)
             {
                 v2f o;
                 o.hPosition = mul(UNITY_MATRIX_MVP, v.vertex);
                 return o;
             }
     
     float4 frag(v2f IN): COLOR0
     {
   return lerp(float4(0, 0, 0, 1), float4(1, 1, 1, 1), _SinTime.x);
     }
ENDCG
         } // end pass

     } // end subshader
} // end category
} // end shader

По идее должен периодически меняться цвет от черного к белому. Не меняется - сплошь черный. Ошибок нет. У меня 4-ка Юнити. Что делаю не так?
 
СообщениеИмею простейший шейдер:
Code
Shader "Procedure/Time"  {
Category {
     Tags { "Queue"="Background" }

     SubShader {
  AlphaTest Off
     Cull Off Lighting Off ZWrite Off  
   
         Pass {
       Blend One Zero
             Name "BASE"
             Tags { "LightMode" = "Always" }
CGPROGRAM
#pragma target 3.0
#pragma fragment frag
#pragma vertex vert

    struct appdata_t{
                 float4 vertex : POSITION;
                 float2 texcoord: TEXCOORD0;
             };
             struct v2f {    
                 float4 hPosition : POSITION;
             };
     
#include "UnityShaderVariables.cginc"

             v2f vert(appdata_t v)
             {
                 v2f o;
                 o.hPosition = mul(UNITY_MATRIX_MVP, v.vertex);
                 return o;
             }
     
     float4 frag(v2f IN): COLOR0
     {
   return lerp(float4(0, 0, 0, 1), float4(1, 1, 1, 1), _SinTime.x);
     }
ENDCG
         } // end pass

     } // end subshader
} // end category
} // end shader

По идее должен периодически меняться цвет от черного к белому. Не меняется - сплошь черный. Ошибок нет. У меня 4-ка Юнити. Что делаю не так?

Автор - seaman
Дата добавления - 13 Ноя 2012 в 13:56
waruiyumeДата: Вт, 13 Ноя 2012, 14:53 | Сообщение # 2
Нет аватара
 
Сообщений: 85
Награды: 1
Репутация: 37
Статус: Offline
Code

//~~~~~~~~~~~~~~~~~
#include "UnityCG.cginc"
//~~~~~~~~~~~~~~~~~
return lerp(float4(0, 0, 0, 1), float4(1, 1, 1, 1), abs(sin(DecodeFloatRGBA(_Time)*20)));//множитель 20 взят с потолка )  
//~~~~~~~~~~~~~~~~~


 
Сообщение
Code

//~~~~~~~~~~~~~~~~~
#include "UnityCG.cginc"
//~~~~~~~~~~~~~~~~~
return lerp(float4(0, 0, 0, 1), float4(1, 1, 1, 1), abs(sin(DecodeFloatRGBA(_Time)*20)));//множитель 20 взят с потолка )  
//~~~~~~~~~~~~~~~~~

Автор - waruiyume
Дата добавления - 13 Ноя 2012 в 14:53
seamanДата: Вт, 13 Ноя 2012, 15:08 | Сообщение # 3
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Я тупой! Жду, что в инспекторе все будет меняться! Откуда там время то возьмется. В Play работает.
Спасибо, что дали толчок нормально подумать.
 
СообщениеЯ тупой! Жду, что в инспекторе все будет меняться! Откуда там время то возьмется. В Play работает.
Спасибо, что дали толчок нормально подумать.

Автор - seaman
Дата добавления - 13 Ноя 2012 в 15:08
Форум Игроделов » UNITY3D » ШЕЙДЕРЫ, МАТЕРИАЛЫ И МОДИФИКАТОРЫ » Испольщование time в шейдере (Не работает?)
  • Страница 1 из 1
  • 1
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2024