クラス VertexBuffer

頂点バッファを表すクラス [詳細]

すべてのメンバ一覧

Public メソッド

 VertexBuffer (int vertexCount, params VertexFormat[] formats)
 頂点バッファを作成する
 VertexBuffer (int vertexCount, int indexCount, params VertexFormat[] formats)
 頂点バッファを作成する (インデックス配列あり)
 VertexBuffer (int vertexCount, int indexCount, int instDivisor, params VertexFormat[] formats)
 頂点バッファを作成する (インデックス配列あり、インスタンス除数あり)
virtual Object ShallowClone ()
 頂点バッファを複製する
void Dispose ()
 頂点バッファのアンマネージドリソースを解放する
void SetVertices (Array vertices)
 頂点データをセットする
void SetVertices (Array vertices, int to, int from, int count)
 頂点データをセットする (範囲あり)
void SetVertices (int stream, Array vertices)
 頂点データをセットする (単一ストリーム用)
void SetVertices (int stream, Array vertices, int to, int from, int count)
 頂点データをセットする (単一ストリーム用、範囲あり)
void SetVertices (int stream, Array vertices, int offset, int stride)
 頂点データをセットする (単一ストリーム用、バイトオフセットあり)
void SetVertices (int stream, Array vertices, VertexFormat format, Vector4 trans, Vector4 scale)
 頂点データをセットする (単一ストリーム用、フォーマット変換あり)
void SetVertices (int stream, Array vertices, VertexFormat format, Vector4 trans, Vector4 scale, int offset, int stride, int to, int from, int count)
 頂点データをセットする (単一ストリーム用、フォーマット変換あり、バイトオフセットあり、範囲あり)
void SetIndices (ushort[] indices)
 インデックスデータをセットする
void SetIndices (ushort[] indices, int to, int from, int count)
 インデックスデータをセットする (範囲あり)

Protected メソッド

 VertexBuffer (VertexBuffer buffer)
 頂点バッファを複製する

プロパティ

VertexFormat[] Formats [get]
 頂点フォーマット
int VertexCount [get]
 頂点数
int IndexCount [get]
 インデックス数
int StreamCount [get]
 ストリーム数
int InstanceDivisor [get]
 インスタンス除数

説明

頂点バッファを表すクラス


コンストラクタとデストラクタ

VertexBuffer ( int  vertexCount,
params VertexFormat[]  formats 
)

頂点バッファを作成する

引数:
vertexCount頂点数 (0ならば頂点配列なし)
formats頂点フォーマット

頂点バッファを作成します。頂点フォーマットには頂点ストリームごとのデータ型を指定してください。

VertexBuffer ( int  vertexCount,
int  indexCount,
params VertexFormat[]  formats 
)

頂点バッファを作成する (インデックス配列あり)

引数:
vertexCount頂点数 (0ならば頂点配列なし)
indexCountインデックス数 (0ならばインデックス配列なし)
formats頂点フォーマット

頂点バッファを作成します。インデックス数を指定することでインデックス配列が使用可能になります。頂点フォーマットには頂点ストリームごとのデータ型を指定してください。

VertexBuffer ( int  vertexCount,
int  indexCount,
int  instDivisor,
params VertexFormat[]  formats 
)

頂点バッファを作成する (インデックス配列あり、インスタンス除数あり)

引数:
vertexCount頂点数 (0ならば頂点配列なし)
indexCountインデックス数 (0ならばインデックス配列なし)
instDivisorインスタンス除数 (0または1)
formats頂点フォーマット

頂点バッファを作成します。インデックス数を指定することでインデックス配列が使用可能になります。頂点フォーマットには頂点ストリームごとのデータ型を指定してください。

インスタンス除数はインスタンス描画に使用されます。詳しくは GraphicsContext.DrawArraysInstanced() を参照してください。

VertexBuffer ( VertexBuffer  buffer) [protected]

頂点バッファを複製する

引数:
buffer頂点バッファ

頂点バッファを複製します。複製された頂点バッファはアンマネージドリソースを共有します。すべての複製に対して Dispose() が呼び出されたとき、共有されたアンマネージドリソースが解放されます。


メソッド

void SetIndices ( ushort[]  indices)

インデックスデータをセットする

引数:
indicesインデックスデータ

インデックスデータをセットします。

