首页 > 编程语言 > 详细

Unity Shader (1)

时间:2020-03-16 20:04:37      阅读:60      评论:0      收藏:0      [点我收藏+]

1、OpenGL的窗口坐标原点位于左下角,DirectX的窗口坐标原点位于左上角。

 

2、常见的着色器语言HLSL(High Level Shading Language)是微软在DirectX基础上提供的,着色器的编译器完全由微软提供,因此只要微软系统支持的硬件,使用相同的编译器编译出来的结果是一样的;GLSL(OpenGL Shading Language)是OpenGL提供的,它的编译器不由Khronos小组提供而是由各个实现OpenGL API的硬件厂商提供,因此不同机器编译后得到的结构可能不同;CG(C for Graphic)是NVIDIA提供的,意义上来说它是跨平台硬件无关的,但是因为微软硬件市场的占有率,它收到了HLSL的影响。

 

3、Unity可以使用 "CG/HLSL"或者"GLSL" 编写着色器,当然会有一些语法糖等内容的修改,因为较为繁琐但是这种方法较为少用,为此Unity提供了一种更为简便的使用方法。

 

4、Unity使用Shader的一般流程

 1)创建一个材质(Material)

 2)创建目标Shader

 3)将Shader挂载到Material上

 4)将Material挂载到目标渲染对象,并在Shader属性面板上调节效果知道满意为止

 

5、Unity 提供了几种shader的模板供使用者选择,通过Assets->Create->Shader可以看到这些模板(5.5.6)

技术分享图片

 

6、ShaderLab 是Unity 提供的一种编写Unity Shader的一种声明性脚本(大家都觉得是一种语言,我觉得像脚本)吧

Shader "shader_name"

{

    Properties

    {

        _MainTex("Main Tex", 2D) = "white"{}

        ......

    }

    SubShader

    {

        Pass{}

        Pass{}

    }

    SubShader {}

    ......

    FallBack "......"

}

 

Unity Shader (1)

原文:https://www.cnblogs.com/haihuahuang/p/12504107.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!