zoukankan      html  css  js  c++  java
  • Untiy3D Material 材质系统

    材质系统在任何引擎里面都算一个大模块,我也遍了解遍写,写到哪里算哪里。

    里面涉及到材质属性系统,底层Shader模块和纹理Texture模块。所以比较复杂,如果理解材质系统,那就能控制整个游戏画面渲染效果。

    Material

    材质系统是定义了如何渲染物件表面的信息  里面包含的贴图 贴图的平铺信息 颜色信息 等等信息。Shader里面使用材质信息加上自身操作,最终呈现物件的渲染。

    Shader 

    shader 是一种简单的脚本文件,他使用材质系统信息用于渲染每个像素 一般Shader  分手三种,Vertex Shader(顶点着色器) ,Fragment Shader(像素着色器) ,Compute shader(计算着色器)

    这三种着色器是一般通用渲染接口都有 比如OpenGL和DirectX 第三种计算着色器需要一定版本才能支持,前两种在非固定管线的渲染接口都支持。

    Untiy本身还定义一种Surface Shader(表面着色器)。其实他是对于顶点像素着色器二次抽象,让设计者更加专注在一般效果的计算,简化了Shader内容。

    Texture 

    • 纹理本身其实就是一张位图图像,一个材质系统文件可以需要多张的纹理,shader纹理通过纹理信息计算物体的表面颜色,除了表现物件表面基本反射颜色外,纹理还能提供物件表面的反射率或者粗糙度信息。

    对于大部分渲染来说,使用内置 Standard Shader 是最好方式,如果有些不满足信息才需要自己手动书写Shader文件。内置shader包含几种类型

    Built-in Shaders

    • FX :Lighting and glass effects.
    • GUI and UI: For user interface graphics.
    • Mobile: Simplified high-performance shader for mobile devices.
    • Nature: For trees and terrain.
    • Particles: Particle system effects.
    • Skybox: For rendering background environments behind all geometry 
    • Sprites: For use with the 2D sprite system
    • Toon: Cartoon-style rendering.
    • Unlit: For rendering that entirely bypasses all light & shadowing
    • Legacy: The large collection of older shaders which were superseded by the Standard Shader
  • 相关阅读:
    English trip V2-B 20 Happy Holiday Teacher: Russell
    English Voice of <<That Girl>>
    English trip V2-B 19 How often is often? Teacher: GABRIELE
    English trip EM4-LP 3A AT The MARKET Teacher:Patrick
    I1-3 Telephone English Teacher:Taylor
    Phonics 自然拼读法 ar er ir ur or 元音字母组合 Teacher:Lamb
    English trip V2-B 18 What's Your Job? 你是什么工作 Teacher: Russell
    English trip V2-B 17 Look to the Future Teacher: Russell
    Huawei设备配置系统时间
    iperf 网络测试工具
  • 原文地址:https://www.cnblogs.com/wbaoqing/p/5630612.html
Copyright © 2011-2022 走看看