91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Unity可編程渲染管線SRP具體流程介紹

454398 ? 來源:CSDN ? 作者:莫之 ? 2020-10-05 01:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、RenderPipeline類

通過SRP可以實現(xiàn)對渲染管線的完全控制,它提供了需要的工具來創(chuàng)建符合項目需求的渲染管線和效果;通過在C#腳本中定義一系列的命令來控制每一幀的渲染過程,和傳統(tǒng)內置管線不同,它開放了更多的接口,給了開發(fā)者更大的自由度,但是又不至于像OpenGL手寫管線那么復雜,可以很好滿足開發(fā)者既需要自定義管線又要簡單快捷的開發(fā)需求,降低了渲染管線的開發(fā)門檻;

該類用于srp中的渲染方式,它通過定義一系列的命令和設置來告訴unity怎么渲染一幀;

二、相關類

所有可編程渲染管線相關的類定義在UnityEngine.Rendering中;

1. RenderPipelineAsset

所有的管線資源都要繼承自該類,并重寫其創(chuàng)建管線的CreatePipeline()方法,返回一個RenderPipeline實例,并且需要將該值賦予到GraphicSettings,然后才可以使用這個自定義的管線來進行渲染;

2. GraphicsSettings

它和編輯器中的Project Settings中的Graphics的設置是緊密相關的,用于以腳本的方式來進行自動設置來代替手動設置;所以,它提供的屬性和方法都是和設置面板相對應的;例如,創(chuàng)建一條管線后,就可以通過GraphicsSettings.renderPipelineAsset來將其設置為當前的渲染管線;

3. RenderPipeline

核心類,可編程的渲染管線的具體流程在此定義,所有的可編程渲染管線繼承自該類,在創(chuàng)建新的管線資源時,需要使用到該類的子類進行實例化;

4. ScriptableRenderContext

渲染上下文,在自定義渲染管線中定義一些狀態(tài)和渲染命令,然后調用Submit函數提交到GPU;這個上下文的概念類似于OpenGL中上下文的概念,定義渲染管線要使用的許多狀態(tài)以及繪制命令,相當于整個渲染的manager;

SetupCameraProperties(camera):相機的配置是第一步,設置相機的屬性,獲取一個相機實例后,就可以獲取它的觀察矩陣(transform)和裁剪矩陣(clip plane等)等屬性值;

5. CommandBuffer

它的出現(xiàn)早于SRP,在沒有SRP時,它用于對unity內置的渲染管線進行擴展;該緩沖區(qū)用于存儲一系列渲染命令,然后提交到渲染上下文中;

使用步驟:創(chuàng)建緩沖區(qū)-設置-提交-釋放緩沖區(qū)

CommandBuffer buf=new CommandBuffer(); //設置渲染命令.... context.ExecuteCommandBuffer(buf) //非立即執(zhí)行 buf.Release()

6. SortSettings

設置場景中物體的排序方式,使用默認方式和使用自定義方式

默認方式,設置criteria,這是一個SortingCriteria枚舉類型,包含了透明物體(從前到后)、半透明(從后到前);

自定義方式,設置cameraPosition、customAxi、worldToCameraMatrix三個變量聯(lián)合使用;

三、第一步-完成一個最基礎的渲染管線

創(chuàng)建命令緩沖區(qū),如下,設置清空渲染目標的命令;

剔除操作,通過相機獲取剔除參數,剔除場景中的不可見物體;

繪制命令,繪制前需要對場景中的物體進行排序,為不同的物體設置不同的排序方式,比如半透明物體要從后到前渲染;在DrawingSettings中,構造函數第一個參數為ShaderTagId類型,也就是要使用的pass的tag的Id值,以及排序的設置;FilteringSettings則設置渲染隊列的范圍,用于設置哪些物體將會被渲染,如下例子,將透明和半透明分開進行渲染;

注意:天空盒的渲染在不透明物體之后,在半透明物體之前;