このオーバーロードはすべてのインデックスに対してデータをセットします。配列のサイズが必要なサイズと異なる場合は例外をスローします。配列のサイズが必要なサイズより大きい場合は、別のオーバーロードを使用してください。

void SetIndices ( ushort[]  indices,
int  to,
int  from,
int  count 
)

インデックスデータをセットする (範囲あり)

引数:
indicesインデックスデータ
to転送先のインデックス番号
from転送元のインデックス番号
count転送されるインデックス数

インデックスデータをセットします。

void SetVertices ( int  stream,
Array  vertices,
VertexFormat  format,
Vector4  trans,
Vector4  scale 
)

頂点データをセットする (単一ストリーム用、フォーマット変換あり)

引数:
streamストリーム番号 (0~StreamCount-1)
vertices頂点データ
format頂点フォーマット
transトランスレーション値
scaleスケール値

指定されたストリームに頂点データをセットします。頂点フォーマットには、頂点バッファと同じフォーマットまたは同じ次元数のfloatベクトルフォーマットを指定できます。頂点フォーマットにfloatベクトルフォーマットを指定した場合は、頂点データを(vertex-trans)/scaleの計算式で変換することができます。

void SetVertices ( Array  vertices,
int  to,
int  from,
int  count 
)

頂点データをセットする (範囲あり)

引数:
vertices頂点データ
to転送先の頂点番号
from転送元の頂点番号
count転送される頂点数

頂点データをセットします。頂点データはインターリーブ形式で指定してください。

void SetVertices ( int  stream,
Array  vertices,
int  to,
int  from,
int  count 
)

頂点データをセットする (単一ストリーム用、範囲あり)

引数:
streamストリーム番号 (0~StreamCount-1)
vertices頂点データ
to転送先の頂点番号
from転送元の頂点番号
count転送される頂点数

指定されたストリームに頂点データをセットします。

void SetVertices ( int  stream,
Array  vertices 
)

頂点データをセットする (単一ストリーム用)

引数:
streamストリーム番号 (0~StreamCount-1)
vertices頂点データ

指定されたストリームに頂点データをセットします。

このオーバーロードはすべての頂点に対してデータをセットします。配列のサイズが必要なサイズと異なる場合は例外をスローします。配列のサイズが必要なサイズより大きい場合は、別のオーバーロードを使用してください。

void SetVertices ( Array  vertices)

頂点データをセットする

引数:
vertices頂点データ

頂点データをセットします。頂点データはインターリーブ形式で指定してください。

このオーバーロードはすべての頂点にデータをセットします。配列のサイズが必要なサイズと異なる場合は例外をスローします。配列のサイズが必要なサイズより大きい場合は、別のオーバーロードを使用してください。

void SetVertices ( int  stream,
Array  vertices,
int  offset,
int  stride 
)

頂点データをセットする (単一ストリーム用、バイトオフセットあり)

引数:
streamストリーム番号 (0~StreamCount-1)
vertices頂点データ
offset頂点データのバイトオフセット
stride頂点データのバイトストライド

指定されたストリームに頂点データをセットします。

void SetVertices ( int  stream,
Array  vertices,
VertexFormat  format,
Vector4  trans,
Vector4  scale,
int  offset,
int  stride,
int  to,
int  from,
int  count 
)

頂点データをセットする (単一ストリーム用、フォーマット変換あり、バイトオフセットあり、範囲あり)

引数:
streamストリーム番号 (0~StreamCount-1)
vertices頂点データ
format頂点フォーマット
transトランスレーション値
scaleスケール値
offset頂点データのバイトオフセット
stride頂点データのバイトストライド
to転送先の頂点番号
from転送元の頂点番号
count転送される頂点数

指定されたストリームに頂点データをセットします。頂点フォーマットには、頂点バッファと同じフォーマットまたは同じ次元数のfloatベクトルフォーマットを指定できます。頂点フォーマットにfloatベクトルフォーマットを指定した場合は、頂点データを(vertex-trans)/scaleの計算式で変換することができます。

virtual Object ShallowClone ( ) [virtual]

頂点バッファを複製する

戻り値:
頂点バッファの複製

頂点バッファを複製します。複製された頂点バッファはアンマネージドリソースを共有します。すべての複製に対して Dispose() が呼び出されたとき、共有されたアンマネージドリソースが解放されます。