朱峰社區(qū)首頁(yè) 朱峰社區(qū)

搜索資源 注冊(cè)|登陸

等待

返回 展開(kāi)菜單

XSI中抗鋸齒和適應(yīng)采樣優(yōu)化教程

Unity3D游戲制作教程 觀看預(yù)覽

Unity3D游戲制作教程

包含5節(jié)視頻教程
關(guān)注8.2萬(wàn)

本系列包含Unity3D介紹、Unity3D導(dǎo)出人物、Unity3D導(dǎo)出場(chǎng)景、Unity3D導(dǎo)出動(dòng)作、游戲測(cè)試最終完成一個(gè)簡(jiǎn)單的游戲。是一套非常完整的Unity3D游戲制作教程。

關(guān)閉

朱峰社區(qū)老師表示在談?wù)摽逛忼X和能適應(yīng)的采樣之前, 希望解釋為什么發(fā)明抗鋸齒和as,并且描述他們用來(lái)解決的問(wèn)題。

問(wèn)題是什么是鋸齒呢? 經(jīng)常使用數(shù)字音頻的模擬波形來(lái)解釋鋸齒。轉(zhuǎn)換過(guò)程很簡(jiǎn)單:采樣引擎把聲波轉(zhuǎn)換成數(shù)字流。

看圖:

第一個(gè)圖是模擬聲波的外型。

第二個(gè)圖對(duì)原始樣本驚醒兩次采樣的外型,可以看到,重建的信號(hào)波形和原始波形相差甚遠(yuǎn),當(dāng)采樣密度增加到4的時(shí)候,出現(xiàn)了相當(dāng)不錯(cuò)的波形。

這個(gè)過(guò)程和渲染圖象非常相似,唯一的不同是維度:聲音是空間的(隨時(shí)變化),圖象是二維的(變化在xy坐標(biāo))。

渲染一個(gè)場(chǎng)景的時(shí)候,攝像機(jī)的虛擬膠片被曝光,這里叫做“幀緩沖器”。攝像機(jī)分類(lèi)filmback上的像素,并且用顏色填充每個(gè)象素點(diǎn)。這個(gè)過(guò)程叫做渲染。

用戶(hù)可以控制多少像素被顏色填充。沒(méi)有得到顏色的其他像素,就簡(jiǎn)單的通過(guò)內(nèi)插值算法接受相鄰的像素的顏色。

用兩個(gè)參數(shù)控制這個(gè)過(guò)程,叫做anti-aliasing min和max。anti-aliasing min控制像素被分解成子像素的最小次數(shù),anti-aliasing max控制像素被分解成子像素的最大次數(shù)。

看看上邊的圖片,代表不同的抗鋸齒級(jí)別。在每一個(gè)例子中,每個(gè)白色正方形是幀緩沖器中的一個(gè)像素。

第一個(gè)圖像設(shè)置抗鋸齒min = –2和max = -2。這意味著渲染器對(duì)每16個(gè)像素發(fā)送一次采樣,就像你看到的,他將跳過(guò)15個(gè)像素,很明顯,跳過(guò)了這么多的象素,渲染的速度自然就非?,但是產(chǎn)生的是一個(gè)非常差勁的結(jié)果。

第二個(gè)圖像設(shè)置抗鋸齒min = –1和max = -1,這樣渲染器對(duì)每4個(gè)像素發(fā)送一次采樣。

第二個(gè)圖像設(shè)置抗鋸齒min =0和max = 0. 這意味著對(duì)每個(gè)像素都發(fā)送一次采樣。

這里應(yīng)該提到,每個(gè)采樣都在像素的一角而不是在像素的中央,這是可能的,在每一個(gè)像素中包含更多的細(xì)節(jié)要被采樣。

前三個(gè)例子抗鋸齒值從負(fù)數(shù)到0,所有的渲染圖像都有鋸齒,這叫做infrasampling。要想消除鋸齒,就要對(duì)每個(gè)像素發(fā)送額外的采樣。