var cmd = new CommandBuffer(); CameraClearFlags clearFlags = camera.clearFlags; cmd.ClearRenderTarget((CameraClearFlags.Color&clearFlags)!=0,(CameraClearFlags.Depth&clearFlags)!=0,camera.backgroundColor); context.ExecuteCommandBuffer(cmd); cmd.Release(); context.SetupCameraProperties(camera); //剔除 ScriptableCullingParameters cullingPrama; camera.TryGetCullingParameters(out cullingPrama); CullingResults cullRet = context.Cull(ref cullingPrama); //繪制 SortingSettings sortSettings = new SortingSettings(camera); sortSettings.criteria = SortingCriteria.CommonOpaque; DrawingSettings drawSettings = new DrawingSettings(new ShaderTagId("BasicPass"),sortSettings); FilteringSettings filterSettings = new FilteringSettings(RenderQueueRange.opaque); context.DrawRenderers(cullRet,ref drawSettings,ref filterSettings); context.DrawSkybox(camera); sortSettings.criteria = SortingCriteria.CommonTransparent; drawSettings.sortingSettings = sortSettings; filterSettings.renderQueueRange = RenderQueueRange.transparent; context.DrawRenderers(cullRet,ref drawSettings,ref filterSettings); context.Submit();

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • gpu
    gpu
    +關注

    關注

    28

    文章

    5200

    瀏覽量

    135538
  • 編輯器
    +關注

    關注

    1

    文章

    828

    瀏覽量

    32921
  • Unity
    +關注

    關注

    1

    文章

    131

    瀏覽量

    23307
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    可編程直流電源如何連接電腦

    ,用戶可實現(xiàn)參數設置、遠程操控、數據記錄與自動化測試流程。以下是連接可編程直流電源與電腦的詳細步驟與注意事項。 ? 一、選擇合適的連接方式 可編程直流電源與電腦的連接方式主要有三種:USB、RS232串口和以太網(LAN)。
    的頭像 發(fā)表于 03-04 15:22 ?73次閱讀
    <b class='flag-5'>可編程</b>直流電源如何連接電腦

    探索BUF08832:可編程電壓參考的卓越之選

    探索BUF08832:可編程電壓參考的卓越之選 在電子設計領域,擁有一款性能出色且功能豐富的可編程電壓參考芯片至關重要。今天,我們就來深入了解一下德州儀器(TI)的BUF08832,看看它在實際
    的頭像 發(fā)表于 03-01 13:40 ?516次閱讀

    Zynq全可編程片上系統(tǒng)詳解

    Zynq 是由賽靈思(Xilinx,現(xiàn)為 AMD 的一部分)推出的一系列全可編程片上系統(tǒng)。它的革命性創(chuàng)新在于,它不是傳統(tǒng)的 FPGA,也不是傳統(tǒng)的處理器,而是將高性能的 ARM Cortex-A 系列處理器與傳統(tǒng)的 FPGA 可編程邏輯緊密地集成在單一芯片上。
    的頭像 發(fā)表于 01-13 11:41 ?1916次閱讀
    Zynq全<b class='flag-5'>可編程</b>片上系統(tǒng)詳解

    YXC高精度的石英可編程壓控溫補振蕩器:YSV531PT系列

    YXC同通過自主研發(fā)陸續(xù)推出:可編程普通振蕩器YSO690PR系列;可編程差分振蕩器YSO210PR、YSO212PU系列;可編程壓控振蕩器YSV310PR系列;可編程壓控差分振蕩器Y
    的頭像 發(fā)表于 12-25 15:38 ?430次閱讀
    YXC高精度的石英<b class='flag-5'>可編程</b>壓控溫補振蕩器:YSV531PT系列

    思爾芯邀您共聚 FPT 2025,賦能可編程技術新未來

    技術先鋒,再啟新程!思爾芯將亮相12月2日至5日的2025年國際現(xiàn)場可編程技術大會(FPT),與全球頂尖專家學者及行業(yè)伙伴,共同探索可編程技術的前沿發(fā)展與應用創(chuàng)新。FPT是亞太地區(qū)最具影響力的現(xiàn)場
    的頭像 發(fā)表于 11-25 09:57 ?683次閱讀
    思爾芯邀您共聚 FPT 2025,賦能<b class='flag-5'>可編程</b>技術新未來

    源儀電子S7220交直流可編程電源產品介紹

    源儀電子S7220交直流可編程電源融合了PWM、PFC和DSP等先進技術,提供了純凈、穩(wěn)定且靈活的電源輸出,具備精確的量測能力和完善的保護措施。無論是用于研發(fā)驗證還是生產線質量檢驗,都能有效提升測試的精確性和效率,可編程電源是工程師應對復雜電源測試挑戰(zhàn)的理想選擇。
    的頭像 發(fā)表于 09-22 14:28 ?594次閱讀
    源儀電子S7220交直流<b class='flag-5'>可編程</b>電源產品<b class='flag-5'>介紹</b>

    可編程負載:實驗室與生產的高效測試助手

    電子負載產品憑借高性能、多功能和高可靠性,為用戶提供了一站式的測試解決方案。本文將詳細介紹源儀電子的可編程負載的特點、應用以及如何助力實驗室和生產提升效率。
    的頭像 發(fā)表于 09-05 10:45 ?612次閱讀
    <b class='flag-5'>可編程</b>負載:實驗室與生產的高效測試助手

    用于 DOCSIS 3.0 上行路徑的可編程增益放大器 skyworksinc

    電子發(fā)燒友網為你提供()用于 DOCSIS 3.0 上行路徑的可編程增益放大器相關產品參數、數據手冊,更有用于 DOCSIS 3.0 上行路徑的可編程增益放大器的引腳圖、接線圖、封裝手冊、中文資料
    發(fā)表于 09-01 18:33
    用于 DOCSIS 3.0 上行路徑的<b class='flag-5'>可編程</b>增益放大器 skyworksinc

    MT6501在線可編程角度編碼器:以獨特可編程特性提升汽車控制精度與可靠性

    在汽車工業(yè)蓬勃發(fā)展的今天,汽車的智能化、自動化程度越來越高,對汽車控制精度與可靠性的要求也日益嚴苛。MT6501 在線可編程角度編碼器憑借其獨特的可編程特性,在提升汽車控制精度與可靠性方面展現(xiàn)出了巨大的潛力。
    的頭像 發(fā)表于 08-04 18:01 ?836次閱讀

    吉事勵可編程交流恒流源原理及特點介紹

    可編程交流恒流源是一種電子測試設備,其核心功能是在負載變化時保持輸出交流電流的恒定,同時允許用戶通過編程接口靈活設定電流值、波形和頻率。以下是其核心要點:
    的頭像 發(fā)表于 07-24 18:18 ?610次閱讀
    吉事勵<b class='flag-5'>可編程</b>交流恒流源原理及特點<b class='flag-5'>介紹</b>

    吉事勵可編程交流恒流源特點介紹

    在現(xiàn)代電氣測試領域,精確的電流控制已成為產品質量和安全的關鍵保障。吉事勵電子推出的CCS2000系列可編程交流恒流源憑借其先進技術和可靠性能,正成為斷路器、熔斷器、變壓器等關鍵電氣元件測試的首選設備
    的頭像 發(fā)表于 07-22 17:30 ?634次閱讀
    吉事勵<b class='flag-5'>可編程</b>交流恒流源特點<b class='flag-5'>介紹</b>

    可編程SLIC語音芯片哪家好?

    在當今數字化快速發(fā)展的時代,語音芯片的應用越來越廣泛,而可編程SLIC(用戶線路接口電路)語音芯片更是憑借其獨特的優(yōu)勢,受到眾多行業(yè)的青睞。那么,面對眾多的選擇,哪家的可編程SLIC語音芯片更勝一籌
    的頭像 發(fā)表于 06-12 13:55 ?765次閱讀
    <b class='flag-5'>可編程</b>SLIC語音芯片哪家好?

    愛普生可編程晶振產品如何選擇

    在電子設備對時鐘精度與靈活性要求日益提升的當下,愛普生可編程晶振以寬溫工作,高精度溫補、低功耗與小型化設計脫穎而出,成為5G通信、智能汽車、物聯(lián)網設備的核心時鐘方案。下面讓我們介紹一下如何選擇適合您的產品。
    的頭像 發(fā)表于 05-15 15:47 ?821次閱讀
    愛普生<b class='flag-5'>可編程</b>晶振產品如何選擇

    吉事勵可編程變頻電源的特性與應用

    在當今科學技術飛速發(fā)展的時代,可編程交流電源作為一種關鍵的電力設備,在工業(yè)生產、科研實驗等諸多領域得到了廣泛的應用,為各行業(yè)的發(fā)展提供了強有力的動力支持。 可編程交流電源具有許多顯著的特點。 首先
    的頭像 發(fā)表于 04-21 17:18 ?600次閱讀
    吉事勵<b class='flag-5'>可編程</b>變頻電源的特性與應用

    可編程電子負載的原理及主要應用

    可編程電子負載是電源測試領域的關鍵設備,能夠模擬真實負載條件并動態(tài)調整參數,為電源、電池、新能源設備等提供性能驗證。源儀電子基于20年行業(yè)經驗,開發(fā)了可編程直流電子負載系列,涵蓋高精度測試、動態(tài)響應及多通道控制功能,滿足從研發(fā)到量產的全
    的頭像 發(fā)表于 03-15 10:38 ?1923次閱讀
    <b class='flag-5'>可編程</b>電子負載的原理及主要應用