SparseTexture

class in UnityEngine

/

継承:Texture

マニュアルに切り替える

説明

スパーステクスチャを処理するためのクラス

スパーステクスチャは全テクスチャデータが一度にメモリに存在するのではないテクスチャです。これらは一般的に"タイル状のテクスチャ"や"メガテクスチャと呼ばれています。

ピクセルあたり 32 ビットで 16384x16384 のテクスチャを想像してみよう - それは 1GB のメモリを取るでしょう。テクスチャは長方形の"タイルに分割され、各タイルはメモリ内か外のいずれかに存在することができます。カメラからの距離、プレイヤーが見えている世界での活動範囲などに基づいて、必要に応じてこれらのタイルをロードとアンロードすることができます。

それ以外では、スパーステクスチャはシェーダー内の他のテクスチャと同じように扱えます - ミップマップを持たせる、テクスチャフィルタリングモードを使う、等々。存在しないタイルを読み取るようなことが起きた場合は、未定義の結果を得ることになります(多くの GPU 上では黒色になりますが、必ずそうなるとは限りません)。

すべてのハードウェアとプラットホームでスパーステクスチャがサポートされている訳ではないので、使用する前に SystemInfo.supportsSparseTextures をチェックしてください。例えば、 DirectX では、 DX11.2 (Windows 8.1) と、それなりに新しい GPU が必要になります。 OpenGL では、 ARB_sparse_texture エクステンションサポートが必要です。

スパーステクスチャを作成した後、 tileWidthtileHeight のタイルサイズを照会します。タイルサイズはプラットフォームと GPU に依存します。

タイルをメモリに常駐し、その色のデータを更新するために UpdateTileUpdateTileRaw を使用します。タイルをアンロードするために UnloadTile を使用します。

See Also: Sparse Textures documentation page.

変数

isCreatedスパーステクスチャを実際に作成するか。(Read Only)
tileHeightスパーステクスチャタイルの高さを取得します。(Read Only)
tileWidthスパーステクスチャタイルの幅を取得します。(Read Only)

コンストラクタ

SparseTextureスパーステクスチャを作成する。

Public 関数

UnloadTileスパーステクスチャファイルをアンロードします。
UpdateTileカラー値を持つスパーステクスチャのタイルを更新します。
UpdateTileRawRAW のピクセル値でスパーステクスチャファイルを更新します。

継承メンバー

変数

hideFlagsオブジェクトは非表示、シーンに保存、ユーザーが編集可能、などを設定する。
nameオブジェクト名
anisoLevelテクスチャの異方性フィルタリングのレベル
dimensionテクスチャの次元 (タイプ)。読み取り専用。
filterModeテクスチャのフィルタリングモード
heightピクセル単位でのテクスチャの高さ(読み取り専用)
imageContentsHashThe hash value of the Texture.
mipMapBiasミップマップのバイアス
updateCountThis counter is incremented when the texture is updated.
widthピクセル単位でのテクスチャの幅(読み取り専用)
wrapModeTexture coordinate wrapping mode.
wrapModeUTexture U coordinate wrapping mode.
wrapModeVTexture V coordinate wrapping mode.
wrapModeWTexture W coordinate wrapping mode for Texture3D.

Public 関数

GetInstanceIDオブジェクトのインスタンス ID を返します
ToStringReturns the name of the GameObject.
GetNativeTexturePtrテクスチャリソースへのネイティブ (グラフィックス API に内在する) ポインターを取得します。
IncrementUpdateCountIncrement the update counter.

Static 関数

Destroyゲームオブジェクトやコンポーネント、アセットを削除します
DestroyImmediateDestroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoad新しいシーンを読み込んでもオブジェクトが自動で破壊されないように設定します
FindObjectOfTypeタイプ type から最初に見つけたアクティブのオブジェクトを返します
FindObjectsOfTypeタイプから見つけたすべてのアクティブのオブジェクト配列を返します
Instantiateoriginal のオブジェクトをクローンします
SetGlobalAnisotropicFilteringLimits異方性のリミットを設定します

Operator

boolオブジェクトが存在するかどうか
operator !=二つのオブジェクトが異なるオブジェクトを参照しているか比較します
operator ==2つのオブジェクト参照が同じオブジェクトを参照しているか比較します。