UNITY_INITIALIZE_OUTPUT(type,name) 함수
HLSLSupport.cginc 에 정의되어 있는 함수.
- #if defined(UNITY_COMPILER_HLSL)
-
#define UNITY_INITIALIZE_OUTPUT(type,name) name = (type)0;
-
#else
-
#define UNITY_INITIALIZE_OUTPUT(type,name)
-
#endif
HLSL 컴파일러가 왔을때에야 작동하는 함수.
So, it does nothing unless the HLSL compiler is compiling.
In that case it sets its value to a typecasted zero. That way the compiler won't complain about uninitialized output values.
... 별 일 안하잖아...
example
void vert (inout appdata_full v, out Input o)
{
#if defined(SHADER_API_D3D11) || defined(SHADER_API_D3D11_9X)
UNITY_INITIALIZE_OUTPUT(Input,o);
#endif
}
반응형
'유니티 엔진' 카테고리의 다른 글
유니티 LOD 사용법 (0) | 2015.02.16 |
---|---|
유니티(Unity) 의 뷰 프러스텀 (View frustum)컬링 (0) | 2015.02.06 |
유니티 라이트맵에서 투명도 적용하기 : Transparent Shadow in Lightmap (1) | 2014.12.15 |
유니티 OpenGL로 실행시키기 (0) | 2014.11.25 |
유니티 단축키 모음 (0) | 2014.11.13 |
댓글