當(dāng)設(shè)置anti-aliasing min和/或者max大于0,就是告所渲染器使用“superssampling”。使用anti-aliasing min和max值1, 意味著把每個(gè)像素分解成4個(gè)子像素。

使用anti-aliasing min和max值2, 意味著把每個(gè)像素分解成16個(gè)子像素。值為3的時(shí)候意味著把一個(gè)像素分解成64個(gè)子像素。

注意,值每增加1子像素的數(shù)量就大量增加,3已經(jīng)是非常高的質(zhì)量了,超過(guò)3的值應(yīng)該盡量少的使用。

有一個(gè)建議,這個(gè)圖表顯示here is a graph that shows the number of samples taken when you render using different anti-aliasing settings and different resolutions.

例如,如果你使用ntsc渲染一個(gè)圖像,設(shè)置aa為 0,采樣次數(shù)非常的小。但是如果渲染4k圖像,aa設(shè)置為2,你將看到大約2.5億次采樣。。

增加aa設(shè)置可以“劇烈”的增加渲染時(shí)間。。。。。。。。。

在調(diào)節(jié)aa參數(shù)之前應(yīng)該先調(diào)整其他的參數(shù)。

增加aa值應(yīng)該是在最后調(diào)整圖像不足的。

現(xiàn)在解釋適應(yīng)采樣是如何改善渲染時(shí)間的。

xsi渲染允許用戶(hù)指定一個(gè)控制級(jí)別用來(lái)在渲染期間測(cè)定是否需要更多的采樣。這個(gè)技術(shù)叫做適應(yīng)采樣。

當(dāng)設(shè)置anti-aliasing min和max為相同的值時(shí),適應(yīng)采樣是不起作用的,用一個(gè)固定的采樣值進(jìn)行渲染,這可以產(chǎn)生真實(shí)完美的圖像,但是這卻要用相當(dāng)多的渲染時(shí)間。

下面舉例說(shuō)明適應(yīng)采樣時(shí)如何節(jié)省寶貴的渲染時(shí)間的。

#1 – 4個(gè)像素沒(méi)有采樣

這個(gè)例子闡述概念,用4個(gè)像素覆蓋一個(gè)幾何形?逛忼X設(shè)置為min=0和max=3。適應(yīng)采樣需要各參數(shù)叫做contrast,它是一個(gè)rgba值。contrast用來(lái)決定什么時(shí)候象素要被分裂到子像素,子像素什么時(shí)候需要進(jìn)一步分裂。

看看他是怎么工作的:首先渲染器將在每個(gè)像素的左上角計(jì)算一次采樣。

#2 – 采樣抗鋸齒 0

這個(gè)圖中的抗鋸齒級(jí)為0。渲染器將比較每個(gè)采樣結(jié)果來(lái)測(cè)定和anti-aliasing contrast的差別。如果比contrast大,就需要更多的采樣,像素也需要細(xì)分。在細(xì)分像素或者子像素之前,渲染器測(cè)定當(dāng)前的抗鋸齒級(jí)別是否等于或者大于抗鋸齒最大值,這個(gè)時(shí)候,對(duì)像素的再次細(xì)分就是必須的了。

#3 - subdiv > level1

像素被分裂成4個(gè)子像素?逛忼X級(jí)別是1。

#4 - sample level 1

然后渲染器采樣每個(gè)新的子像素,渲染器比較采樣,測(cè)定一些子像素海需要再次細(xì)分。

#5 - subdiv > level2

抗鋸齒級(jí)別現(xiàn)在是2。

#6 - sample level 2

同樣的,渲染器再次采樣,然后比較是否還有像素需要再次細(xì)分。

#7 - subdiv > level 3

渲染器應(yīng)用細(xì)分……

#8 - sample level 3

...繼續(xù)采樣新的子像素。然后停止遞歸,因?yàn)樗竭_(dá)了用戶(hù)設(shè)定anti-aliasing的最大值。

#9 >

