2011-10-05 66 views
1

我目前正試圖在DirectX10中實現一個天穹,但我遇到了實際問題,試圖在網上找到一個很好的教程,以瞭解如何去做這件事。我甚至瀏覽了搜索功能中尋找「DirectX10 skydomes」的所有四頁結果。DirectX10 Skydomes

有沒有人在這裏知道任何好的網站/書籍/教程等,可以幫助我在創造一個半體面的外觀天幕的生產?

+0

空中包廂在大多數情況下更好,有沒有你需要的穹頂理由嗎? – Hannesh

+0

我不知道如何在DirectX10中做。我所知道的是圓頂更容易一些,因爲你不必擔心紋理排列等問題,就像使用盒子一樣。 我很樂意找到兩種方法。 –

回答

2

適用於DirectX,Ogre3D和可能還有Scenix的SDK包括帶Sky-boxes和Sky-dome的演示。從概念上講,它們都非常簡單(使用一個大面向內的半球或盒子,並用相機(眼睛)位置移動模型,以便永遠不會相對於它移動)。快速谷歌在Ogre3D維基上發佈了一個教程,詳細介紹了概念http://ogre3d.org/tikiwiki/tiki-index.php?page=Basic+Tutorial+3#Sky 基本上這些步驟是:1.創建一個大的半球模型(翻轉法線使其面朝內)。 2.將「魚眼」天空紋理映射到它3.使用非着色着色器在DirectX中加載並渲染它(以便不應用陰影......僅用於天空紋理)。

+2

答案中未提及的一個非常重要的部分是在渲染天空時禁用深度測試(或寫入)。您需要它都顯示在所有其他幾何體後面(因爲它無限遠,這是通過先渲染來解決的),而不是阻止繪製其他幾何體(禁止寫入深度)。 – ssube

相關問題