99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

URP中的相機(jī)堆棧

電子設(shè)計(jì) ? 來源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2022-02-12 15:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:鄭洪智

在通用渲染管線(URP)中,相機(jī)有堆棧相機(jī)、渲染到同一渲染目標(biāo)、渲染為RenderTexture(渲染紋理)三種工作方式。

在通用渲染管線(URP)中,相機(jī)有以下工作方式:

堆棧相機(jī)(Stack Cameras)可以將多個(gè)相機(jī)的輸出合并為單個(gè)輸出。通過相機(jī)堆棧,你可以在2D UI中加入3D模型,或者創(chuàng)建車輛駕駛艙的效果。

將多個(gè)基礎(chǔ)相機(jī)或相機(jī)堆棧渲染到同一渲染目標(biāo)。這使你可以創(chuàng)建例如分屏渲染效果。

將基礎(chǔ)相機(jī)或相機(jī)堆棧渲染為RenderTexture(渲染紋理)。通過渲染到RenderTexture,可以創(chuàng)建例如CCTV監(jiān)視器之類的效果。

URP中的相機(jī)堆棧

你可以結(jié)合使用這些工作方式來獲得更復(fù)雜的效果。例如,你可以定義兩個(gè)相機(jī)堆棧,然后將每個(gè)相機(jī)堆棧設(shè)置為渲染到同一渲染目標(biāo)的不同區(qū)域。

相機(jī)堆棧

相機(jī)堆棧由基礎(chǔ)相機(jī)和一個(gè)或多個(gè)疊加相機(jī)組成。相機(jī)堆棧使用堆棧中所有相機(jī)的組合輸出疊加基礎(chǔ)相機(jī)的輸出。這樣,你可以對(duì)基礎(chǔ)相機(jī)的輸出進(jìn)行任何處理,也可以對(duì)相機(jī)堆棧的輸出進(jìn)行處理。例如,你可以將相機(jī)堆棧渲染到給定的渲染目標(biāo)、應(yīng)用后處理效果等等。

URP在Camera中執(zhí)行了多項(xiàng)優(yōu)化,包括渲染順序優(yōu)化以減少overdraw。但是,使用相機(jī)堆棧時(shí),你在手動(dòng)定義渲染這些相機(jī)的順序。因此,你必須小心對(duì)相機(jī)進(jìn)行排序,不要導(dǎo)致過度overdraw。有關(guān)URP中overdraw的信息,后面開一節(jié)專門講。

01 將相機(jī)添加到相機(jī)堆棧

o4YBAGAIgbWANBG0AAANT0XKHmc603.png

將相機(jī)添加到相機(jī)堆棧

在場(chǎng)景中創(chuàng)建相機(jī)。它的Render Type默認(rèn)為Base,使其成為基礎(chǔ)相機(jī)。

在場(chǎng)景中創(chuàng)建另一個(gè)相機(jī),然后選中。

在相機(jī)Inspector中,將相機(jī)的渲染類型RenderType更改為Overlay。

再次選擇基礎(chǔ)相機(jī)。在相機(jī)Inspector中,滾動(dòng)到Stack部分,單擊加號(hào)(+)按鈕,然后單擊疊加相機(jī)的名稱。

疊加相機(jī)現(xiàn)在是基礎(chǔ)相機(jī)的相機(jī)堆棧的一部分。Unity在基礎(chǔ)相機(jī)的輸出之上渲染疊加相機(jī)的輸出。

你可以通過直接操縱cameraStack基礎(chǔ)相機(jī)的UniversalAdditionalCameraData組件的屬性,將腳本中的相機(jī)添加到相機(jī)堆棧中,如下所示:

var cameraData = camera.GetUniversalAdditionalCameraData(); cameraData.cameraStack.Add(myOverlayCamera);

02 從相機(jī)堆棧中移除相機(jī)

o4YBAGAIgfOAXV2oAAAnSYKswHI401.png

從相機(jī)堆棧中移除相機(jī)

創(chuàng)建一個(gè)至少包含一個(gè)疊加相機(jī)的相機(jī)堆棧。

選擇相機(jī)堆棧的基礎(chǔ)相機(jī)。

在相機(jī)Inspector中,滾動(dòng)到Stack部分,單擊要?jiǎng)h除的疊加相機(jī)的名稱,然后單擊減號(hào)(-)按鈕。

疊加相機(jī)保留在場(chǎng)景中,但不再是相機(jī)堆棧的一部分。

