可编程的渲染管线介绍

Scriptable Render Pipeline 简称SRP

这个页面解释可编程渲染管线是如何工作的,其中也会介绍关键的概念和术语

SRP是个轻量级的应用接口层,它允许你使用C#脚本对渲染命令进行安排和配置,SRP通过这些命令到达更底层图形结构体系,然后向图形API发送命令

渲染管线资源和渲染管线实例

当你在SRP下使用C#编写渲染代码时,你必须创建和自定义两个关键元素:

· 渲染管线资源是保存在你工程中的一种资源文件,主要是用于存储和配置和SRP有关的数据.定义渲染管线资源的方式是通过创建脚本,不过这个脚本需要继承Rendering.RenderPipelineAsset,在这之后才能在工程中创建和配置渲染管线资源实例

· 渲染管线实例是一个包含了Render()方法的类,其中的Render方法是SRP的入口点.为了定义渲染管线实例,就必须要创建一个继承自RenderPipeline的脚本

对于创建这些元素的更多信息,可以参考这里创建一个基本的渲染管线资源和渲染管线实例.

The Scriptable Render Context

The scriptable Render Context是一个行为类似接口的类,它处于C# SRP代码和unity底层图形代码之间.你可以使用ScriptableRenderContext API计划和执行渲染命令

对于使用the scriptable Render Context的更多信息,可以看这里 Scheduling and executing rendering commands in the Scriptable Render Pipeline

入口和回调

在SRP中,你可以编写指定unity在特定时间调用的渲染代码

· 渲染管线实例中的Render()方法是SPR的入口点.对于每一个CameraType而言,unity每帧调用这个方法一次,CameraType是不同类型的摄像机的当前渲染内容.Customize()这个方法是用于自定义SRP.

· RenderPipelineManager类中有四个事件:beginFrameRendering,beginCameraRendering,endCameraRendering以及endFrameRendering.在渲染管线中,你可以订阅这些事件在特定的点去执行代码.注意:如果你正在编写你自己的自定义SRP,你必要要确保你的SRP在适当的时间添加这些方法

可编程的渲染管线介绍相关推荐

  1. OpenGL超级宝典(第7版)笔记4 渲染管线介绍 清单2.3-2.7

    OpenGL超级宝典(第7版)笔记4 渲染管线介绍 清单2.3-2.7 文章目录 OpenGL超级宝典(第7版)笔记4 渲染管线介绍 清单2.3-2.7 1 OpenGL简介 2 OpenGL渲染管线 ...

  2. 【TA-霜狼_may-《百人计划》】图形3.4 延迟渲染管线介绍

    [TA-霜狼_may-<百人计划>]图形3.4 延迟渲染管线介绍 @[TOC]([TA-霜狼_may-<百人计划>]图形3.4 延迟渲染管线介绍 3.4.1 渲染路径 3.4. ...

  3. 改善编程体验: IdeaVimExtension介绍

    改善编程体验: IdeaVimExtension介绍 动机 Intellij IDEA是个非常优秀的开发环境,提供了相当好用的快捷键,让用户有机会脱离鼠标来使用IDE. 另外官方还提供了IdeaVim ...

  4. 改善编程体验: IdeaVimExtension介绍 1

    改善编程体验: IdeaVimExtension介绍 动机 Intellij IDEA是个非常优秀的开发环境,提供了相当好用的快捷键,让用户有机会脱离鼠标来使用IDE. 另外官方还提供了IdeaVim ...

  5. 西门子s5 通讯测试软件,几种常用的S5编程软件简要介绍

    主题:几种常用的S5编程软件简要介绍 楼主 2011-05-11 09:06:32 几种常用的S5编程软件说明: Step5 西门子嫡系产品: 肯定100%的满足你对S5全系列的开发.维护要求: DO ...

  6. abb机器人焊接编程视频教程_ABB工业机器人焊接编程程序详细介绍

    原标题:ABB工业机器人焊接编程程序详细介绍 出时,不会显示在程序段中.换句话说,就是与工件没有联系的路径,程序中不带wobj. 与工件相关的路径:包括机器人焊接路径和抓放工件的dock和undock ...

  7. 青岛abb焊接机器人编程招聘_ABB机器人焊接编程程序详细介绍

    原标题:ABB机器人焊接编程程序详细介绍 对于OLP中Speed和Zone值的设定: Zone值一般情况下,要根据机器人运动速度和对运动的精度要求来确定,即Zone与Speed值是相关的. 1. 通常 ...

  8. C语言实现OOP——轻量级的面向对象 C 语言编程框架 LW_OOPC 介绍(三)

    文章目录 C 语言编程框架 LW_OOPC 介绍(三) 方案的可扩展性如何? LW_OOPC最佳实践 LW_OOPC的优点: LW_OOPC的缺点: 总结: 幕后花絮: 参考资料: C 语言编程框架 ...

  9. C语言实现OOP——轻量级的面向对象 C 语言编程框架 LW_OOPC 介绍(二)

    轻量级的面向对象 C 语言编程框架 LW_OOPC 介绍 下面,再举一个稍微复杂的例子,它的覆盖面是足够全面的,足以一瞥面向对象编程的3个要素:数据抽象.继承和多态.通过这个例子,我们期望展现出LW_ ...

最新文章

  1. python递归函数是指_python 函数递归作业求解析
  2. 数据分析(排序,数据特征、平均数、方差等,累计统计,相关分析)
  3. 对python乱序字符串检查算法研究
  4. c++代码表白_一行 Python 代码能实现什么丧心病狂的功能? | CSDN博文精选
  5. LeetCode 51 N 皇后
  6. Vue系列vue-router的动态路由使用(二)
  7. 华为nova5系列正式发布:售价2799元起
  8. 解决Navicat for MySQL 连接 Mysql 8.0.13出现1251- Client does not support authentication protocol 错误
  9. 华为18级工程师三年心血终成趣谈网络协议文档(附详细讲解)
  10. 微信小程序动画效果集合
  11. 如何破解无线网络密码(无线网络密码破解)
  12. PS CS4抽出滤镜抠图小技巧
  13. ffmpeg将常见视频格式转换为mp4
  14. spark的数三角形算法_腾讯开源全栈机器学习平台 Angel 3.0,支持三大类型图计算算法...
  15. mysql数据库有什么应用场景_科普:云数据库MySQL的几种应用场景
  16. python如何计算平均分_python脚本如何输入成绩求平均分?
  17. ProgressDialog在线程里下载图片
  18. 升级Mountain Lion系统后因为 “来自身份不明开发者” 不能打开某些软件的解决方法
  19. Unhandled event loop exception解决办法
  20. Leetcode_172_Factorial Trailing Zeroes

热门文章

  1. android 程序等待时间,Android开发学习之路--性能优化之常用工具
  2. IntelliJ IDEA 删除项目
  3. 一款可以完美替代浏览器自带起始页的新标签页插件:Wetab
  4. 数据仓库Hive编程——HiveQL的数据操作(一):向管理表中装载数据
  5. Catboost参数
  6. flutter获取键盘高度
  7. 第五章 SQL实现关系代数运算
  8. xilinx axi详解
  9. 我在神奇代码岛研究了一点辅助功能
  10. go语言 python哪个好学_go语言和python哪个难