#c# #xna #load #pixel
#c# #xna #загрузка #пиксель
Вопрос:
Извините за рассылку вопросов, но есть ли быстрый способ загрузки пикселей в XNA из window (не project window)? Мне нужно загрузить как 100 пикселей шириной, так и 100 пикселей высотой, без слишком большой задержки. (Возможно обновление каждые 10 секунд).
public void UpdateMap()
{
for (int y = 100; y < 120; y )
{
for (int x = 1500; x < 1510; x )
{
uint pixel = GetPixel(hdc, x, y);
colorlist.Add(new Color((int)(pixel amp; 0x000000FF),
(int)(pixel amp; 0x0000FF00) >> 8,
(int)(pixel amp; 0x00FF0000) >> 16));
}
}
}
Ответ №1:
Я не уверен, что понимаю ваш вопрос. Из названия метода я понял, что вы хотите создать своего рода мини-карту? Или что-то вроде картинки в картинке?
Если это так, то это должно быть то, с чем вы должны позволить справиться графическому процессору. Вам следует заглянуть в RenderTargets:
С их помощью вы можете преобразовывать объекты в текстуру, которую затем можно отображать на экране. Это почти наверняка будет самым быстрым и правильным способом.
Может быть, вы могли бы уточнить свой вопрос, чего именно вы хотите достичь, чтобы я мог дать вам более точный ответ?