gpt4 book ai didi

c++ - SDL2 FillRect 与 SDL_Window 问题

转载 作者:行者123 更新时间:2023-11-30 04:07:02 27 4
gpt4 key购买 nike

我在尝试将 SDL_FillRect 与 SDL 2.0 结合使用时遇到问题

这是我的代码:

bool running = true;

//Initialise SDL
SDL_Init(SDL_INIT_EVERYTHING);

SDL_Window *screen = SDL_CreateWindow("Test Game",
SDL_WINDOWPOS_UNDEFINED,
SDL_WINDOWPOS_UNDEFINED,
640, 480,
SDL_WINDOW_FULLSCREEN_DESKTOP | SDL_WINDOW_OPENGL);

while (running){
SDL_FillRect(screen, NULL, 0);
}

//Quit SDL
SDL_Quit();

return 0;

我得到的错误是:

1>c:\users\ethan\desktop\c++ projects\another test with sdl\anothertest with sdl\main.cpp(16): error C2664: 'int SDL_FillRect(SDL_Surface*,const SDL_Rect *,Uint32)' : cannot convert argument 1 from 'SDL_Window *' to 'SDL_Surface *'

1> Types pointed to areunrelated; conversion requires reinterpret_cast, C-style cast orfunction-style cast

最佳答案

在 SDL2 中,您应该创建一个 SDL_Renderer 并使用 SDL_RenderClear

如果您真的想使用 SDL_FillRect,那么您可以在单独的 SDL_Surface 上调用它,然后分两步将该表面渲染到您的窗口上。 SDL2 迁移指南谈到了这些东西: https://wiki.libsdl.org/MigrationGuide

关于c++ - SDL2 FillRect 与 SDL_Window 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22671054/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com