你可以通過直接操縱cameraStack基礎(chǔ)相機(jī)的UniversalAdditionalCameraData組件的屬性,從腳本中的相機(jī)堆棧中刪除相機(jī),如下所示:

var cameraData = camera.GetUniversalAdditionalCameraData(); cameraData.cameraStack.Remove(myOverlayCamera);

03 更改相機(jī)堆棧中相機(jī)的順序

pIYBAGAIgjGARY_4AAAXvSb9dj8977.png

從相機(jī)堆棧中移除相機(jī)

創(chuàng)建一個(gè)包含多個(gè)疊加相機(jī)的相機(jī)堆棧。

在相機(jī)堆棧中選擇基礎(chǔ)相機(jī)。

在相機(jī)Inspector中,滾動(dòng)到“堆?!辈糠?。

使用疊加相機(jī)名稱旁邊的手柄重新排列疊加相機(jī)列表。

基礎(chǔ)相機(jī)會(huì)渲染相機(jī)堆棧的基礎(chǔ)層,堆棧中的疊加相機(jī)會(huì)按照從上到下的列出順序在其頂部進(jìn)行渲染。

你可以通過直接操縱cameraStack基礎(chǔ)相機(jī)的UniversalAdditionalCameraData組件的屬性,在腳本中對(duì)相機(jī)堆棧進(jìn)行重新排序。

04 將同一臺(tái)疊加相機(jī)添加到多個(gè)堆棧

要將疊加相機(jī)添加到多個(gè)相機(jī)堆棧:

創(chuàng)建一個(gè)至少包含一個(gè)疊加相機(jī)的相機(jī)堆棧。

在場(chǎng)景中創(chuàng)建相機(jī)。它的渲染類型默認(rèn)為Base,使其成為基礎(chǔ)相機(jī)。

選擇新的基礎(chǔ)相機(jī)。

在相機(jī)Inspector中,滾動(dòng)到堆棧部分,單擊加號(hào)(+)按鈕,然后單擊要在兩個(gè)相機(jī)堆棧中使用的疊加相機(jī)的名稱。

現(xiàn)在,疊加相機(jī)將同時(shí)在兩個(gè)相機(jī)堆棧中渲染。

你還可以通過直接操縱cameraStack基礎(chǔ)相機(jī)的UniversalAdditionalCameraData組件的屬性,將腳本中的相機(jī)添加到相機(jī)堆棧中,如下所示:

var cameraData = camera.GetUniversalAdditionalCameraData(); cameraData.cameraStack.Add(myOverlayCamera);

將多個(gè)相機(jī)渲染到一個(gè)目標(biāo)

在通用渲染管線(URP)中,多個(gè)基礎(chǔ)相機(jī)或相機(jī)堆??梢凿秩镜酵讳秩灸繕?biāo)。這使你可以創(chuàng)建例如分屏渲染的效果。

如果有多個(gè)基礎(chǔ)相機(jī)或相機(jī)堆棧渲染到渲染目標(biāo)的同一區(qū)域,則Unity會(huì)多次繪制重疊區(qū)域中的每個(gè)像素。最高優(yōu)先級(jí)的基礎(chǔ)相機(jī)或相機(jī)堆棧最后繪制。

你可以使用基礎(chǔ)相機(jī)的輸出目標(biāo)屬性來定義渲染目標(biāo),并使用視口矩形(Viewport Rect)屬性來定義要渲染到的渲染目標(biāo)的區(qū)域。

設(shè)置分屏渲染

pIYBAGAIgm-AVaHfAABe6dUxGTc370.png

在URP中設(shè)置分屏渲染

在場(chǎng)景中創(chuàng)建相機(jī)。其渲染模式默認(rèn)為Base,使其成為Base Camera。

選擇相機(jī)。在Inspector中,滾動(dòng)到Output部分。將Viewport的值更改為以下值:
X:0
Y:0
Width:0.5
Height:1

在場(chǎng)景中創(chuàng)建另一個(gè)相機(jī)。其渲染模式默認(rèn)為Base,使其成為Base Camera。

選擇相機(jī)。在Inspector中,滾動(dòng)到Output部分。將Viewport Rect的值更改為以下值:
X:0.5
Y:0
Width:0.5
Height:1

Unity將第一個(gè)Camera渲染到屏幕的左側(cè),將第二個(gè)Camera渲染到屏幕的右側(cè)。

你可以通過設(shè)置其rect屬性,在腳本中更改相機(jī)的視口矩形,如下所示:

