C # XNA быстрая загрузка пикселей

#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:

http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.graphics.rendertarget(v=xnagamestudio.31).aspx

С их помощью вы можете преобразовывать объекты в текстуру, которую затем можно отображать на экране. Это почти наверняка будет самым быстрым и правильным способом.

Может быть, вы могли бы уточнить свой вопрос, чего именно вы хотите достичь, чтобы я мог дать вам более точный ответ?