因?yàn)檫m應(yīng)適應(yīng)采樣,渲染器只需要19次采樣,而沒(méi)有適應(yīng)采樣的將使用64次采樣。使用適應(yīng)采樣減少了66%的采樣數(shù)量而渲染質(zhì)量很好。

這里有一些調(diào)節(jié)抗鋸齒的訣竅:

增加抗鋸齒之前,強(qiáng)烈建議降低aa閥值直到產(chǎn)生預(yù)期的效果。

如果結(jié)果不滿意,修改aa過(guò)濾器為更好的,比如triangle或者mitchell。

1) 過(guò)濾圖像為了消除渲染結(jié)果中的鋸齒。

2) 產(chǎn)生平滑的圖像,有些過(guò)濾器可以根據(jù)設(shè)置模糊圖像。

3) 消除抗鋸齒造成圖像看起來(lái)像cg。

4) 過(guò)濾值采用浮點(diǎn)值,因此可以接受小數(shù)點(diǎn),比如1.23。

5) 5個(gè)可用的過(guò)濾模式。

點(diǎn)擊查看朱峰社區(qū)圖片

什么是過(guò)濾?

過(guò)濾是一個(gè)允許渲染器衡量profile/falloff curve that allows the renderer to weight the contribution of each sample taken to create one pixel.

圖中顯示了xsi中可以用到的過(guò)濾剖面。我們從速度最快的過(guò)濾到效果最好的過(guò)濾開(kāi)始介紹。

box:

所有的采樣都有同樣的weight。

他是非?焖俚,但是往往產(chǎn)生的都是模糊的圖像,而且會(huì)失去圖像的細(xì)節(jié)。

除非需要渲染出模糊的圖像,否則不推薦使用它。

triangle:

使用線性falloff,所以在攝像機(jī)附近的采樣部遠(yuǎn)離攝像機(jī)的影響大。增加過(guò)濾值可以產(chǎn)生銳利的圖像。

gauss:

這是一個(gè)曲線falloff,可以產(chǎn)生非常平滑柔軟的采樣,如果過(guò)濾的值設(shè)置的太高,會(huì)產(chǎn)生更模糊的效果。

lanczos:

提供一個(gè)比triangle、box和gauss更好的過(guò)濾。

lanczos比mitchell和triangle過(guò)濾的結(jié)果更銳利。

mitchell:

這是最好的過(guò)濾。

他不模糊圖像而且追求細(xì)節(jié)。

朱峰社區(qū)三維動(dòng)畫(huà)出爐 朱峰社區(qū)三維動(dòng)畫(huà)出爐

朱峰社區(qū)網(wǎng)頁(yè)版
朱峰社區(qū)網(wǎng)頁(yè)版(手機(jī)掃描-分享-添加到屏幕)


朱峰社區(qū)公眾號(hào)
朱峰社區(qū)微信公眾號(hào)(微信掃一掃-關(guān)注)

資源說(shuō)明圖文教程無(wú)法下載,只能觀看圖片和文字。
版權(quán)規(guī)則本站圖文皆來(lái)自互聯(lián)網(wǎng)共享資源,如涉及到版權(quán)請(qǐng)查看版權(quán)規(guī)則。本平臺(tái)提供圖文僅可用于個(gè)人學(xué)習(xí),如用于商業(yè)請(qǐng)購(gòu)買(mǎi)正版。您必須遵守的版權(quán)規(guī)則

未知用戶(hù)

未知用戶(hù)

2005-2025 朱峰社區(qū) 版權(quán)所有 遼ICP備2021001865號(hào)-1
2005-2025 ZhuFeng Community All Rights Reserved

VIP

朱峰社區(qū)微信公眾號(hào)

回頂部

1.復(fù)制文本發(fā)給您的QQ好友或群、微信等;好友點(diǎn)擊鏈接以后,轉(zhuǎn)發(fā)就成功了。 2.如朋友點(diǎn)擊您的鏈接,您需要需刷新一下才行;同一個(gè)好友僅能點(diǎn)擊一次。
購(gòu)買(mǎi)VIP,觀看所有收費(fèi)教程!!