Unity advanced computer graphics week 02
Transcript of Unity advanced computer graphics week 02
![Page 1: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/1.jpg)
Unity AdvancedComputer Graphics
Week 02GameUIT - March 2017 - Tri.TMT
Contact: Fb: bit.ly/fb_tri , Linkedin: bit.ly/linkedin_triSource code : GitHub
![Page 2: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/2.jpg)
Render Pipeline
![Page 3: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/3.jpg)
The Difference between a CPU and GPU
![Page 5: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/5.jpg)
The Difference between a CPU and GPU
![Page 6: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/6.jpg)
Shader Languages
Cg (short for Central Graphics) - nvidia
GLSL (glslang) - OpenGL
HLSL (High-Level Shading Language) - DirectX
![Page 7: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/7.jpg)
Shading Language used in UnityIn Unity, shader programs are written in a variant of HLSL language (also called Cg but for most practical uses the two are the same).
Shader Compilers
- Windows & Microsoft platforms (DX9, DX11, DX12 and Xbox One) all use Microsoft’s HLSL compiler (currently d3dcompiler_47).
- OpenGL Core, OpenGL ES 3 and Metal use Microsoft’s HLSL followed by bytecode translation into GLSL, using a modified version of hlslcc.
- OpenGL ES 2.0 uses source level translation via hlsl2glslfork and glsl optimizer.- Other console platforms use their respective compilers (e.g. PSSL on PS4).
Surface Shaders use Cg 2.2 and MojoShader for code generation analysis step.
![Page 8: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/8.jpg)
First ShaderProject > Click Right > Create > Shader > Unlit Shader
![Page 9: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/9.jpg)
First Shader
![Page 10: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/10.jpg)
Shader Property
![Page 11: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/11.jpg)
Shader Property
![Page 12: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/12.jpg)
Shader Property
![Page 13: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/13.jpg)
Shader data types and precisionFloat : 32 bits
Half : 16 bits
Fixed : 11 bits
Integer
https://docs.unity3d.com/Manual/SL-DataTypesAndPrecision.html
![Page 14: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/14.jpg)
ShaderLab SyntaxSubShader
Fallback
- Fallback "name"
Pass
![Page 15: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/15.jpg)
Vertex and Fragment shaders
![Page 16: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/16.jpg)
Vertex and Fragment shaders
![Page 17: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/17.jpg)
Fragment Shader : Simple Color
![Page 18: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/18.jpg)
Fragment Shader : Simple Color
![Page 19: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/19.jpg)
Fragment Shader : ColorUV
![Page 20: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/20.jpg)
Fragment Shader : ColorUV
![Page 21: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/21.jpg)
Fragment Shader : Simple Texture
![Page 22: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/22.jpg)
Fragment Shader : Multi Texture
![Page 23: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/23.jpg)
Fragment Shader : Multi Texture
![Page 24: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/24.jpg)
Vertex Shader : Waves
![Page 25: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/25.jpg)
Vertex Shader : Waves
![Page 26: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/26.jpg)
ShaderLab built-in values
![Page 27: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/27.jpg)
ShaderLab built-in valueshttps://docs.unity3d.com/460/Documentation/Manual/SL-BuiltinValues.html
![Page 28: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/28.jpg)
Exercise 01 : Shader GrayScale
GrayScale
![Page 29: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/29.jpg)
Exercise 01 : Shader Brightness - Contrast
![Page 30: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/30.jpg)
Exercise 02 : Shader Brightness - Contrast
BrightNess
![Page 31: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/31.jpg)
Exercise 03 : Terrain
![Page 32: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/32.jpg)
Exercise 04 : Shader Blur (option)https://github.com/mattdesl/lwjgl-basics/wiki/ShaderLesson5
![Page 33: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/33.jpg)
Exercise 03 : Shader Blur (option)
![Page 34: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/34.jpg)
Exercise 03 : Shader Blur (option)
![Page 35: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/35.jpg)
Otherhttps://www.assetstore.unity3d.com/en/#!/content/47482
https://www.assetstore.unity3d.com/en/#!/content/42566
![Page 36: Unity advanced computer graphics week 02](https://reader031.fdocuments.us/reader031/viewer/2022030307/58e5936d1a28abdd148b588f/html5/thumbnails/36.jpg)
Q&AThanks for watching.