我正在尝试在Direct3D中向屏幕绘制2D图像,我认为必须通过将纹理映射到矩形广告牌多边形并投影到填充屏幕来完成。 (我不感兴趣或无法使用Direct2D。) SDK中找到的所有纹理信息都描述了从文件加载位图并分配使用该位图的纹理,但我尚未找到一种可以逐像素处理纹理作为位图的方法。
我真正想要的是这样一个函数
void TextureBitmap::SetBitmapPixel(int x, int y, DWORD color);
如果不能直接设置纹理对象中的像素,则需要保存DWORD数组作为位图,并在每帧分配纹理吗?
最后,虽然我最初假定我将在CPU上执行此操作,但逐像素颜色计算也可能在GPU上完成。 设置单个纹理像素的HLSL代码,还是像素着色器仅有助于修改显示像素?
谢谢。