myUniversalAdditionalCameraData.rect = new Rect(0.5f, 0f, 0.5f, 0f);

渲染到RenderTexture

在通用渲染管線(URP)中,相機(jī)可以渲染到屏幕或RenderTexture(渲染紋理)。渲染到屏幕是默認(rèn)設(shè)置,也是最常見的用例,但是渲染到RenderTexture可讓你創(chuàng)建如CCTV相機(jī)監(jiān)視器的效果。

如果你有要渲染為RenderTexture的相機(jī),則必須有第二個(gè)相機(jī),然后再將該RenderTexture渲染到屏幕上。在URP中,所有渲染到RenderTexture的相機(jī)都在所有渲染到屏幕的相機(jī)之前執(zhí)行其渲染循環(huán)。這樣可以確保RenderTexture已準(zhǔn)備好渲染到屏幕上。

渲染到RenderTexture,然后將該RenderTexture渲染到屏幕。

pIYBAGAIgrSARAZTAAA_thZeHBQ900.png

在URP中渲染到RenderTexture

使用Assets > Create > Render Texture在項(xiàng)目中創(chuàng)建Render Texture資產(chǎn)。

在場(chǎng)景中創(chuàng)建一個(gè)Quad。

在你的項(xiàng)目中創(chuàng)建一個(gè)材質(zhì),然后選擇它。在Inspector中,將RenderTexture拖動(dòng)到材質(zhì)的BaseMap字段。

在Scene視圖中,將材質(zhì)拖到Quad上。

在場(chǎng)景中創(chuàng)建相機(jī),其渲染模式默認(rèn)為Base,使其成為Base Camera。

選擇基礎(chǔ)相機(jī)。在Inspector中,滾動(dòng)到Output部分,然后將Render Texture拖到Output Texture字段。

在場(chǎng)景中創(chuàng)建另一個(gè)相機(jī)。它的渲染模式默認(rèn)為Base,使其成為Base Camera,將Quad放置在新Base Camera的視圖內(nèi)。

第一臺(tái)Camera將其視圖渲染到RenderTexture。第二臺(tái)相機(jī)將包括RenderTexture的場(chǎng)景渲染到屏幕上。

你可以通過設(shè)置cameraOutput相機(jī)的UniversalAdditionalCameraData組件的屬性,在腳本中設(shè)置相機(jī)的Output,如下所示:

myUniversalAdditionalCameraData.cameraOutput = CameraOutput.Texture; myCamera.targetTexture = myRenderTexture;

