材质,着色器,纹理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了材质,着色器,纹理相关的知识,希望对你有一定的参考价值。

参考技术A

Unity中的渲染使用材质(Materials),着色器(Shaders)和纹理(Textures)。三者都有着密切的关系。

材质指定了要使用的特定着色器,使用的着色器确定材质中可用的选项。Shader指定它希望使用的一个或多个Texture变量,在Unity的Material Inspector中 ,您可以为这些Texture变量分配自己的Texture Assets

对于大多数正常渲染 (例如渲染角色,风景,环境,实心的和透明的GameObjects,硬和软的表面)Standard Shader (标准着色器) 通常是最好的选择。这是一个高度可定制的Shader,能够以高度逼真的方式渲染多种类型的表面。

在其他情况下,不同的内置着色器,甚至是自定义书写的着色器可能是合适的(例如液体,树叶,折射玻璃,粒子效果,卡通,illustrative或其他艺术效果,或其他特殊效果,如夜视,热视觉或X射线视觉)。 有关更多信息,请参阅以下页面:

有关更多信息,请参阅以下页面:

材质着色器和纹理

Unity 中的渲染采用材质着色器纹理。所有这三者之间有着密切的关系。

  • 材质通过包含对所用纹理的引用、平铺信息、颜色色调等来定义表面应使用的渲染方式。材质的可用选项取决于材质使用的着色器。

  • 着色器是一些包含数学计算和算法的小脚本,根据光照输入和材质配置来计算每个像素渲染的颜色。

  • 纹理是位图图像。材质可包含对纹理的引用,因此材质的着色器可在计算游戏对象的表面颜色时使用纹理。除了游戏对象表面的基本颜色(反照率)之外,纹理还可表示材质表面的许多其他方面,例如其反射率或粗糙度。

材质指定了要使用的一种特定着色器,而使用的着色器确定材质中可用的选项。着色器指定期望使用的一个或多个纹理变量,而 Unity 中的材质检视面板 (Material Inspector) 允许您将自己的纹理资源分配给这些纹理变量。

对于大多数正常渲染(例如渲染角色、景物、环境、实体和透明游戏对象、硬表面和软表面),标准着色器通常是最佳选择。这是一种高度可定制的着色器,能够以高度逼真的方式渲染多种类型的表面。

在其他情况下,可能适合采用另外的内置着色器,甚至自己编写的着色器(例如液体、树叶、折射玻璃、粒子效果、卡通、演示性效果或其他艺术效果或者其他特殊效果,如夜视、热视或 X 射线透视)。

以上是关于材质,着色器,纹理的主要内容,如果未能解决你的问题,请参考以下文章

材质着色器和纹理

材质着色器和纹理

Unity学习——纹理材质&着色器

Unity3D之Material(材质着色器纹理)

在着色器图中访问二级纹理法线贴图?

OpenGL:如何将多个纹理传递给具有一个变量的着色器?