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