日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

unity 自定义渲染管线

發(fā)布時間:2023/12/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 unity 自定义渲染管线 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?1。Unity SRP 即 Unity Scriptable Rendering Pipeline(可編程渲染管線),是Unity 2018的新功能,使開發(fā)者可以通過腳本按需構(gòu)建自己的渲染過程。

自定義渲染管線分為三個部分:

1.Custom Render Pipeline Asset ?? ?用來制作渲染管線的二進制文件。

2.Custom Render Pipeline ?? ?用來具體渲染的代碼腳本

3.Shader ?? ?編寫自定義渲染管線的著色器腳本

Unity官網(wǎng):https://unity.com/cn/srp

?

2.Custom Render Pipeline Asset

新建一個我們自定義的類,繼承RenderPipelineAsset,重寫CreatePipeline()方法,該方法主要與接下來講的第二部分關聯(lián)。

然后在unity新建我們的二進制文件, 在渲染設置中成我們的二進制文件

?

3.Custom Render Pipeline

新建一個我們自定義的類,繼承RenderPipeline,重寫Render方法,該方法是主要的自定義渲染方法,在2019版本中,unity附加了調(diào)用渲染的一系列API。

在Render方法中,第一個參數(shù)類型為ScriptableRenderContext,是渲染過程中的一個管理器,第二個參數(shù)是所有的攝像機,包括Scene視圖下的攝像機。

所有的自定義渲染命令都是通過CommandBuffer對象來緩存,然后集中給ScriptableRenderContext提交。

渲染命令包括 1.設置渲染目標 2.繪制天空盒子 3.執(zhí)行裁剪過程 4.執(zhí)行過濾過程 5.繪制場景準備 6.執(zhí)行管線

4.Shader

自定義渲染管線的Shader跟之前的沒什么不同,只是Shader內(nèi)的Pass里的Tags中“LightMode”不同,需要自定義名字,然后通過第二部分Render去獲得該shader渲染。 不再是unity自定義的正向渲染。這樣就跟我們自定義的渲染管線聯(lián)系了起來。

在Render中可以通過New ShaderPassName(“name”)來獲取,通過不同的設置對象也有的通過new ShaderTagId (“name”)來獲取。

?

自定義渲染總結(jié)

優(yōu)點是功能強大,可以用c#控制,可以靈活定義自己的渲染實現(xiàn)更高的效果,媲美UE4渲染

缺點是依賴更新的API。比如很多2019版本unity的渲染API在2018版本就沒有。無法與系統(tǒng)原生的渲染 共存,即原生的shader在自定義渲染下無法使用除非自己添加支持原生的渲染管線

總結(jié)

以上是生活随笔為你收集整理的unity 自定义渲染管线的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。