Try Real-time Shader for artist. Claim back Shader to Softimage artist. CSR&D Support Dept. Artist Fumoto Kazuhiro
Summary• Self-introduction• The Advantage to the artist• The Realtime-Shader to perform on Softimage• Hurdles on learning Shader – Shading – NormalMap, EnvironmentMap – Calculation for expression• Goal＞Result (to Cgfx)
Self-introduction• About CS R&D Support Dept. – Graphic library development, Developmental environment, Investigation and experiment of the next generation graphic• About me Real-time graphic development. In-house tool (such as plug-in) development and support (mainly Softimage) for the artist. → Technical artist.
An advantage to the artist.• The adjustment of the Shader parameter is easy.• WYSIWYG - You can see Game Graphics through data making.• You can get clear knowledge about shader. Express higher graphic by learning about the shader It doesn’t matter if you can’t write shader code
Face Shader Demo…• About Fake image based lighting, Fake sub surface scattering…
Simple IBL• There are three hurdles to express this Shader.
Hurdle1• Shading works out with the dot product of the normal vector and the light vector. • The expression… N・L = cosθ Shading : cosθ Normar Vector : N Light Vector : L
Hurdle1• For example… The angle of the Normal Vector and the Light Vector is 60 degrees. →Brightness is 0.5.
Hurdle1• In Cg Shader… float dif1 = dot(normal, light);• The dot() calculates the dot-product which is based on the data in the parentheses.• The data in the parenthesis are Normal Vectors and Light Vectors.• This expression says that the result which is calculated by dot() is put in the variable is called dif1, and declares float (few floating mark).
Hurdle1• Necessary matter The dot() from two vector data is used to make Shading.
Hurdle1 Other examples…• Relations of Vertex Shader and Fragment Shader• Specular – Blinn-Phong which uses the half vector. – Phong which uses the reflection vector.• Dot product applied use – Using Eyes Vector in substitution for a light vector.
Hurdle2• Normal Map 1. Object space 2. Tangent space• Environment map
Hurdle3• Shader blending – Calculation technique to the result – Blurring
Hurdle3• Calculation technique to the result Add (+), Subtract (-), Mutiply (*), Divide (/) Color data such as texture or shading which is for the final graphic. Shading × Texture + Flesnel (fake) ×Environmentmap