Unity Shader Form

2018. 12. 7. 19:20Unity Engine/UnityShader

유니티 커스텀 셰이더를 작성하기 위해 제공되는 Shader Form을 알아보자.


1. 공통 부분

  - 셰이더 작성에 공통으로 사용되는 영역




2. ShaderLab

  - 유니티에서 지원하는 가장 간단한 셰이더 형태.

  - ShaderLab 언어만 사용하여 작성되어 쉽다는게 장점이라고 하지만, 기능이 제한적이라 잘 사용하지 않는다고 한다.

  - 실제로 Lab 언어만 사용해서 Shader를 사용한적이 없다...




3. Surface Shader

 - 3D Lib의 셰이더 작성을 간소화.

 - 일반적인 기능들이 완성되어 있다.

 - 쉽게 작성 가능하고, 픽셀 영역 뿐만 아니라 Vertex 영역도 커스텀 해서 사용 할 수 있어 자주 사용.

 - 아무래도 기능을 가져다 쓰다보니 사용되는 구조체라던가 파라미터 라던가 틀이 정해져있어 세세한 작업이 

   불편 할 때가 있다.





4. Vertex & Fragment Shader

 - 3d Lib의 셰이더 언어와 가장 유사한 형태.

 - Unity 처음 사용 할 때는 이쪽이 편했으나 SurfaceShader 에 익숙해지니 잘 안쓰는...




5. Unity ShaderGraph

 - Unity 2018 인가 부터 Node기반 셰이더 제작을 위해 Visual Editor를 지원한다.

 - ShaderfForge나 Amplify Shader 같은 Asset이 있지만 유료...

 - 때문에 ShaderGraph을 매우 매우 기대 했지만...  드디어 나도 노드 기반 툴을 써본다!

 - 디폴트 렌더 모드 지원을 안 한다... 장난?

 - 기존의 커스텀 셰이더들에 대한 변경을 지원하던가 하지 않으면 쓸 일 없을것 같다...



'Unity Engine > UnityShader' 카테고리의 다른 글

Unity Shader 생성과 사용  (0) 2018.12.07