빨,녹,파(RGB)

Float3(1.0,1.0,1.0) - 힌색  /  Float3(0.5,0.5,0.5) - 회색  /  Float3(0.0,0.0,0.0) - 검정색

Float3(1.0,0.0,0.0) - 빨간색 / Float3(1.0,1.0,0.0) - 노란색 

 

영어 /소문자

 
   

괄호는 반드시 닫는다.

 
   

띄어쓰기와 엔터는 의미가 없다.

 
   

세미콜론은 엔터의 의미.

 
   

A = B

같다는 의미가 아니라 B A안에 담긴다는 뜻이다.

   

변수

변하는 (데이터를 담아놓는 상자)

 

B 변수이다.

   
   

Surface shader 작성한다.

vertex & Fragment shader 코딩을 배워서 해야한다.

서피스 쉐이더

cg 쉐이더 코드를 이용한다.

   
   
   

Unlit

라이팅연산이 없는 쉐이더

   
   

lerp함수

o.Albedo =lerp(c.rgb, d.rgb, 0.5);

   

"노란색으로 출력

+
add 포토샵의 Liner Dodge 같다.
*
Multipy 이다."

   

float ndotl = saturate(dot(s.Normal, lightDir))

saturate 함수는 0보다 낮은 값은 0으로 1보다 높은 값은 1

   

//float ndotl = max(0.2,dot(s.Normal, lightDir));

//max 한쪽의 값을 0.2으로 하면, 0.2보다 작은 다른쪽 값을 무조건 0으로 출력

   

//float ndotl = dot(s.Normal, lightDir)*0.5+0.5;

// halp Lambert 연산 만들기

   

o.Emission = pow(1- rim, 3);
spec = pow(spec,_SpecPow);

그래서 pow(exponet, 지수) 써서 그래프가 산모양으로 되게 만들어서
굵기를 얇게 하는것이다.

pow
연산은 비교적 무겁다.

   

viewDir

// 버텍스가 카메라 방향을 보는 방향

   

PR

photo realistic

NPR

Non photo realistic

   

cull front

앞을 날림

cull back

뒤를 날림

cull off

2 side

2pass

오브젝트를 두번그리는것

   

vertex shader

버텍스를 변환 제어 쉐이더

pixel shader

화면 출력될 픽셀의 컬러를 결정하는 쉐이더

   

ceil

올림으로 소수점이 있는 숫자를 정수로 만들어준다.

 

'Unity > Surface Shader' 카테고리의 다른 글

texture  (0) 2020.05.16
CGPROGRAM03  (0) 2020.05.16
CGPROGRAM02  (0) 2020.05.16
CGPROGRAM01  (0) 2020.05.16
Propeties  (0) 2020.05.16