- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我认为这是一个简单的问题,但是我在释放表面时遇到问题,即使将SDL_FreeSurface()添加到代码中,cuz RAM也会溢出。没有此功能,RAM可以使用。这段代码还有更多“免费”的功能吗?
此代码试图在屏幕顶部显示文本(乒乓球比赛的分数)。
TTF_Init();
TTF_Font* arial = TTF_OpenFont("arial.ttf", 32);
SDL_Color msg_color = { 255,255,255 };
char msg[128];
sprintf_s(msg, "%d %d", g_SCORE_P_LEFT, g_SCORE_P_RIGHT);
SDL_Surface* messageSurface = TTF_RenderText_Solid(arial, msg, msg_color);
SDL_Texture* Message = SDL_CreateTextureFromSurface(m_game_window_renderer, messageSurface);
SDL_Rect msg_rect;
msg_rect.x = 50;
msg_rect.y = 50;
msg_rect.w = 30;
msg_rect.h = 30;
SDL_RenderCopy(m_game_window_renderer, Message, NULL, &msg_rect);
SDL_FreeSurface(messageSurface);
TTF_Quit();
最佳答案
您正在释放表面,但没有释放基于该表面创建的纹理。将此行添加到末尾:
SDL_DestroyTexture(Message);
TTF_CloseFont(arial);
TTF_Quit();
关于c++ - SDL_FreeSurface无法释放RAM/RAM溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62434772/
我有一个类Block这叫SDL_FreeSurface(surface)在析构函数中。在main()当我创建 Block 的一个实例时,该对象正常运行,但当我在另一个类中使用它时 Control ,
我在开发的游戏中遇到严重的内存使用问题。我让它一直运行,看到它使用了超过 1.5 GB 的 ram,而最初使用的是 30 MB。我已将主要原因确定为 2 个函数,粘贴在下面。通过研究这个问题,我得出的
当使用 SDL_Surface 处理图像时,我遇到了在同一指针上运行 SDL_FreeSurface(SDL_Surface *) ( doc ) 两次会产生分割的问题过错。 我明白为什么会发生这种情
我有以下简单的 SDL 代码: #include #include #include // helpers bool init(SDL_Window **win, SDL_Surface **s
我正在使用 PySDL2,在阅读示例时,我注意到这些示例调用 sdl2.SDL_FreeSurface(image)。我想知道,如果我不使用 FreeSurface,是否会造成内存泄漏?垃圾收集不处理
我在 SDL 中设置了一个小型射击游戏作为我自己的教程。我有一个射弹结构 struct projectile { SDL_Surface* surface; int x; in
我在编译我的程序时遇到了问题。 首先,这是我正在使用的makefile: LFLAGS = `sdl-config --cflags` `sdl-config --libs` -lSDL -lSD
我正在通过在线教程学习 SDL,发现一个我不明白的问题。根据本教程,始终正确释放应用程序使用的资源是一种很好的做法。就我而言,我想释放 SDL 表面使用的内存。 但是,如果我在调用该函数之前没有将它将
我有内存泄漏的问题。在 SDL_FreeSurface 函数之后,我的应用程序中的 RAM 使用量没有减少。 代码: //10 000 KB RAM SDL_Surface * surface = S
我是一名优秀的程序员,十分优秀!