本文轉(zhuǎn)自:Unity官方平臺(tái) ,作者:鄭洪智,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。
審核編輯:何安

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 相機(jī)
    +關(guān)注

    關(guān)注

    4

    文章

    1468

    瀏覽量

    54702
  • Unity
    +關(guān)注

    關(guān)注

    1

    文章

    128

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    相機(jī)模組膠水檢測(cè)

    相機(jī)
    海伯森技術(shù)
    發(fā)布于 :2025年05月19日 15:07:45

    工業(yè)相機(jī)在焊縫跟蹤的關(guān)鍵作用有哪些

    工業(yè)相機(jī)在焊縫跟蹤系統(tǒng),扮演了捕捉、處理與反饋焊縫位置信息的核心角色,通過高速、高分辨率的圖像采集,并結(jié)合智能算法的實(shí)時(shí)圖像處理,成為焊縫跟蹤系統(tǒng)的“眼睛”,能夠在復(fù)雜焊接環(huán)境下實(shí)時(shí)識(shí)別焊縫位置
    的頭像 發(fā)表于 05-13 17:56 ?207次閱讀
    工業(yè)<b class='flag-5'>相機(jī)</b>在焊縫跟蹤<b class='flag-5'>中</b>的關(guān)鍵作用有哪些

    高光譜相機(jī)在農(nóng)業(yè)監(jiān)測(cè)的應(yīng)用

    在現(xiàn)代農(nóng)業(yè),科技的進(jìn)步不斷推動(dòng)著生產(chǎn)方式的變革,其中高光譜成像技術(shù)作為一種新興的監(jiān)測(cè)手段,已經(jīng)開始引起越來越多的關(guān)注。高光譜相機(jī)通過捕捉不同波長的光線,能夠提供植物健康、土壤質(zhì)量、作物生長狀況等
    的頭像 發(fā)表于 04-03 15:44 ?303次閱讀

    達(dá)瑞和帶你了解高光譜相機(jī)和多光譜相機(jī)的區(qū)別以及如何選購

    高光譜相機(jī)和多光譜相機(jī)都是用于捕捉和分析物體光譜信息的成像設(shè)備,但它們?cè)诠庾V分辨率、波段數(shù)量、應(yīng)用場(chǎng)景等方面存在顯著區(qū)別。本篇文章,達(dá)瑞和就帶大家從以上幾點(diǎn)來介紹下。 1、光譜分辨率 高光譜
    的頭像 發(fā)表于 02-07 17:01 ?448次閱讀

    晶振在工業(yè)相機(jī)的應(yīng)用

    在工業(yè)相機(jī)的各個(gè)模塊,晶體振蕩器(晶振)起到提供精確時(shí)鐘信號(hào)的作用,主要用來確保系統(tǒng)的各個(gè)部分能夠同步運(yùn)作,保證信號(hào)的穩(wěn)定和正確處理。不同模塊對(duì)晶振的頻率、精度、溫度穩(wěn)定性等參數(shù)有不同的要求。
    的頭像 發(fā)表于 01-07 19:02 ?1521次閱讀
    晶振在工業(yè)<b class='flag-5'>相機(jī)</b><b class='flag-5'>中</b>的應(yīng)用

    AUTOSAR通信堆棧的配置 AUTOSAR通信模塊測(cè)試方法

    )的開發(fā)和生產(chǎn)。通信堆棧是AUTOSAR架構(gòu)的關(guān)鍵組成部分,負(fù)責(zé)處理ECU之間的通信。 AUTOSAR通信堆棧的配置 通信模型 : AUTOSAR定義了一種分層的通信模型,包括應(yīng)用
    的頭像 發(fā)表于 12-17 15:01 ?995次閱讀

    用高速相機(jī)看世界,揭秘肥皂泡與Marangoni效應(yīng)#高速相機(jī) #深視智能

    相機(jī)
    深視智能科技
    發(fā)布于 :2024年10月15日 17:17:21

    使用Simplelink?無線MCU系列測(cè)量堆棧終端器件功耗

    電子發(fā)燒友網(wǎng)站提供《使用Simplelink?無線MCU系列測(cè)量堆棧終端器件功耗.pdf》資料免費(fèi)下載
    發(fā)表于 09-26 10:44 ?0次下載
    使用Simplelink?無線MCU系列測(cè)量<b class='flag-5'>堆棧</b>終端器件功耗

    C2000?MCU的運(yùn)行時(shí)堆棧大小監(jiān)測(cè)

    電子發(fā)燒友網(wǎng)站提供《C2000?MCU的運(yùn)行時(shí)堆棧大小監(jiān)測(cè).pdf》資料免費(fèi)下載
    發(fā)表于 09-11 09:30 ?0次下載
    C2000?MCU的運(yùn)行時(shí)<b class='flag-5'>堆棧</b>大小監(jiān)測(cè)

    堆棧和內(nèi)存的基本知識(shí)

    本文主要聊聊關(guān)于堆棧的內(nèi)容。包括堆棧和內(nèi)存的基本知識(shí)。常見和堆棧相關(guān)的 bug,如棧溢出,內(nèi)存泄漏,堆內(nèi)存分配失敗等。后面介紹軟件堆棧統(tǒng)計(jì)
    的頭像 發(fā)表于 08-29 14:10 ?1053次閱讀
    <b class='flag-5'>堆棧</b>和內(nèi)存的基本知識(shí)

    銀月光VCSEL激光紅外在熔池監(jiān)控相機(jī)的應(yīng)用

    探討了銀月光VCSEL激光紅外技術(shù)在熔池監(jiān)控相機(jī)的應(yīng)用,為解決傳統(tǒng)監(jiān)控技術(shù)的缺陷提供了一種全新的解決方案。
    的頭像 發(fā)表于 08-05 09:49 ?774次閱讀

    如何使用Polyspace Code Prover來統(tǒng)計(jì)堆棧

    前一篇文章介紹了堆棧和內(nèi)存的一些背景知識(shí)。本次介紹如何使用 Polyspace Code Prover來統(tǒng)計(jì)堆棧,如何使用這些數(shù)據(jù)為軟件優(yōu)化服務(wù)。
    的頭像 發(fā)表于 07-25 14:06 ?1277次閱讀
    如何使用Polyspace Code Prover來統(tǒng)計(jì)<b class='flag-5'>堆棧</b>