2014-07-18 41 views
0

我在XNA中創建了實時場景,它僅使用精靈2D(在四邊形上呈現,在精靈上具有Alpha映射的標準Spritebatch)。我想創建簡單的鏡頭光暈,實際上只有光源的周圍(我不需要方向到相機的中心偏移鏡頭光暈的多個精靈等)。我基本需要的只是計算多少像素渲染光源精靈(小星星),並根據它設置透鏡耀斑精靈的比例(如果精靈沒有來自相關精靈的可見像素,則比例爲0)。2D XNA 4.0場景中的鏡頭光暈

我知道該怎麼做,在3D,我通過這個閱讀並測試了幾件事情: http://my.safaribooksonline.com/book/programming/game-programming/9781849691987/1dot-applying-special-effects/id286698039

我想問一下什麼是最好的,做的2D場景最廉價的方式(計算多少像素的精靈被呈現/遮蔽每像素精度或類似的東西)。

我也知道模板緩衝區可以幫助,但我不知道如何在這種情況下應用。

回答

0

好的,有兩種方法可以解決這個問題,無論是老式的方法,使用模板來計算被遮擋像素的數量,並根據它來縮放鏡頭光暈的精靈。 (我建議使用HDR渲染流水線,並使用1.0以上的亮度值來生成鏡頭閃光,但它取決於場景的平均值和最大值),並生成重影,像這樣:

https://www.youtube.com/watch?v=_A0nKfzbs80&list=UUywPlxpmCZtuqOs6_bZEG9A