「Metalのデータ型」の版間の差分
Administrator (トーク | 投稿記録) 編集の要約なし |
Administrator (トーク | 投稿記録) |
||
| 88行目: | 88行目: | ||
* half'''n''' | * half'''n''' | ||
* float'''n''' | * float'''n''' | ||
ベクトル型は「型のサイズは必ず2の乗数」であるという点に注意する必要がある。 | |||
たとえば intは4バイト、int2は8バイトだが、int3は12バイトではなく16バイトとなっている。ちなみにint4もint3と同じく16バイトである。 | |||
[[HLSL]]や[[GLSL]]で[[定数バッファー]]などの[[構造体]]を作る際は、その構造体のサイズを「8バイト単位」や「16バイト単位」にする必要があり、[[シェーダー]]の[[プログラミング]]の際にはその構造体のサイズを手計算で算出して、バイト数が足りない場合はダミーの変数を追加してサイズ調整が必要である。 | |||
一方、[[Metal]]では「必ず2の乗数」になるのでそのような手計算が必要ない。 | |||