Unity-稀疏紋理
稀疏紋理 (Sparse Textures)(也稱為“區(qū)塊紋理”或“超級(jí)紋理”)是太大而無(wú)法完全存入顯存的紋理。為了處理它們,Unity 將主紋理分解為更小的矩形部分,稱為“區(qū)塊”(tile)。然后,可根據(jù)需要加載各個(gè)區(qū)塊。例如,如果攝像機(jī)只能看到稀疏紋理的一小塊區(qū)域,那么只有當(dāng)前可見的區(qū)塊需要加載到內(nèi)存中。
除了區(qū)塊特性之外,稀疏紋理的行為與目前所用的任何其他紋理相似。無(wú)需進(jìn)行特殊修改,著色器即可使用它們,而且它們可以有 Mipmap,使用所有紋理過(guò)濾模式等。如果由于某種原因無(wú)法加載特定的區(qū)塊,則結(jié)果是不明的:有些 GPU 在缺少區(qū)塊的位置顯示黑色區(qū)域,但此行為未標(biāo)準(zhǔn)化。
并非所有硬件和平臺(tái)都支持稀疏紋理。例如,在 DirectX 系統(tǒng)上,它們需要?DX11.2?(Windows 8.1) 以及相當(dāng)新的 GPU。在 OpenGL 上,它們需要?ARB_sparse_texture?擴(kuò)展支持。稀疏紋理僅支持非壓縮紋理格式。
請(qǐng)參閱?SparseTexture?腳本參考頁(yè)面,了解有關(guān)使用腳本處理稀疏紋理的更多詳細(xì)信息。
示例項(xiàng)目
此處提供了稀疏紋理的一個(gè)最小示例項(xiàng)目。

該示例顯示了一個(gè)簡(jiǎn)單的程序化紋理圖案,允許您移動(dòng)攝像機(jī)以查看它的不同部分。請(qǐng)注意,該項(xiàng)目需要最新的 GPU 和 DirectX 11.2 (Windows 8.1) 系統(tǒng),或者使用支持?ARB_sparse_texture?的 OpenGL。
url:https://docs.unity.cn/cn/2019.4/uploads/Examples/SparseTextureExample.zip