본문 바로가기
Shader

서피스 셰이더에서 버텍스 셰이더 인풋값 초기화

by 대마왕J 2021. 7. 7.

블로그 주인장에게 커피값을 후원할 수 있습니다! 

donaricano-btn

UNITY_INITIALIZE_OUTPUT(Input,o);

서피스 셰이더는 인풋값이 고정되어 있는 경우가 일반적. 보통  appdata_full 이나 appdata_base , tangent 등등 몇 가지 버전이 있다. 

그런데 여기에 추가 데이터를 넣고 싶을때에는 
void vert (inout appdata_full v) 로만 말고 추가 인풋을 원할때에는.. .
void vert (inout appdata_full v, out input o) 
이렇게 쓰게 되는데, 이럴때 이 인풋값을 초기화 안 시켜주면 에러가 난다. 

이럴때 주로 나오는 에러가 이런거 
Output value 'vert' is not completely initialized

그래서 나온 함수이다. 여기 설명함 (내가 설명해 놨잖아....;;)
https://chulin28ho.tistory.com/255

 

UNITY_INITIALIZE_OUTPUT( )

UNITY_INITIALIZE_OUTPUT(type,name)  함수 HLSLSupport.cginc 에 정의되어 있는 함수. #if defined(UNITY_COMPILER_HLSL) #define UNITY_INITIALIZE_OUTPUT(type,name) name = (type)0; #else #define UNITY_INI..

chulin28ho.tistory.com

 

반응형

댓글