SDL2相对于SDL1.2做了很大变化, SDL1.2中举目皆是Surface, 似乎是定义时间太久了, 新的SDL2做了进一步划分,从1.2到2.0可以参考
官网说明
SDL_Init(SDL_INIT_EVERYTHING)
可以认为是屏幕,但是SDL2中允许创建多个window
SDL1.2中的SDL_SetVideoMode()被SDL_CreateWindow()取代
屏幕的绘制句柄
SDL_CreateRenderer():从window创建renderer
SDL_RenderClear():清空绘制区域
SDL_RenderPresent():显示绘制结果
图片,像素, 以前的精灵
a)
SDL_CreateTexture():从renderer创建texture
SDL_UpdateTexture():把surface更新到texture上
b)
SDL_CreateTextureFromSurface ():可以从render+surface创建texture,可以看做a)的合体
0. init
1. window
2. renderer
3.texture
最后
SDL_RenderCopy()把texture复制到renderer上
一般屏幕更新方式是
SDL_RenderClear(): 清空render
SDL_RenderCopy(): 更新render
SDL_RenderPresent(): 显示render
SDL_ConvertSurfaceFormat():把加载的24bit surface 转换到32bit surface
SDL_MapRGB():获得一个RGB在指定格式中的颜色
SDL_SetColorKey():设置需要当作透明色的Color key, SDL2中这个函数的参数变了
SDL_PollEvent()提取Event, 如果没有消息则退出