色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

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

454398 ? 來源:CSDN ? 作者:莫之 ? 2020-10-05 01:55 ? 次閱讀

一、RenderPipeline類

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

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

二、相關類

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

1. RenderPipelineAsset

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

2. GraphicsSettings

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

3. RenderPipeline

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

4. ScriptableRenderContext

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

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

5. CommandBuffer

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

使用步驟:創建緩沖區-設置-提交-釋放緩沖區

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

6. SortSettings

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

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

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

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

創建命令緩沖區,如下,設置清空渲染目標的命令;

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

繪制命令,繪制前需要對場景中的物體進行排序,為不同的物體設置不同的排序方式,比如半透明物體要從后到前渲染;在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();

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

    關注

    28

    文章

    4743

    瀏覽量

    129009
  • 編輯器
    +關注

    關注

    1

    文章

    806

    瀏覽量

    31198
  • Unity
    +關注

    關注

    1

    文章

    127

    瀏覽量

    21837
收藏 人收藏

    評論

    相關推薦

    可編程晶振的優點和缺點

    可編程晶振,近年來漸入人們眼中。什么是可編程晶振,與普通晶振有什么區別?可編程晶振的優點和缺點有哪些?1,什么是可編程晶振可編程晶振是一種可
    的頭像 發表于 09-30 10:44 ?420次閱讀
    <b class='flag-5'>可編程</b>晶振的優點和缺點

    用TMAG5328電阻器和電壓可編程霍爾效應開關實現可編程性和診斷

    電子發燒友網站提供《用TMAG5328電阻器和電壓可編程霍爾效應開關實現可編程性和診斷.pdf》資料免費下載
    發表于 09-11 10:01 ?0次下載
    用TMAG5328電阻器和電壓<b class='flag-5'>可編程</b>霍爾效應開關實現<b class='flag-5'>可編程</b>性和診斷

    可編程晶振都有什么頻率的呢?分享3個挑選可編程晶振的技巧

    頻率范圍全面覆蓋,滿足多樣化需求: ? CMOS可編程晶振:1~200MHz寬廣選擇,為您的基礎應用提供穩定可靠的支持。 ? 可編程差分晶振:高達2100MHz的卓越性能,滿足高速數據傳輸與信號處理的高標準要求。 ? 可編程壓控
    的頭像 發表于 07-18 18:30 ?1178次閱讀
    <b class='flag-5'>可編程</b>晶振都有什么頻率的呢?分享3個挑選<b class='flag-5'>可編程</b>晶振的技巧

    可編程電源的作用是什么

    可編程電源的作用是什么 可編程電源是一種電子設備,它可以根據用戶的需求調整輸出電壓和電流。這種電源廣泛應用于各種電子設備和系統的測試、調試和研發過程中。 ### 可編程電源的作用 #### 1.
    的頭像 發表于 06-10 15:33 ?684次閱讀

    可編程電源使用方法

    可編程電源使用方法 可編程電源使用方法 摘要:本文詳細介紹可編程電源的使用方法,包括其基本概念、主要功能、選擇原則、操作步驟、注意事項以及實際應用案例,旨在幫助讀者全面了解
    的頭像 發表于 06-10 15:29 ?1044次閱讀

    可編程電源如何編程

    可編程電源如何編程? 可編程電源是一種可以調節輸出電壓和電流的電源設備,廣泛應用于電子設備測試、研發和生產等領域。通過編程,用戶可以根據需要設置電源的輸出參數,實現自動化測試和控制。本
    的頭像 發表于 06-10 15:24 ?1382次閱讀

    什么是現場可編程邏輯陣列?它有哪些特點和應用?

    可編程邏輯元件和可編程互連,實現邏輯電路的設計和配置。FPLA在電子系統設計、數字信號處理、網絡通信等多個領域都有廣泛應用。本文將對現場可編程邏輯陣列進行詳細介紹,包括其定義、原理、特
    的頭像 發表于 05-23 16:25 ?991次閱讀

    可編程片上系統的基本特征和主要應用

    可編程片上系統是一種特殊的嵌入式系統:首先它是片上系統,即由單個芯片完成整個系統的主要邏輯功能;其次,它是可編程系統,具有靈活的設計方式,可裁減、可擴充、可升級,并具備軟硬件在系統可編程的功能。
    的頭像 發表于 03-28 15:13 ?653次閱讀

    可編程片上系統是什么意思

    可編程片上系統(Programmable System-on-Chip,PSoC)是一種特殊的嵌入式系統。它首先是一個片上系統,這意味著整個系統的主要邏輯功能由單個芯片完成。其次,它具有可編程的特性,設計方式靈活,可裁減、可擴充、可升級,并具備軟硬件在系統
    的頭像 發表于 03-28 15:09 ?582次閱讀

    現場可編程門陣列的原理和應用

    FPGA是一種可編程的硬件邏輯器件,其核心組成部分是可編程邏輯單元(PLU)和可編程互連資源(Interconnect Resources)。PLU是一組可編程的邏輯門,如與門、或門、
    的頭像 發表于 03-27 14:49 ?735次閱讀

    現場可編程門陣列設計流程

    現場可編程門陣列(FPGA)設計流程是一個綜合性的過程,它涵蓋了從需求分析到最終實現的各個環節。下面將詳細介紹FPGA設計流程的主要步驟。
    的頭像 發表于 03-16 16:38 ?1971次閱讀

    現場可編程門陣列是什么

    現場可編程門陣列(Field Programmable Gate Array,簡稱FPGA)是一種超大規模可編程邏輯器件,由可編程邏輯資源、可編程互連資源和
    的頭像 發表于 03-16 16:38 ?2487次閱讀

    可編程邏輯器件的特征及優勢科普

    可編程邏輯器件是一種集成電路,具有可編程功能的特性。它們可以根據用戶的需求進行編程,從而實現不同的邏輯功能。
    的頭像 發表于 02-26 18:24 ?1133次閱讀

    可編程控制器的組成 可編程控制器有哪些特點?

    可編程控制器(Programmable Logic Controller,PLC)是一種使用數字計算機技術和專用外設實現工業過程自動化控制的設備。它在工業生產中起到了非常重要的作用。本文將詳細介紹
    的頭像 發表于 01-18 11:18 ?1573次閱讀

    基于FPGA的可編程AES加解密IP

    可編程AES加解密IP內建密鑰擴展功能,使用初始密鑰產生擴展密鑰,用于加解密過程。可編程AES加解密IP處理128-bit分組數據,并且支持可編程的密鑰長度:128-bit,192-bit和256-bit。
    發表于 01-09 10:49 ?502次閱讀
    基于FPGA的<b class='flag-5'>可編程</b>AES加解密IP
    主站蜘蛛池模板: 亚洲精品成人A8198A片漫画| 伊人久久网国产伊人| 中文视频在线| 久久免费观看视频| 这里只有精品网| yellow视频免费观看| 神马影院午夜伦理限级| 国产人妻系列无码专区97SS| 亚洲色在线| 免费看片A级毛片免费看| 超碰97人人做人人爱网站| 我要搞av| 久草在线精彩免费视频| qvod在线观看| 亚洲 自拍 欧洲 视频二区| 久久在精品线影院| 动漫人物差差差30分钟免费看| 亚洲 欧美 日本 国产 高清| 两性午夜刺激爽爽视频| 少女free大陆| 浪货嗯啊趴下NP粗口黄暴| 亚洲高清视频网站| 美女大BXXXXN内射| 国产精品一区二区激情| 中文视频在线| 我与旗袍老师疯狂床震| 美女漏bb| 国产精品视频大全| 92电影网午夜福利| 探花口爆颜射乳交日韩| 久久精品热只有精品| 成人特级毛片| 在线播放无码字幕亚洲| 少女亚洲free| 免费啪视频观试看视频| 国产麻豆精品久久一二三| 97人妻丰满熟妇AV无码| 亚洲 欧美 中文字幕 在线| 蜜桃久久久亚洲精品成人| 国产欧美一区二区三区免费| 99在线观看精品|