目錄
I. SDL指南
關於SDL
關於SDLdoc
信譽
1.基本原理
基本介紹
起動SDL
2.圖像和影像
對SDL影像的介紹
和SDL在一起使用OpenGL
3.載入處理
處理操縱桿
處理鍵盤
4. 例子
介紹
影像例子
事件例子
音頻的例子
唯讀光碟例子
時間例子
II. SDL參考資料
5. 一般資料
SDL_Init— 起動SDL
SDL_InitSubSystem— 起動子系統
SDL_QuitSubSystem— 關閉子系統
SDL_Quit— 關閉SDL
SDL_WasInit— 檢查那一個子系統被起動
6.影像
SDL_GetVideoSurface—回傳目前顯示表面的指針(pointer)
SDL_GetVideoInfo—回傳關於影像硬體的資訊的指針(pointer)
SDL_VideoDriverName—回傳影像推動程式(video driver)的名字
SDL_ListModes—回傳指向一個可用銀幕尺度的陣列的指針得到格式和影像旗幟
SDL_VideoModeOK—檢查一選定的影像方式是否支持.
SDL_SetVideoMode—設置一影像方式根據映像點指定寬度,高度和 bit-per-pixel.
SDL_UpdateRect—確保特定區域是有進行銀幕更新.
SDL_UpdateRects—確保特定列表的長方形區域是有進行銀幕更新.
SDL_Flip—交換緩衝記憶體裝上銀幕
SDL_SetColors—設置出colormap的部份供給特定8-bit平面
SDL_SetPalette—設置出顏色調色盤供給特定8-bit平面.
SDL_SetGamma—設置出為展示準備的color gamma函數
SDL_GetGammaRamp—取回為展示準備的color gamma 轉換表格(lookup table)
SDL_SetGammaRamp—設置出為展示準備的color gamma 轉換表格(lookup table)
SDL_MapRGB—設置一RGB彩色數值對應映像點格式.
SDL_MapRGBA—設置一RGBA彩色數值對應映像點格式.
SDL_GetRGB—取回為RGB數值從一在指定映像點格式中映像點得到.
SDL_GetRGBA—取回為RGBA數值從一在指定映像點格式中映像點得到.
SDL_CreateRGBSurface—建立一空白的SDL_Surface
SDL_CreateRGBSurfaceFrom—從映像點資料創造一SDL_Surface
SDL_FreeSurface—釋放((刪除)一SDL_Surface
SDL_LockSurface—為直接傳取使映像表面鎖上.
SDL_UnlockSurface—為前鎖上的映像表面開鎖.
SDL_LoadBMP—把一 Windows BMP檔案裝入一SDL_Surface.
SDL_SaveBMP—把一SDL_Surface傳入一Windows BMP檔案.
SDL_SetColorKey—設置 color key(transparent 映像點)入一blittable表面和RLE acceleration.
SDL_SetAlpha—調整一表面的alpha特性.
SDL_SetClipRect—設置一準備剪下的資料長方形到一映像表面.
SDL_GetClipRect—取回往一映像表面得到剪下的資料長方形.
SDL_ConvertSurface—轉變一映像表面格式等同另一映像表面.
SDL_BlitSurface—這個函式執行一 fast blit 從來源映像表面去目的地映像表面.
SDL_FillRect—這個函式履行一快速填滿一特定的長方形巨區同一顏色地.
SDL_DisplayFormat—轉換一映像表面到展示格式
SDL_DisplayFormatAlpha—轉換一映像表面到展示格式
SDL_WarpMouse—設定滑鼠游標的位置.
SDL_CreateCursor—建立一新滑鼠游標.
SDL_FreeCursor—釋放和DL_CreateCursor在一起建立的游標
SDL_SetCursor—設置現時活躍滑鼠游標.
SDL_GetCursor—取回現時活躍滑鼠游標.
SDL_ShowCursor—檢定游標是否在銀幕被展示.
SDL_GL_LoadLibrary—指定一個OpenGL程式庫
SDL_GL_GetProcAddress—得到一個GL函式的地址
SDL_GL_GetAttribute—得到一個特殊SDL/OpenGL屬性的數值
SDL_GL_SetAttribute—設定一個特殊SDL/OpenGL屬性
SDL_GL_SwapBuffers—交換OpenGL framebuffers/更新顯示
SDL_CreateYUVOverlay—建立一YUV影像覆蓋層(overlay)
SDL_LockYUVOverlay—鎖上一覆蓋層(overlay)
SDL_UnlockYUVOverlay—把一覆蓋層(overlay)的鎖打開
SDL_DisplayYUVOverlay—Blit覆蓋層(overlay)到顯示
SDL_FreeYUVOverlay—釋放一YUV影像覆蓋層(overlay)
TSDL_GLAttr—SDL GL屬性
TSDL_Rect—定義一個長方形的區域
TSDL_Color—格式獨立彩色的描繪
TSDL_Palette—彩色的調色盤 for 8-bit映像格式
TSDL_PixelFormat—儲存映像表面格式的資訊
TSDL_Surface—圖形的映像表面結構
TSDL_VideoInfo—影像顯示資訊
TSDL_Overlay—YUV影像是覆蓋層(overlay)
7.視窗菅理
SDL_WM_SetCaption—設定視窗和畫像名字.
SDL_WM_GetCaption—得到視窗題目和畫像名字.
SDL_WM_SetIcon—為展示視窗準備畫像.
SDL_WM_IconifyWindow—Iconify/Minimise視窗
SDL_WM_ToggleFullScreen—轉變fullscreen方式
SDL_WM_GrabInput—取得滑鼠和鍵盤載入
8.事件
介紹
SDL事件結構.
事件函式
9.操縱桿
SDL_NumJoysticks—Count可用操縱桿.
SDL_JoystickName—取回操縱桿名字.
SDL_JoystickOpen—為使用開拓一操縱桿.
SDL_JoystickOpened—決定一操縱桿是否打開
SDL_JoystickIndex—得到SDL_Joystick的索引.
SDL_JoystickNumAxes—得到操縱桿斧的數目
SDL_JoystickNumBalls—得到操縱桿跟蹤球的數目
SDL_JoystickNumHats—得到操縱桿帽子的數目
SDL_JoystickNumButtons—得到joysitck按鍵的數目
SDL_JoystickUpdate—更新所有操縱桿狀態
SDL_JoystickGetAxis—得到一軸的目前狀態
SDL_JoystickGetHat—得到一頂操縱桿帽子的目前狀態
SDL_JoystickGetButton—得一個特定按鍵的目前狀態從特定的操縱桿
SDL_JoystickGetBall—得到相對跟蹤球運動
SDL_JoystickClose—關閉一曾打開操縱桿
10.音頻信號
TSDL_AudioSpec—音頻的規格說明結構
SDL_OpenAudio—用特定參數打開音頻的裝置.
SDL_PauseAudio—停頓和unpauses音頻的回覆通知處理
SDL_GetAudioStatus—得到目前音頻的狀態
SDL_LoadWAV—裝載一WAVE檔案
SDL_FreeWAV—釋放從前打開WAVE資料
SDL_AudioCVT—音頻的轉換結構
SDL_BuildAudioCVT—設置一SDL_AudioCVT結構作轉換用
SDL_ConvertAudio—轉換音頻資料至特定的音頻的格式.
SDL_MixAudio—混雜音頻的資料
SDL_LockAudio—鎖定回覆通知函式
SDL_UnlockAudio—鬆開回覆通知函式功能
SDL_CloseAudio—關閉音頻的處理和關閉音頻的裝置.
11.光碟
SDL_CDNumDrives—取回在系統中CD-ROM驅動器的數目.
SDL_CDName—取回CD-ROM 的系統依靠標識符.
SDL_CDOpen—打開一光碟作直接傳取
SDL_CDStatus—取回特定驅動器的目前狀況.
SDL_CDPlay—演奏CD
SDL_CDPlayTracks—演奏出特定CD Tracks
SDL_CDPause—停頓一張音樂光碟
SDL_CDResume—繼續一張音樂光碟
SDL_CDStop—停止一張音樂光碟
SDL_CDEject—Ejects 一張音樂光碟
SDL_CDClose—關閉一個SDL_CD handle  
TSDL_CD—光碟驅動器資訊
TSDL_CDtrack—CD軌跡資訊結構
12.多重線執行的程式設計
SDL_CreateThread—建立一新thread共用它的父母的特性.
SDL_ThreadID—取回為目前thread 的32位thread標識符.
SDL_GetThreadID—取回SDL_Thread 的SDL thread ID.
SDL_WaitThread—等待特定的thread 結束執行.
SDL_KillThread—Gracelessly結束特定的thread.
SDL_CreateMutex—建立一mutex
SDL_DestroyMutex—毀滅一mutex
SDL_mutexP—鎖上特定的mutex
SDL_mutexV—鬆開特定的mutex
SDL_CreateSemaphore—建立一新semaphore 和給它分配一起始值.
SDL_DestroySemaphore—毀滅一semaphore 由SDL_CreateSemaphore所建立
SDL_SemWait—鎖上特定的semaphore 及停止 thread 如果semaphore 值是0.
SDL_SemTryWait—嘗試鎖上特定的semaphore 但是不中斷thread的.
SDL_SemWaitTimeout—鎖上特定的semaphore但僅是等候至一指定最大時間.
SDL_SemPost—把特定的semaphore的鎖打開.
SDL_SemValue—取回特定的semaphore的目前數值.
SDL_CreateCond—建立一狀況變數(condition variable)
SDL_DestroyCond—毀滅一狀況變數(condition variable)
SDL_CondSignal—重新開始特定的thread等待一狀況變數(condition variable)
SDL_CondBroadcast—重新開始所有的thread等待一狀況變數線(condition variable)
SDL_CondWait—等待一狀況變數(condition variable)
SDL_CondWaitTimeout—等待一狀況變數(condition variable),有timeout
13.時間菅理
SDL_GetTicks—取回從SDL起始計經歷過的毫秒數目.
SDL_Delay—等候指定的毫秒的數目然後返回.
SDL_AddTimer—增加一計時器,指定毫秒的數目過去之後,會執行回覆通知(callback)
SDL_RemoveTimer—毀滅一個由SDL_AddTimer增加的計時器.
SDL_SetTimer—設定一回覆通知(callback) 執行,在指定毫秒的數目過去之後.
表格的清單
8-1.SDL Keysym定義
8-2.SDL修改者定義
例子的清單
1-1.預置SDL
2-1.預置Video Display
2-2.預置最好的影像方式
2-3.裝載和展示一BMP檔案
2-4.getpixel
2-5.putpixel
2-6.使用putpixel
2-7.和OpenGL在一起預置SDL
2-8.SDL和OpenGL
3-1.操縱桿技術支持地預置SDL
3-2.懷疑可用操縱桿的數目
3-3.打開一操縱桿
3-4.操縱桿軸事件
3-5.更多操縱桿軸事件
3-6.操縱桿按鍵事件
3-7.操縱桿包爾事件
3-8.操縱桿帽子事件
3-9.懷疑操縱桿特徵
3-10.閱讀鍵盤事件
3-11.解釋重要事件資訊
3-12.恰當遊戲移動