Ich versuche, ein 2D-Bild auf dem Bildschirm in Direct3D zu zeichnen, was ich voraussetze, indem ich eine Textur auf ein rechteckiges Billboard-Polygon projiziere, das projiziert wird, um den Bildschirm zu füllen. (Ich bin nicht interessiert oder kann Direct2D nicht verwenden.) Alle Texturinformationen, die ich im SDK gefunden habe, beschreiben das Laden einer Bitmap aus einer Datei und das Zuweisen einer Textur zur Verwendung dieser Bitmap, aber ich habe noch keine Möglichkeit zur Manipulation gefunden eine Textur als Bitmap Pixel für Pixel.Wie stelle ich die Farbe eines einzelnen Pixels in einer Direct3D-Textur ein?
Was ich möchte wirklich eine Funktion wie
void TextureBitmap::SetBitmapPixel(int x, int y, DWORD color);
Wenn ich nicht die Pixel direkt in der Textur-Objekt festlegen können, muss ich um einen DWORD-Array halten müssen, dass das ist Bitmap und weisen Sie dann jedem Frame die Textur zu?
Schließlich, während ich zunächst davon ausgehe, dass ich dies auf der CPU tun werde, könnten die pro-Pixel-Farbberechnungen wahrscheinlich auch auf der GPU erfolgen. Ist der HLSL-Code, der die Farbe eines einzelnen Pixels in einer Textur festlegt, oder sind Pixel-Shader nur zum Ändern der Anzeigepixel nützlich?
Danke.