SDL 开发实战(二):SDL 2.0 核心 API 解析

本文详细介绍了SDL开发中的核心API,包括SDL_Init()、SDL_CreateWindow()、SDL_CreateRenderer()、SDL_CreateTexture()、SDL_UpdateTexture()、SDL_RenderCopy()和SDL_RenderPresent()。通过这些API,可以实现从初始化到销毁资源的完整流程,涉及窗口创建、渲染器生成、纹理创建与更新、画面显示等关键步骤。
摘要由CSDN通过智能技术生成

基本的SDL的使用思路,基本分为三部分:初始化 —> 循环渲染 —> 销毁释放资源。
SDL 初始化相关方法 :

  • SDL_Init(): 初始化SDL
  • SDL_CreateWindow(): 创建窗口(Window)
  • SDL_CreateRenderer(): 基于窗口创建渲染器(Render)
  • SDL_CreateTexture(): 创建纹理(Texture)

SDL 渲染数据相关方法:

  • SDL_UpdateTexture(): 设置纹理的数据
  • SDL_RenderCopy(): 纹理复制给渲染器
  • SDL_RenderPresent(): 显示

SDL 销毁释放资源相关方法:

  • SDL_DestroyTexture(tex) : 释放纹理资源
  • SDL_DestroyRenderer(ren) : 释放渲染器
  • SDL_DestroyWindow(win) : 释放窗口
  • SDL_Quit() : 关闭所有SDL子系统

下面我们就按照这个顺序对核心的API进行讲解。

一、初始化函数 SDL_Init()

该初始化函数可以确定希望激活的子系统。函数原型如下:

int SDLCALL SDL_Init(Uint32 flags)

其中Uint32 flags参数为要启动的子系统的flag值,具体可以传入的内容如下:

  • SDL_INIT_TIMER:定时器
  • SDL_INIT_AUDIO:音频
  • SDL_INIT_VIDEO:视频
  • SDL_INIT_JOYSTICK:摇杆
  • SDL_INIT_HAPTIC:触摸屏
  • SDL_INIT_GAMECONTROLLER:游戏控制器
  • SDL_INIT_EVENTS:事件
  • SDL_INIT_NOPARACHUTE:不捕获关键信号(这个不理解)
  • SDL_INIT_EVERYTHING:包含上述所有选项

SDL_Init() 的实现位于SDL.c中。定义如下:

int SDL_Init(Uint32 flags
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值