紋理的光線對應

光線對應為單一紋理或一組紋理,當中包含 3D 場景內與照明相關的資訊。 光線對應會將光線和陰影對應至原始物件上。 Multipass 和多重紋理混合可讓應用程式使用比著色器更逼真的外觀來轉譯場景。

若要讓應用程式能栩栩如生地轉譯 3D 場景,就必須將光源對場景外觀產生的效果納入考量。 雖然平面和 Gouraud 著色等技術,皆為此一領域中價值別具的工具,但兩者可能難以滿足您的需求。 Direct3D 可支援 Multipass 和多重紋理混合。 這些功能可讓應用程式透過比單獨使用著色技術更逼真的外觀來轉譯場景。 只要套用一個或多個光線對應,應用程式就能將光線和陰影區域對應至其原始物件。

光線對應為單一紋理或一組紋理,當中包含 3D 場景內與照明相關的資訊。 您可以將光線資訊儲存在光線對應的 Alpha 值、色彩值或兩者當中。

如果使用 Multipass 紋理混合實作光線對應,應用程式應該會在第一次傳遞時,將光線對應轉譯至其原始物件。 它應該會使用第二次傳遞來轉譯基底紋理。 反射光線對應則不在上述情況之限。 反射光線對應會先轉譯基底紋理;再新增光線對應。

多重紋理混合可讓應用程式只需透過一次傳遞,就能轉譯光線對應和基底紋理。 如果使用者的硬體提供多重紋理混合,應用程式就應再執行光線對應時,善加利用這項功能。 這可大幅提升應用程式的效能。

使用光線對應,Direct3D 應用程式就能在轉譯原始物件時,營造各式各樣的光線效果。 它不僅可對應場景中的單色和彩色光線,還能新增反射亮部和擴散光源等細節。

下方主題將說明使用 Direct3D 紋理混合執行光線對應的相關資訊。

本節內容

主題 說明

單色光線對應

當舊版 3D 加速器介面卡不支援使用目標像素的 Alpha 值進行紋理混合時,單色光線對應可讓舊版介面卡執行 Multipass 紋理混合。

彩色光線對應

彩色光線對應會使用光線對應中的 RGB 資料做為其光線資訊。 應用程式若使用彩色光線對應,通常可更逼真地轉譯 3D 場景。

反射光線對應

由光源照亮時,使用高反射材質的閃亮物件就會接收反射光線。 有時,您可以將反射光線對應套用至原始物件 (而非使用光線模組產生的反射亮部),藉此取得更準確的亮部。

擴散光源對應

黯淡表面可產生擴散光源反射效果。 擴散光源的亮度會視光源距離,以及曲面法線和光源方向向量之間的角度而定。 紋理光線對應可模擬擴散光源。

 

紋理