DirectX9のDrawPrimitive関数について質問させてください。
1、Lock関数について、サイトや書籍で調べると頂点データのポインタを取得する役割の他に、「頂点バッファの指定した範囲をロックする」と書かれています。
このロックというのは、何のために、何をすることなのでしょうか?また、調べたサイトでは「頂点バッファへ書き込み中にシステムが勝手にメモリを移動させたりしないようにする為に呼び出す」と書かれています。
私は最近C++を始めたのでよく理解できていないのですが、C++は自動でメモリを移動するシステムがあるのですか?それとも、この記述は解放処理を必要としないC#やJavaについての記述なのですか?
また別のサイトでは「グラフィックボードとCPUが同時に頂点データへの参照し、不具合が生じないように、ロックする」と書かれているのですが、どのような不具合が生じると考えられますか?
2、CreateVertexBuffer関数で生成した各頂点の、色や座標の情報を書き換えたいとき、Lock関数呼び出してそれぞれの頂点のデータを書き換えようと考えているのですが、この方法で大丈夫でしょうか?
最近DirectXやC++を始めたばかりで、わからないことが多いです。
どうかご教授お願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/13 18:14