当前位置: 首页 > news >正文

Unity图形学之Shader结构

Unity - Manual: ShaderLab: Legacy Lighting

1.Shader 语言:

OpenGL:SGL  跨平台性能非常好 GLSL语言  OpenGL Shader LanguageDX:微软 非跨平台 性能非常好  HLSL语言  High Level Shader LanguageCG:微软和英伟达 联合开发CG 跨平台 基于C语言 性能非常好

2.Unity Shader语言

CG和HLSL 包括在 CGPROGRAM .... ENDCG 语法块内GLSL 包含在 GLSLPROGRAM .... ENDGLSL 语法块内自己的语言 Shader Lab

3.Unity Shader 分类:

Fixed Shader:Shader 1.0  主要是 开关式的Shader顶点片段 着色器:Shader 2.0 不光能打开,而且功能里面的公式可以自己定义Surface Shader:前两个的封装

4.Shader 结构:

//Shader 的名字会显示在 Unity 的 Inspector 中 选择 Shader的菜单里面Shader "Shader名字"{//属性[Properties]//SubShader就是对应的一个显卡 可能存在多个SubShader Unity会在所有 SubShader列表中选择当前环境中的第一个 SubShaderSubShader{//SubShader 的标签[Tags]//给多个Pass 公用的设置[Common State]//可能存在多个Pass ,每个Pass都会引发一次渲染Pass {//Pass的标签[Pass Tags]//渲染设置,如颜色混合[Render SetUp]//纹理设置,只有在 Fixed Function Shader 中才可用[Texture SetUp]CGPROGRAM....................ENDCG}//可以有多个Pass[其他的 Pass]}//可以多个SubShader[其他的SubShader]//当所有SubShader 失败的时候,使用Fallback指定的ShaderFallBack "Diffuse"//当有自定义 Shader 的设置 UI 时候使用[CustomEditor]}

http://www.lryc.cn/news/479842.html

相关文章:

  • 离散时间信号的产生
  • 物联优化汽车齿轮锻造
  • CocosCreator 构建透明背景应用(最新版!!!)
  • 使用CentOS宝塔面板docker搭建EasyTier内网穿透服务
  • HTMLCSS: 实现可爱的冰墩墩
  • 天地图入门|标注|移动飞行|缩放,商用地图替换
  • Flutter PC端UI组件库
  • NVR小程序接入平台/设备EasyNVR多品牌NVR管理工具/设备汇聚公共资源场景方案全析
  • 干部谈话考察系统:革新传统,精准高效
  • 反转链表(Leetcode)
  • 制作游戏外挂的技术栈有哪些
  • python下载pdf
  • 我们来学mysql -- 同时使用 AND 和 OR 查询错误(填坑篇)
  • 关于Websocket
  • vue2 pdf 链接地址打开
  • c# 动态lambda实现二级过滤(多种参数类型)
  • 34.Redis事务
  • 认识类和对象
  • 解决echarts桑基图为0时tooltip不显示的问题
  • vue3 基础笔记
  • Oracle 第30章:最佳实践与案例研究
  • 第九周预习报告
  • 【分享】这篇教程助力你成为 JavaScript 糕手!(四)
  • 双亲委派模型的破坏
  • Android关机流程知多少?
  • 深入理解指针end(总结篇)
  • C# 程序暂停的两种方式
  • 【LeetCode】【算法】160.相交链表
  • 光伏破局 引领能源革命
  • Jenkins声明式Pipeline流水线语法示例