SDL2笔记01_搭建开发环境和编写helloworld

  1. 开发环境为Clion,和SDL2.0

    • 去官网http://www.libsdl.org/download-2.0.php下载SDL2-devel-2.0.14-mingw.tar.gz

    • SDL2-devel-2.0.14-mingw.tar.gz解压到目录G:/Xubuntu_Work_Space/From_Xubuntu/codeTest_2019_2_21/SDL2/win/SDL2-devel-2.0.14-mingw/SDL2-2.0.14/x86_64-w64-mingw32

  2. 网上有大佬翻译了教程
    http://adolfans.github.io/sdltutorialcn/blog/2013/01/25/sdl-2-dot-0-tutorial-index/连接

  3. 在Clion新建c++工程

    • 在cmakelists.txt里添加如下代码
         cmake_minimum_required(VERSION 3.19)
         project(main)
         set(SDL2_DIR G:/Xubuntu_Work_Space/From_Xubuntu/codeTest_2019_2_21/SDL2/win/SDL2-devel-2.0.14-mingw/SDL2-2.0.14/x86_64-w64-mingw32)
      
         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -lmingw32")
         set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++")
      
         include_directories(${SDL2_DIR}/include)
         link_directories(${SDL2_DIR}/lib)
      
         set(SOURCE_FILES main.cpp)
         add_executable(main ${SOURCE_FILES})
      
         target_link_libraries(main mingw32 SDL2main SDL2)
      
      
  4. 在main.cpp编写helloworld,并且准备一张hello.bmp

         #include "SDL2/SDL.h"
    
         int main(int argc, char** argv) {
    
             SDL_Init(SDL_INIT_EVERYTHING);
    
             SDL_Window *sdlWindow = SDL_CreateWindow("你好", 0, 0, 400, 320, SDL_WINDOW_SHOWN);
             // SDL_Randerer渲染器要和window绑定
             SDL_Renderer *sdlRenderer = SDL_CreateRenderer(sdlWindow, -1, /*-1让系统自动选一个显卡驱动*/
                                                            SDL_RENDERER_ACCELERATED /*启用硬件加速*/
                                                            | SDL_RENDERER_PRESENTVSYNC /*使用显示器的刷新率*/);
             // SDL_Surface是表面,使用CPU
             SDL_Surface *sdlSurface = SDL_LoadBMP("C:\\Users\\majiao\\Desktop\\hello.bmp");
    
             // 用SDL_Texture来GPU加速
             SDL_Texture *sdlTexture = SDL_CreateTextureFromSurface(sdlRenderer, sdlSurface);
             SDL_FreeSurface(sdlSurface);
    
             SDL_RenderClear(sdlRenderer);
             SDL_RenderCopy(sdlRenderer, sdlTexture,
                            NULL, /*绘制整个原图像, 并把它画在屏幕上(0,0 )的位置*/
                            NULL  /*拉伸这个图像让它填满整个窗口*/);
             // 发送给GPU
             SDL_RenderPresent(sdlRenderer);
    
             SDL_Delay(60000);
    
             return 0;
         }
    
    
  5. 编译后把SDL2.dllmain.exe放到同级目录(windows会优先找同级目录的dll),并运行,于是得到

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Windows 上搭建 SDL2 环境的步骤如下: 1. 下载 SDL2 开发库 在 SDL2 的官方网站上下载 SDL2 开发库的 Windows 版本。下载地址为 https://www.libsdl.org/download-2.0.php。选择 Windows Development Libraries,然后选择与你的编译器匹配的版本(32 位或 64 位)。下载后将其解压到某个目录下。 2. 配置开发环境 在你的 C++ 开发环境中,添加 SDL2 的头文件和库文件的路径。具体的步骤因编译器而异。以下是 Visual Studio 2019 的配置步骤: - 打开 Visual Studio 2019,创建一个新的 C++ 项目。 - 在项目中添加 SDL2 的头文件和库文件的路径: - 右键点击项目,选择 Properties。 - 选择 Configuration Properties -> VC++ Directories。 - 将 Include Directories 和 Library Directories 分别设置为 SDL2 解压后的 include 和 lib 文件夹的路径。 - 在项目中添加 SDL2 的库文件: - 右键点击项目,选择 Properties。 - 选择 Configuration Properties -> Linker -> Input。 - 将 Additional Dependencies 添加以下内容: ``` SDL2.lib SDL2main.lib ``` 3. 编写代码并测试 在 Visual Studio 2019 中,你可以使用以下代码测试 SDL2 是否正常工作: ```c++ #include <SDL.h> int main(int argc, char* args[]) { // 初始化 SDL2 SDL_Init(SDL_INIT_VIDEO); // 创建窗口 SDL_Window* window = SDL_CreateWindow("SDL2 Window", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, SDL_WINDOW_SHOWN); // 等待窗口关闭事件 SDL_Event e; bool quit = false; while (!quit) { while (SDL_PollEvent(&e) != 0) { if (e.type == SDL_QUIT) { quit = true; } } } // 清理 SDL2 SDL_DestroyWindow(window); SDL_Quit(); return 0; } ``` 如果一切正常,你应该能够看到一个简单的窗口,并且能够关闭它。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值