Я пытаюсь нарисовать 2D-изображение на экране в Direct3D, что, как я полагаю, должно быть сделано путем сопоставления текстуры с прямоугольным многоугольником рекламного щита, проецируемым на весь экран. (Я не заинтересован или не могу использовать Direct2D.) Вся информация о текстуре, которую я нашел в SDK, описывает загрузку растрового изображения из файла и назначение текстуры для использования этого растрового изображения, но я пока не нашел способа манипулировать текстура как растровое изображение пиксель за пикселем.
Что мне действительно нравится, так это функция, такая как
void TextureBitmap::SetBitmapPixel(int x, int y, DWORD color);
Если я не могу установить пиксели непосредственно в объекте текстуры, нужно ли сохранять массив DWORD, который является растровым изображением, а затем назначать текстуру этому каждому кадру?
Наконец, хотя я изначально предполагаю, что буду делать это на процессоре, расчеты цвета на пиксель, вероятно, также можно выполнять на графическом процессоре. Является ли код HLSL, который устанавливает цвет отдельного пикселя в текстуре, или пиксельные шейдеры полезны только для изменения пикселей дисплея?
Спасибо.