【SDL】---窗口显示

来源:互联网 发布:coreldraw x5软件下载 编辑:程序博客网 时间:2024/05/16 17:55

学习SDL,看官方的例子很多,网上其他的人例子总有一点残缺,学习成本较高,比如显示窗口就单纯的显示窗口,如果你把消息循环也放进去,理解起来程序并不复杂,而且瞬间就提高了一个档次。

#include "SDL.h"#include <iostream>#pragma comment(lib, "./SDL2.0.4/lib/x86/SDL2.lib")int _tmain(int argc, _TCHAR* argv[]){    SDL_Window  *pWindow = nullptr;    SDL_Renderer*pRenderer = nullptr;    if (SDL_Init(SDL_INIT_EVERYTHING) < 0)    {        std::cout << "SDL initialize fail: " << SDL_GetError() << std::endl;        return -1;    }    pWindow = SDL_CreateWindow("SDL", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,        640, 480,        SDL_WINDOW_SHOWN);    if (NULL == pWindow)    {        std::cout << "Create window fail : " << SDL_GetError() << std::endl;    }    pRenderer = SDL_CreateRenderer(pWindow, -1, 0);    SDL_SetRenderDrawColor(pRenderer, 0, 0xaa, 0xaa, 0xaa);    SDL_RenderClear(pRenderer);    SDL_RenderPresent(pRenderer);    //消息循环    SDL_Event sldEvent;    bool bQuit = false;    while (!bQuit)    {        while (SDL_PollEvent(&sldEvent))        {            switch (sldEvent.type)            {            case SDL_QUIT:                bQuit = true;                break;            }        }    }    return 0;}

SDL不但做了视频渲染,还添加了事件循环,不错。

本例子基于 SDL2.0.4 + VS2013
git源码下载:https://github.com/Qyee/SDL-window

0 0
原创粉丝点击