DirectX:关于DirectX LockRect()

DirectX:关于DirectX LockRect(),directx,Directx,我是directx的新手,我试图理解为什么我们需要先锁定曲面,然后才能操纵它?有人能帮我解释一下吗?你必须锁定曲面和缓冲区,以便告诉GPU你正在操纵这些资源。这些是同步GPU和CPU上运行的程序所必需的。请记住,根据定义,CPU直接操纵曲面是没有效率的。换句话说,如果有一种方法可以在不锁定曲面的情况下进行绘制,那就更好了(即使用渲染绘制,而不是尝试使用CPU的内存操作来设置像素)。

我是directx的新手,我试图理解为什么我们需要先锁定曲面,然后才能操纵它?有人能帮我解释一下吗?

你必须
锁定
曲面和缓冲区,以便告诉GPU你正在操纵这些资源。这些是同步GPU和CPU上运行的程序所必需的。

请记住,根据定义,CPU直接操纵曲面是没有效率的。换句话说,如果有一种方法可以在不锁定曲面的情况下进行绘制,那就更好了(即使用渲染绘制,而不是尝试使用CPU的内存操作来设置像素)。