TA/Unity2020. 7. 7. 11:40

Unity Alpha Blend Mode Toggle

 

// Blend mode values

    [Enum(UnityEngine.Rendering.BlendMode)] _Blend ("Blend mode", Float) = 1

// A subset of blend mode values, just "One" (value 1) and "SrcAlpha" (value 5) 

   [Enum(One,1,SrcAlpha,5)] _Blend2 ("Blend mode subset", Float) = 1

 

   [Enum(UnityEngine.Rendering.BlendMode)] _Blend2 ("Blend mode Subset", Float) = 1

 >> 이런식으로 둘다 전체 목록을 다 호출해서 쓰는것도 가능하다.

 

// Culling Option

   [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull mode", Float) = 2

 

 

 

 

다음과 같이 토글 창이 생성된다. Shader에는 다음과 같이 선언

 

Blend [_Blend] [_Blend2]

 

Blend Mode와 subset 두개의 창이 생성되며 각 생성되는 제어 옵션은

 

 

 

 

 

 

와 같다.

 

 

 

 

 

 

 

 

 

 

Culling Mode 토글 제어

 

Unity shader에서는 부분적으로 Toggle 제어가 가능합니다.


토글 제어가 가능한 항목은 Scripting API항목의 UnityeEngine.Rendering 아래 Enumerations에 있는 항목을 사용할 수 있습니다.

http://docs.unity3d.com/ScriptReference/Rendering.CullMode.html

 


예제로 Mesh의 면을 그려주는 CullMode를 보면

 

 

 

이렇게 소개를 해주고 있습니다.


이를 shader 코드에 반영하면

[Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull mode", Float) = 2

그리고 Cull off, Front Back 이렇게 정의하는 부분에
Cull [_Cull]

 

해주면 Material 별로 CullMode를 다르게 사용할 수 있습니다.

 

 

 

 



출처: http://illu.tistory.com/1108 [illustration of life]

'TA > Unity' 카테고리의 다른 글

Unity Shader Stencil  (0) 2020.07.07
unity shader 프로퍼티 숨기기  (0) 2020.07.07
라이팅 모델  (0) 2020.07.07
타일 프로퍼티 숨기기 / 프로퍼티 이름달기  (0) 2020.07.07
감마환경에서 PBR쉐이더 보정(리니어)  (0) 2020.07.07
Posted by 프리랜서 디자이너