位置とさまざまなプロパティが頂点バッファオブジェクトに格納されているパーティクルシステムがあります。値はCUDAカーネルによって継続的に更新されます。現在、GL_POINTSをフラットサークルとして使用してレンダリングしています。私が興味を持っているのは、これらのパーティクルをレンダリングすることです。たとえば、3Dアニメーションの鳥モデルなどです。私は最善のアプローチが何であるかを理解しようとしています。会話のために、鳥のモデルのアニメーションが3つのフレーム(翼の位置など)で構成されているとしましょう。
モデルをディスプレイリストにロードし、マトリックスの変換、回転などですべてのパーティクルをループしてから、ディスプレイリストを呼び出すことがわかります。これは理想的なアプローチとは思えません。GPUに戻すために行列操作を行うためだけに、すべてのパーティクルデータをgpuからホストに取り込む必要があるためです(cudaカーネルから描画関数を呼び出せない限り?? ?)
シェーダーについてはよくわかりませんが、このようなものを処理できるでしょうか。
この時点で、私は主にどの道を追求するかについてのアドバイスを探していますが、主題を扱っている記事やチュートリアルを知っているなら、称賛に値します。
私はWindows764ビットとC++でネイティブにOpenGLを使用しています。GLUTを使用していません