目錄
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.
恰當遊戲移動
下一頁
SDL指南