๐ Shader
@ TODO : ๊ธ ์ ๋ฆฌ
- HLSL (High Level Shading Language) ๊ฐ์ฅ ์ ๋ช ํ๊ณ ๋ณดํธ์ ์ผ๋ก ๋๊ฒ ์ฐ์
- GLSL (OpenGL Shading Language) OpenGL์์ ์ฌ์ฉํ๋ ์ธ์ด
- CG (C for Graphics) ์๋น๋์๊ฐ ๋ง์ดํฌ๋ก์ํํธ์ ํ๋ ฅํ์ฌ ๋ง๋ ์ธ์ด
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ฒ๋ผ ํ๋๋ง ์ ๋ฐฐ์๋๋ฉด ๋๋จธ์ง๋ ์ฝ๊ฒ ํฐ๋ํ ์ ์๋ค
- ์ ๋ํฐ๋ CG ์ธ์ด๋ฅผ ์ฌ์ฉ, URP ๋ถํฐ๋ HLSL ์ฌ์ฉ (์ธ๋ฆฌ์ผ๋ HLSL)
- ์ ๋ํฐ๋ ์ถ๊ฐ์ ์ผ๋ก ์ธ์ด๋ฅผ ์ ์ ์ง์
- Shader Lab ํธํ์ฑ์ ๊ฐ์ฅ ๋์ง๋ง, ๊ทธ๋งํผ ํ ์ ์๋ ๊ฒ ์ ํ์
- Surface Shader ๊ฐ์ฅ ์ฝ๊ณ ๋ฉํฐ ํ๋ซํผ์์ ์ ๋์๋๋ ์ ฐ์ด๋, ํ๋ก๊ทธ๋๋จธ๊ฐ ์๋๋๋ผ๋ ๋ฐฐ์ฐ๊ธฐ ์ฌ์ด ๊ฐ๋ , ์ํฐ์คํธ ๋ ๋ฒจ์์ ๋ฐฐ์ฐ๋
- โ Shader Lab ์ด๋ผ๋ ์คํฌ๋ฆฝํธ ์์ CG ์ฝ๋๊ฐ ๋ค์ด๊ฐ ์๋ ํ์, ์ด๊ฑธ ๋ฐฐ์๋๋ฉด Vertax & Fragment Shader ๋ ์ดํดํ ์ ์๊ณ , ๋๋ ๋ชฝํค๋ก๋ ๊ฐ ์ ์๊ณ , ๋ ธ๋๋ก๋ ๊ฐ ์ ์๋ค
Vertax & Fragment Shader, Surface Shader์ ์์ ๋ฒ์ , CG๋ฅผ ๋ ๋ํ ์ผํ๊ฒ ๋ค๋ฃธ, Surface Shader๊ฐ ์คํ ๋ชจ๋๋ผ๋ฉด. Vertax & Fragment Shader๋ ์๋์ด๋ผ๋ ๋๋
- Swizzling (= mix up)
ํ๋ชฐ์์น๋, ์ปดํจํฐ ์ฉ์ด๋ก๋ ๋ฒกํฐ์ ๊ตฌ์ฑ ์๋ก๋ฅผ ์์๋ก ์ฌ์ ๋ ฌํ๊ณ ๊ฒฐํฉํ์ฌ ๋ฒกํฐ๋ฅผ ๊ตฌ์ฑํ๋ ๊ธฐ๋ฅ (CG์์)
- Shader์์๋
- ๊ทธ ์ธ์๋ Pointer Swizzling ์ด๋ผ๋ ๊ฒ๋ ์์
- ํฌ์ธํฐ๋ก ๋งํฌ๋ ์๋ฃ ๊ตฌ์กฐ ๋จ์๋ฅผ, ID๋ ์ด๋ฆ ๋ฑ์ผ๋ก ๋์ฒดํจ์ผ๋ก์จ ํ๋ก๊ทธ๋จ์ ๋ค์ ์์ํ๋๋ผ๋ ์ฑ๊ณต์ ์ผ๋ก ํ์ผ ๋ฐ์ดํฐ๋ฅผ ๋ก๋, ์ญ์ง๋ ฌํ ์ํค๋ ๋ฐฉ๋ฒ
- (๋ง์ธํฌ๋ํํธ์ ํ๋ชฐ์์น๋ ์นผ๋ ์ Sweeping)
- The Unity Shaders Bible
- ๋๋๋ง
- ์คํฌ๋ฆฐ ์คํ์ด์ค ์์ด๋
- ์คํ ์ค ์์ด๋
- sssShader
- CatLikeCoding
- Graph ๊ทธ๋ฆฌ๊ธฐ, Position์ ๋ฐ๋ฅธ Color
- Surface Shader (๋)
- Shadertoy
- ๊ฐ์ง ํฌ๋ช ๋, ๋๋๋ง
- ์์ด๋์ ๋จธํ ๋ฆฌ์ผ
- Scene Depth : ์นด๋ฉ๋ผ๋ถํฐ ์ฐ์ฐ์ ์์ํ๋ ์ ๊น์ง์ ๊น์ด?
- Transparent๋ ํต๊ณผํ๋ ๋ฏ..?
https://darkcatgame.tistory.com/79
https://blog.naver.com/hram01/221489477514
https://gall.dcinside.com/mgallery/board/view?id=game_dev&no=126408
์ด ๊ธฐ์ฌ๋ ์ ์๊ถ์์ CC BY 4.0 ๋ผ์ด์ผ์ค๋ฅผ ๋ฐ๋ฆ
๋๋ค.