コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
最近の更新
未作成ページ
おまかせ表示
ヘルプ
MonoBook
検索
検索
ログイン
個人用ツール
ログイン
ログアウトした編集者のページ
もっと詳しく
投稿記録
トーク
「
MonoGame/クラスライブラリ/VertexBufferクラス
」を編集中
ページ
議論
日本語
閲覧
編集
ソースを編集
履歴表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
編集
ソースを編集
履歴表示
全般
リンク元
関連ページの更新状況
特別ページ
ページ情報
2017年11月7日 (火) 01:52時点における
imported>Administrator
による版
(ページの作成:「VertexBufferクラスは、ポリゴンを表示するのに使う頂点のリストである。
MonoGame
では頂点構造体を単純な
配列
で保持して...」)
(差分) ← 古い版 |
最新版
(
差分
) |
新しい版 →
(
差分
)
警告: このページの古い版を編集しています。
公開すると、この版以降になされた変更がすべて失われます。
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
VertexBufferクラスは、ポリゴンを表示するのに使う頂点のリストである。 [[MonoGame]]では頂点構造体を単純な[[配列]]で保持しておいてもDrawUserPrimitevesメソッドで描画できるが、VertexBufferクラスを使っておくと[[頂点バッファ]]を[[メインメモリ]]から[[VRAM]]へ事前に転送しておけるので高速化が見込める。 [[C Sharp|C#]]でゴリゴリと頂点データを加工したい場合は[[メインメモリ]]と[[VRAM]]を行ったり来たりが相当な無駄になるのであまり向いていない。 逆にほとんどのケースが該当する「頂点データを決めたら破棄するまで変形させないもの」には使ったほうがよいとされている。 また、C#ではなく[[HLSL]]の[[頂点シェーダー]]で[[頂点バッファ]]の加工を行う場合は必須となる。 ちなみに一部のOpenGL系プラットフォームでは一度格納すると二度と取り出せない(GetDataできない)ものも存在している。 3Dモデルの頂点データを入れて頂点シェーダーで当たり判定の範囲を動的に生成しGetDataで取得していたものが動かなくて悲しくなった。 == 継承 == * System.Object ** Microsoft.Xna.Framework.Graphics.GraphicsResource *** Microsoft.Xna.Framework.Graphics.VertexBuffer **** Microsoft.Xna.Framework.Graphics.DynamicVertexBuffer == 名前空間 == * [[MonoGame/クラスライブラリ/Microsoft.Xna.Framework.Graphics名前空間|Microsoft.Xna.Framework.Graphics名前空間]] == 構文 == public class VertexBuffer : GraphicsResource == コンストラクタ == {| class="wikitable" |+ ! ! 名称 ! 概要 |- | protected ! style="white-space:nowrap;text-align:left" | VertexBuffer(GraphicsDevice, VertexDeclaration, int, BufferUsage, bool) | |- | public ! style="white-space:nowrap;text-align:left" | VertexBuffer(GraphicsDevice, VertexDeclaration, int, BufferUsage) | |- | public ! style="white-space:nowrap;text-align:left" | VertexBuffer(GraphicsDevice, Type, int, BufferUsage) | |} == プロパティ == {| class="wikitable" |+ ! ! 名称 ! 概要 |- | public ! style="white-space:nowrap;text-align:left" | BufferUsage | |- | public ! style="white-space:nowrap;text-align:left" | GraphicsDevice | (GameResourceクラスから継承) |- | public ! style="white-space:nowrap;text-align:left" | IsDisposed | (GameResourceクラスから継承) |- | public ! style="white-space:nowrap;text-align:left" | Name | (GameResourceクラスから継承) |- | public ! style="white-space:nowrap;text-align:left" | Tag | (GameResourceクラスから継承) |- | public ! style="white-space:nowrap;text-align:left" | VertexCount | |- | public ! style="white-space:nowrap;text-align:left" | VertexDeclaration | |} == メソッド == {| class="wikitable" |+ ! ! 名称 ! 概要 |- | public ! style="white-space:nowrap;text-align:left" | Dispose(bool) | 派生クラスを作る場合は自前管理のリソースの破棄を実装する必要がある。 |- | protected ! style="white-space:nowrap;text-align:left" | Dispose() | (GameResourceクラスから継承) |- | protected ! style="white-space:nowrap;text-align:left" | Finalize | (GameResourceクラスから継承) |- | public ! style="white-space:nowrap;text-align:left" | GetData<T>(int, T[], int, int, int) | この頂点バッファから頂点データを取得する。 |- | public ! style="white-space:nowrap;text-align:left" | GetData<T>(T[], int, int) | |- | public ! style="white-space:nowrap;text-align:left" | GetData<T>(T[]) | |- | protected internal ! style="white-space:nowrap;text-align:left" | GraphicsDeviceResetting | GraphicsDeviceがリセットされGPU上のリソースを再作成する必要があるときに呼ばれる。 |- | public ! style="white-space:nowrap;text-align:left" | SetData<T>(int, T[], int, int, int) | この頂点バッファに頂点データを設定する。大雑把に言えば頂点データの配列をメインメモリからVRAMにコピーする。 |- | public ! style="white-space:nowrap;text-align:left" | SetData<T>(T[]) | |- | public ! style="white-space:nowrap;text-align:left" | SetData<T>(T[], int, int) | |- | protected ! style="white-space:nowrap;text-align:left" | SetDataInternal<T> | |- | public ! style="white-space:nowrap;text-align:left" | ToString | (GameResourceクラスから継承) |} == イベント == {| class="wikitable" |+ ! ! 名称 ! 概要 |- | public | Disposing | (GameResourceクラスから継承) |} == 関連項目 == * [[MonoGame/クラスライブラリ/GraphicsResourceクラス]] ** [[MonoGame/クラスライブラリ/VertexBufferクラス]] ** [[MonoGame/クラスライブラリ/IndexBufferクラス]] * [[MonoGame/クラスライブラリ/IVertexTypeインターフェイス]] ** [[MonoGame/クラスライブラリ/VertexPositionColor構造体]] ** [[MonoGame/クラスライブラリ/VertexPositionTexture構造体]] ** [[MonoGame/クラスライブラリ/VertexPositionColorTexture構造体]] ** [[MonoGame/クラスライブラリ/VertexPositionNormalTexture構造体]] [[category: MonoGame]]
編集内容の要約:
MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MonoBook:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の確認用の質問に回答してください (
詳細
):
1たす1は?(全角で入力してください)
キャンセル
編集の仕方
(新しいウィンドウで開きます)
本文の横幅制限を有効化/無効化