URP custompasscustom render objects

2024-08-30 11:12

本文主要是介绍URP custompasscustom render objects,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

https://dbbh666.blog.csdn.net/article/details/141296728?spm=1001.2014.3001.5502
上一次 custom render pass的时候,直接是quad的渲染,如果想把任意对象绘制到FBO怎么写呢
在这里插入图片描述
参考这两个高手的文章,总结一下
https://www.bilibili.com/read/cv6735961/
https://zhuanlan.zhihu.com/p/365734868
主要使用这个绘制方式来进行绘制

context.DrawRenderers(renderingData.cullResults,ref draw,ref filter);

这里要先在CS里添加一些TAG,这个TAG就是shader里那个Tags{“LightMode” = “XXX_Unlit”}在这里插入图片描述
在这里插入图片描述
还有filtering setting有这么些设置
https://docs.unity.cn/cn/2020.2/ScriptReference/Rendering.FilteringSettings.html

整个流程就是
先在C#为这次渲染指定过滤器,由于要根据shader TAG,所以要在shader把TAG对上
然后执行一次对应相机的一些culling,得到result接下来就绘制就行了

context.DrawRenderers(cullResults, ref drawingSettings, ref filteringSettings);

这个drawingsetting比较神秘,不知道下面实现有没有CS里根据这个剔除,不过我估计还是CPU端剔除的,哪天有机会翻翻看源码才知道了

贴一下上面链接的知乎老哥的代码片段,可以比较直观的看一下
在这里插入图片描述

这篇关于URP custompasscustom render objects的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1120655

相关文章

tiptap parseHTML renderHTML 使用

要在 Tiptap 中使用 parseHTML 和 renderHTML,可以通过创建自定义扩展来解析和渲染自定义的 HTML 元素。这两个方法允许你定义如何将 HTML 解析为 ProseMirror 文档节点以及如何将 ProseMirror 的文档节点渲染为 HTML。 1. parseHTML parseHTML 用于将 HTML 元素解析为 ProseMirror 节点。在自定义扩展

『功能项目』更换URP场景【32】

上一章已经将项目从普通管线升级到了URP管线 现在我们打开上一篇31项目优化 - 默认管线转URP的项目, 进入战斗场景 将Land的子级全部隐藏 将新的URP场景预制体拖拽至Land子级 对场景预制体完全解压缩 将Terrain拖拽至Land的直接子级 将Terrain设置为Land 与 静态Static 清除烘培 重新烘培 修改脚本:LoadRe

【Unity小技巧】URP管线遮挡高亮效果

前言 在URP渲染管线环境下实现物体遮挡高亮显示效果,效果如下: Unity URP遮挡高亮 实现步骤 创建层级,为需要显示高亮效果的物体添加层级,比如Player 创建一个材质球,也就是高亮效果显示的材质球找到Universal Renderer Data Assets 4.在Assets上添加两个Render Objects组件 第一个做如下三处设置 指定遮挡层级指

“同学,vue的template是如何转为render函数的“

Vue 的 template 是如何一步步转换为渲染函数(render function)的过程涉及多个复杂的步骤。这个过程包括模板解析、AST 构建、优化和最终的渲染函数生成。以下是 Vue 中从 template 到 render 函数的详细转换步骤: 1. 模板编译概述 Vue 的模板编译过程分为以下几个主要步骤: 模板解析:将模板字符串转换为抽象语法树(AST)。 AST 优化:

Cannot read property 'render' of undefined

Cannot read property 'render' of undefined 報錯, 本地和debug環境訪問正常 進行了以下排查 先查看了其他業務 訪問正常 排除全局性錯誤 推斷應該是引入組件的問題 斷點查看各個步驟下scope 發現了某個組件缺少模塊導出   參考 https://stackoverflow.com/questions/51021348/cannot-set-pr

JavaScript - Objects

对象定义: let person = {name: {first: "Bob",last: "smith"},age: 32,gender: 'male',interests: ['music', 'skiing'],bio: function () {alert(this.name[0] + ' ' + this.name[1] + ' is ' + this.age + ' year

关于OBI 在unity URP环境下使用的正确步骤

OBI在URP环境下使用的正确步骤 资料:OBI官方文档:Obi Physics for Unity - Big Picture 1、替换Shader 为 URP环境下: 2、渲染管线功能列表添加: ①.在Graphics配置中查找当前URP渲染管线 ②.添加Obi流体渲染功能项 ③、设URP环境为默认渲染环境。

URP简洁的instance的写法

材质还是要开启enable instance,这是上一次的写法 https://dbbh666.blog.csdn.net/article/details/136644181 最近发现更适合我个人的习惯的写法 就是代码控制这个整个过程 C#代码是这样的,获取一个mesh,获取每个mesh的transform,核心就完了,我这里是场景里的cube的mesh取来直接使用 using UnityEng

skimage包的小优化(2):模仿remove_small_objects()函数保留图片中连通域最大的区域

python模仿remove_small_objects()函数保留图片中连通域最大的区域 skimage包的morphology子模块中,提供了一个remove_small_objects()函数,可以通过自己设定的连通域面积阈值有效去掉图片中的噪点,但是在具体使用过程中会发现:这个函数使用起来还有诸多的不便,好在这个函数的源代码并不长,在在skimage包的小优化(1):模仿remove_s