c # XNA рендерит данный раздел двумерного массива bool, представляющего 2-цветное изображение в окно - PullRequest
0 голосов
/ 20 октября 2011

Во-первых, моя логика о том, сколько места этот массив займет правильно?

bool[,] b = new bool[8192 /* 8 * 1024 = 1KB */, 20]; // 20KB

Я хочу визуализировать данный раздел 2D-массива в окне. Массив имеет тип bools и представляет собой двухцветное изображение. Изображение должно занимать все окно, и каждый пиксель должен быть резким \ pixelated, в отличие от интерполяции \ градиентов между центрами пикселей.

Например (инкапсуляция будет больше, чем эта):

draw(bool[,] b,
float top_left_x, float top_left_y, float width, float height,
float false_red, float false_green, float false_blue,
float true_red, float true_green, float true_blue)
{
    // what goes here?
}

Есть ли что-то встроенное в c # \ XNA, чтобы сделать это эффективно?

Ответы [ 2 ]

1 голос
/ 20 октября 2011

Вы можете сделать то же самое, что и здесь: Как нарисовать 2D пиксель в пикселях в XNA?

Единственное, что вам нужно сделать, это проверить, какой цвет получитсяв вашу текстуру, если это правда или ложь.

0 голосов
/ 20 октября 2011

Вы можете создать новый Texture2D, а затем использовать функцию SetData с массивом цветов. Я не проверял это, но оно должно работать.

...