国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Unity-randertexture

2022-12-27 19:23 作者:Lucas_dudu  | 我要投稿

用途:

在當(dāng)前畫(huà)面基礎(chǔ)上再次渲染

什么是RenderTexture?

RenderTexture是unity定義的一種特殊的Texture類型,它連接著一個(gè)FrameBufferObject的存在于GPU端的Texture(Server-Side Texture)從上面對(duì)RenderTexture的解釋我們了解到要先知道Texture和FrameBufferObject是什么

什么是Texture?

中文翻譯叫紋理,先說(shuō)一下一個(gè)紋理是如何被渲染到屏幕上的 ,起初紋理存在硬盤(pán)(RAM)里,它被cpu解壓縮,如果想要顯示它,那么數(shù)據(jù)將會(huì)被發(fā)送給(上傳到,cpu和gpu之間的通信可以理解成client和server之間的通信)GPU,gpu將它放在顯存(VARM)中,顯存中有一塊內(nèi)存區(qū)域叫做RenderBuffer(渲染緩存),RenderBuffer只是數(shù)據(jù)緩存,它還不能用作Texture渲染,盡管它現(xiàn)在已經(jīng)是一個(gè)texture了,在這里 texture等待著被渲染,當(dāng)要渲染這個(gè)Texture時(shí),會(huì)生成一FrameBuffer(幀緩存),當(dāng)這個(gè)幀緩存被添加到默認(rèn)的幀緩存物體上(FrameBufferObject)時(shí),它就會(huì)被繪制到屏幕上.FrameBuffer指向的是顯存中RenderBuffer的地址,簡(jiǎn)單的說(shuō),RenderBuffer需要附加在FrameBuffer上,它才能是五顏六色的圖片,否則它只是顯存上的一堆數(shù)據(jù),關(guān)于RenderBuffer和FrameBuffer可以看這些文章:

Linux OpenGL 實(shí)踐篇-10-framebuffer - 北冥有魚(yú)其名為鯤 - 博客園

https://www.cnblogs.com/xin-lover/p/8977307.html

OpenGL ES學(xué)習(xí)之路(3.1) 著色器渲染過(guò)程、渲染方式、FrameBuffer與RenderBuffer - 簡(jiǎn)書(shū)

https://www.jianshu.com/p/dbba97339e75?tdsourcetag=s_pctim_aiomsg

什么是FrameBufferObject?

? ? ? ? 可以理解FrameBufferObject是一個(gè)集合,集合了FrameBuffer,通過(guò)快速刷新Framebuffer實(shí)現(xiàn)動(dòng)態(tài)效果,最典型的FBO就是Unity的Main Camera,它是默認(rèn)的FBO,是gpu里渲染結(jié)果的目的地.但是現(xiàn)代gpu通??梢詣?chuàng)建很多其他的FBO(Unity中可以創(chuàng)建多個(gè)Camera),這些FBO不連接窗口區(qū)域,這種我們創(chuàng)建的FBO的存在目的就是允許我們將渲染結(jié)果保存在gpu的一塊存儲(chǔ)區(qū)域,待之后使用,這種用法叫做離屏渲染,這是一個(gè)非常有用的東西。Camera 輸出的FBO,可以嵌在另一個(gè)FBO中,Unity中使用RenderTexture來(lái)接收FBO(可視化FBO),game窗口就是一個(gè)RenderTexture,當(dāng)Camera的RenderTarget設(shè)置為null時(shí)表示輸出到game窗口(沒(méi)有攝像機(jī)的RenderTaget為null會(huì)顯示沒(méi)有攝像機(jī)進(jìn)行渲染),設(shè)置不為null表示輸出到某個(gè)RT.


OK 理解了上面的原理咱們來(lái)制作一下

  • 首先創(chuàng)建資源 randertexture

創(chuàng)建rendertexture
  • 在新的場(chǎng)景中創(chuàng)建一個(gè)camera;

  • 把要渲染物體單獨(dú)創(chuàng)建一個(gè)layer;

  • 這里已effect為例

創(chuàng)建層級(jí)effect
  • camera的渲染圖層改為effect,Background Type 改為solid color,底色改為黑色,一般半透明為0.

  • 創(chuàng)建UI層canvas,并創(chuàng)建image,然后把前面創(chuàng)建的randertexture拖入texture中

  • 如果對(duì)渲染疊加有要求可以新建材質(zhì)球,effectrender,來(lái)控制他的渲染疊加方式。


  • 運(yùn)行unity就會(huì)看到你要單獨(dú)渲染的物體已經(jīng)出現(xiàn)在畫(huà)面中。


Unity-randertexture的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
巫溪县| 庄河市| 余姚市| 洞口县| 华安县| 垫江县| 保康县| 蒙城县| 衡山县| 上杭县| 松滋市| 绍兴县| 孟州市| 卓资县| 平利县| 登封市| 灯塔市| 温泉县| 库尔勒市| 罗定市| 龙游县| 淮南市| 赣榆县| 讷河市| 太谷县| 荥经县| 海安县| 五河县| 南皮县| 宜都市| 恩施市| 达日县| 安图县| 彭水| 上饶市| 苏尼特右旗| 乐安县| 濉溪县| 马公市| 江阴市| 宽城|