「MonoGameでHLSLにMatrixを渡す」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
[[ハードウェアインスタンシング]]を利用するにあたり[[C♯]]から[[HLSL]]にMatrix型の[[World座標]]を[[バーテックスバッファ]]経由で渡したい。 | [[ハードウェアインスタンシング]]を利用するにあたり[[C♯]]から[[HLSL]]にMatrix型の[[World座標]]を[[バーテックスバッファ]]経由で渡したい。 | ||
− | + | しかしMonoGameでは[[HLSL]]に渡すデータ型を示すVertexElementFormatは「Vector4」が最大となっており、Vector4が4個セットになっているMatrix型は渡せない。 | |
− | + | そこでMatrixはVector4の4倍と仮定してVector4を4個ズラズラ列べる。 | |
+ | VertexElementUsageはfloat4型のセマンティクス、かつ誰も使ってないであろうBlendWeightを指定した。 | ||
<syntaxhighlight lang="csharp"> | <syntaxhighlight lang="csharp"> |