SDL Guide
SDL向导中文译版
序言
关于SDL
SDL为方便制作能跨跃Linux、bsd、MacOS、win32和BeOS平台,使用本地高性能媒体接口,并且让您可以只需使用一份源代码级api而设计。SDL是相当低层的API,但使用它可以让你以极大的灵活性写出完全跨平台的程序。
关于SDL文档
SDLdoc项目即要重新编写SDL文档并同步更新。项目组有使用SDL的志愿者组成。
最新版本可在sourceforge.NET/">http://sdldoc.sourceforge.net下载
谢启
Sam Lantinga, slouken@libsdl.org
Martin Donlon, akawaka@skynet.ie
Mattias Engdeg?rd
Julian Peterson
Ken Jordan
Maxim Sobolev
Wesley Poole
Michael Vance
Andreas Umbach
Andreas Hofmeister
第一章 基础
初始化
SDL由八个子系统组成——音频、CDROM、事件处理、文件I/O、游戏杆、线程、记时器和视频。使用前必须调用SDL_Init或SDL_InitSubSystem初始化。SDL_Init必须早于其他所有SDL调用,它将自动初始化事件处理、文件I/O和线程子系统,并根据参数选择启动其他子系统。例如,初始化缺省和视频子系统:
SDL_Init(SDL_INIT_VIDEO);
初始化缺省、视频和记时器子系统:
SDL_Init(SDL_INIT_VIDEO | SDL_INIT_TIMER);
SDL_Init对应SDL_Quit(和SDL_QuitSubSystem)。SDL_Quit关闭所有子系统,必须在程序关闭前调用。
除此之外,我们还必须进行错误处理。很多SDL函数返回一个值指示成功与否。例如SDL_Init失败时返回-1。每当SDL出错时,错误信息被保存,并可用SDL_GetError取得。
例1-1 初始化SDL
#include "SDL.h" /* All SDL App's need this */ #include int main() { printf("Initializing SDL.n"); /* Initialize defaults, Video and Audio */ if((SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO)==-1)) { printf("Could not initialize SDL: %s.n", SDL_GetError()); exit(-1); } printf("SDL initialized.n"); printf("Quiting SDL.n"); /* Shutdown all subsystems */ SDL_Quit(); printf("Quiting....n"); exit(0); }
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-993814/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10752043/viewspace-993814/
SDL初学者指南
本文介绍SDL(Simple DirectMedia Layer),一种跨平台的游戏和多媒体开发包。详细解释了如何使用SDL_Init初始化子系统,包括音频、视频等,并展示了基本的错误处理方法。
1355

被折叠的 条评论
为什么被折叠?



