본문 바로가기
Unity

[Unity] Standard Shader SurfaceOutputStandard (쉐이더 스타트업)

by 소리쿤 2023. 2. 4.

https://docs.unity3d.com/Manual/shader-StandardShader.html

 

Unity - Manual: Standard Shader

Standard Shader The Unity Standard ShaderA program that runs on the GPU. More infoSee in Glossary is a built-in shader with a comprehensive set of features. It can be used to render “real-world” objects such as stone, wood, glass, plastic and metal, an

docs.unity3d.com

https://darkcatgame.tistory.com/11

 

Unity Surface Shader 기초 4강 - SurfaceOutputStandard 활용하기

Unity Surface Shader 기초 4강 - SurfaceOutputStandard 활용하기 유니티에서 기본 마테리얼을 만들면 위 사진과 같이 기본 쉐이더가 작성된것을 확인 할 수 있다. PBR 기반으로 다수의 텍스처를 활용하는 쉐

darkcatgame.tistory.com

 

우선 참조 문서 박고 시작함

 

fixed < half < float 순서도 헷갈리지 않게 박고 시작함

 

요약하면 Standard는 물리 기반 쉐이더이다.

특징은 사실적이나, 무겁다.

 

현재 쉐이더 스타트업에서 알 필요가 있는 것은

 

쉐이더의 결과물로 사용되는 구조체인

SurfaceOutputStandard의 필드들이 의미하는 바이다.


1. fixed3 Albedo


https://docs.unity3d.com/2022.2/Documentation/Manual/StandardShaderMaterialParameterAlbedoColor.html

 

Unity - Manual: Albedo Color and Transparency

Specular mode: Specular Property Albedo Color and Transparency A Standard Shader material with default Properties and no values or textures assigned. The Albedo Color Property is highlighted. The Albedo Property controls the base color of the surface. A ra

docs.unity3d.com

요약 : 물체의 색 (조명 미포함)

 

 

 


2. fixed3 Emission 


https://docs.unity3d.com/2022.2/Documentation/Manual/StandardShaderMaterialParameterEmission.html

 

Unity - Manual: Emission

Secondary Maps (Detail Maps) & Detail Mask Emission Adding emission to a Material makes it appear as a visible source of light in your SceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each

docs.unity3d.com

- 물체의 빛 (본인이 조명)


3. fixed3 Normal

 

https://docs.unity3d.com/Manual/StandardShaderMaterialParameterNormalMap.html

 

Unity - Manual: Normal map (Bump mapping)

Normal map (Bump mapping) Normal maps are a type of Bump Map. They are a special kind of texture that allow you to add surface detail such as bumps, grooves, and scratches to a model which catch the light as if they are represented by real geometry. Unity

docs.unity3d.com

- 물체의 법선 벡터값 (rgb가 각각 xyz를 의미하는 벡터)

- DXTnm 포맷 기준 rgba = float4(1, y, y, x) 로 저장됨 (노말맵은 그래서 보통 그냥 열면 빨간색이다.)

- read 시엔 a, b, 삼각함수(a, b) 로 xyz를 추출한다. (노말맵은 노말맵으로서 열면 파란색이다. - UnpackNormal)

 


4. half Metallic

 

https://docs.unity3d.com/kr/530/Manual/StandardShaderMaterialParameterMetallic.html

 

메탈릭모드: 메탈릭 파라미터 - Unity 매뉴얼

Metallic 워크플로에서 작업하는 경우(스페큘러 워크플로와 달리) 표면의 반사도 및 광원 반응이 메탈릭 레벨과 평활도 레벨에 따라 바뀝니다.

docs.unity3d.com

 

https://gamedevforever.com/17

 

물체 표면의 스페큘러 칼라에 대하여.

안녕하세요 Silverchime 이라고 합니다 실버차임입니다 치매가 아닙니다 ;ㅅ; 현재 T사의 TG프로젝트에서 배경쪽과 TA로 일하고 있습니다. 쟁쟁하신분과 차마 비교할 수는 없는데다, 평소에 항상 왜?

gamedevforever.com

특정한 스페큘러 칼라를 가지는 이유

암튼 Metallic이 0이면 스페큘러 칼라가 흰색,

1이면 Albedo가 됨


5. half Smoothness

 

- 정반사 / 난반사 비율

 

0이면 난반사100 정반사0

1이면 난반사0 정반사100이 됨

 


6.half Occlusion

- 차폐

- Ambient Occlusion (환경 차폐) 라고도 불림

 

환경 차폐인 부분을 추출해낸 맵이 오클루전 맵이고,

이걸 메인 텍스처 uv에 대해 반영하면, 앰비언트 오클루전이 적용됨