SDL_RenderDrawPoint() 性能很慢并且占用太多内存

问题描述

我正在尝试制作像焦土一样的 2d 游戏:

并且我需要在游戏运行后进行一些工作后处理像素,但我注意到 SDL_RenderDrawPoint() 如果我使用它会使我的游戏变慢。 而 SDL_SetRenderDrawColor() 不会像那样影响记忆

这里有一些图片和我运行的代码来得出这个结论。

功能仅用于测试它是否会降低我的游戏速度:

for (i = 0; i < ::g_SCREEN_HEIGHT; i++) {
    for (j = 0; j < ::g_SCREEN_WIDTH; j++)
    {
        if (map.at(i).at(j) == 1)
        {
            SDL_SetRenderDrawColor(renderer,50,255,90,255);
            SDL_RenderDrawPoint(renderer,j,i);
        }
        else
        {
            SDL_SetRenderDrawColor(renderer,i);
        }
    }
}


SDL_RenderPresent(renderer);
return;

here the picture of what this code doing

在此功能之前,内存仅为 130 +- mb 我该怎么做才能让我的游戏像原来的焦耳或其他游戏一样轻?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)