【问题标题】:Having trouble initializing an SDL_Surface初始化 SDL_Surface 时遇到问题
【发布时间】:2009-02-03 20:47:20
【问题描述】:

我正在尝试在 SDL [in C++] 中设置一些东西,我可以在其中绘制一个像素大的矩形。除了我的第二个 SDL_Surface 称为矩形之外,我的代码中的所有内容都可以正常工作。我在初始化它时遇到问题。这是我尝试初始化它的行:

rectangle = SDL_Surface(SDL_DOUBLEBUF | SDL_HWACCEL | 
                        SDL_SRCALPHA  | SDL_HWSURFACE,
                        screen->format, 1, 1, 16, NULL, clip_rect, 1);

感谢您抽出宝贵时间阅读本文以及您可能选择提供的任何答案。

【问题讨论】:

  • “初始化时遇到问题”是什么意思?它不工作?您遇到了某种错误?

标签: c++ initialization sdl rectangles


【解决方案1】:

我认为您遇到的主要问题是没有SDL_Surface 功能。要创建新表面,请使用 SDL_CreateRGBSurface。完成后请务必在返回的表面上调用SDL_FreeSurface,否则会泄漏内存。

此外,我不确定您为什么要为矩形创建表面。绘制纯色矩形的更简洁方法是SDL_FillRect,无需创建新表面。

【讨论】:

    猜你喜欢
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    • 2011-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-07
    相关资源
    最近更新 更多