美文网首页
使用SDL基本步骤

使用SDL基本步骤

作者: 程序员都是傻子呀 | 来源:发表于2020-03-01 15:25 被阅读0次

添加头文件 #include <SDL.h>

初始化SDL

退出SDL

#include <SDL2/SDL.h>

int main(int argc, char* argv[]) {
    SDL_Window *window = NULL;
    SDL_Renderer *render = NULL;

    SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO);
    SDL_Log("Hello World!");

    window = SDL_CreateWindow("hello world",
                    SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
                    640, 480,
                    SDL_WINDOW_RESIZABLE);
    if (!window) {
        SDL_Log("Failed to Create Window!");
        goto __EXIT;
    }   

    render = SDL_CreateRenderer(window, -1, 0); 
    if (!render) {
        SDL_Log("Failed to Create Render!");
        goto __DWINDOW;
    }   

    SDL_SetRenderDrawColor(render, 255, 255, 255, 255);
    SDL_RenderClear(render);

    // draw
    SDL_SetRenderDrawColor(render, 0, 255, 0, 255);
    SDL_Rect bigrect = { 0,0,100, 100 };
    SDL_RenderFillRect(render, &bigrect);

    SDL_RenderPresent(render);

    SDL_Event windowEvent;
    while(1) {
        if (SDL_PollEvent(&windowEvent)) { // 对当前待处理事件进行轮询。
            if (SDL_QUIT == windowEvent.type) { // 如果事件为推出SDL,结束循环。
                printf("SDL quit!\n");
                break;
            }   
        }   
    }   
    // 第二种方式
    int quit = 1;
    do {
        SDL_WaitEvent(&event);
        switch(event.type) {
        case SDL_QUIT:
            quit = 0;
            break;
        default:
            SDL_Log("event type is %d", event.type);
         }
    }while(quit);

__DWINDOW:
    SDL_DestroyWindow(window);

__EXIT:
    SDL_Quit();
    printf("end...\n");
    return 0;
}

相关文章

  • 使用SDL基本步骤

    添加头文件 #include 初始化SDL 退出SDL

  • FFmpeg播放PCM, WAV

    播放PCM步骤 初始化SDL SDL_Init(SDL_INIT_AUDIO) 设置SDL音频参数 SDL_Aud...

  • SDL显示YUV

    SDL显示YUV步骤 初始化SDL子系统 SDL_Init(SDL_INIT_VIDEO) 创建窗口 SDL_Cr...

  • ffplay学习记录02

    使用SDL2.0在mac OS上渲染视频画面 SDL下载:使用 SDL 来渲染视频到屏幕。SDL 是 Simple...

  • SDL彻底理解纹理渲染

    SDL渲染基本原理 SDL纹理相关API 1、SDL_CreateTexture() format:YUV,RGB...

  • 「SDL第四篇」事件处理

    前言 前面我为大家介绍了 SDL 的三个主题: SDL入门 SDL窗口显示 SDL绘制基本图形 今天我为大家介绍一...

  • FFmpeg+SDL2实现视频流播放

    SDL2文章列表 SDL2入门 SDL2事件处理 SDL2纹理渲染 SDL2音频播放 本篇博客使用FFmpeg+S...

  • SDL2纹理渲染

    SDL2第三篇。 SDL2入门 SDL2事件处理 接下来就看下如何使用SDL如何通过SDL_Texture在窗口绘...

  • 2019-10-07 SDL中Texture和Render的区别

    最近在研究SDL库的使用,找到了LittleVGL中的一个使用SDL2开源大项目,进行学习。 但是,由于SDL的文...

  • MAC引用SDL2

    安装SDL2库 brew install sdl2 pro添加库(库路径用brew info sdl2查看) 使用...

网友评论

      本文标题:使用SDL基本步骤

      本文链接:https://www.haomeiwen.com/subject/hacckhtx.html