すべてのパーティクルをレンダリングするプログラムに行き詰まっていますが、3 で 1 つのパーティクルしか更新していません。これをテストするために行ったことは次のとおりです。10 個のパーティクルで vbo を作成し、それらをすべて垂直に配置し、コンピューティング シェーダーを設定して、更新ごとに x 位置を変更します (pos.x+=0.1)。約 1 ~ 2 秒後の結果を次に示します (画像は 1:5 スケールです)。
local_size_x = 1、local_size_y = 1、local_size_z = 1 を使用してから、 DispatchCompute(10,1,1) を使用します。呼び出しIDに何か問題がありますか?
アップデート
パディングを追加してシェーダーの構造体定義をいじってみると、更新ごとに 1 つのデータだけがスキップされました。これはパディングの問題であることを意味しますが、適切にパディングする方法についての適切な説明が見つかりません。また、パディングしないことは可能ですか?この無駄な余分なデータがすべて必要ない場合はどうすればよいですか?