一千萬個為什麽

搜索

C#XNA快速像素加載

對不起垃圾郵件問題,但有沒有一種快速的方法從窗口(而不是項目窗口)加載XNA中的像素?我需要加載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 & 0x000000FF),
                     (int)(pixel & 0x0000FF00) >> 8,
                     (int)(pixel & 0x00FF0000) >> 16));
            }
        }
    }

最佳答案

我不確定我理解你的問題。從方法名稱,我收集到你想創建一個迷你地圖的種類?還是畫中畫的那種東西?

如果是這樣,這應該是你應該讓GPU處理的東西。您應該查看RenderTargets:

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

使用它們,您可以將事物渲染為紋理,然後可以在屏幕上顯示。這幾乎肯定是最快,最正確的方式。

也許你可以用你想要完成的內容來更新你的問題,這樣我可以給你一個更準確的答案?

轉載註明原文: C#XNA快速像素加載