原创 SDL入門教程(六):SDL讀取其它格式的圖片
作者:龍飛1:擴充庫(Extension Libraries) SDL本身所支持的,僅僅是讀取bmp格式的圖片。要使用其它格式的圖片,我
原创 SDL入門教程(二):2、SDL的安全裝載與安全退出
作者:龍飛2.1:WasInit可以在Init前使用嗎? 我們在介紹SDL_Init()的時候說過,這個函數是調用SDL其他函數之前必須
原创 SDL入門教程(二):3、中途裝載與退出,SDL錯誤信息
作者:龍飛3.1:SDL flags 的中途裝載和中途退出。 如果我們在程序一開始只啓動了video,在運行的某個期間需要啓動audio,之後,又需要關掉video只保持audio聽聲音應該怎麼做呢? 先說中途
原创 SDL入門教程(五):2、構建SDL surface類
作者:龍飛2.1:構建普通的surface類。 在所有的surface裏面,只有screen surface是最特殊的。因爲第一,sc
原创 SDL入門教程(一):1、一切從零開始
作者:龍飛 1.1:SDL是什麼? SDL是Simple DirectMedia Layer(簡易直控媒體層)的縮寫。它是一個跨平臺的多媒體庫,以用於直接控制底層的多媒體硬件的接口。這些多媒體功能包括了音頻、鍵盤和
原创 SDL入門教程(九):3、文本反饋“按鍵”信息
作者:龍飛3.1:一些小的修改 我覺得寫C++的程序,一是看起來確實比較C++一點,二是相對於C的“精煉”,C++要的是“健壯”。所以,其實我不太滿意用C風格字符串作爲ScreenSurfa
原创 SDL入門教程(十三):3、封裝多線程
作者:龍飛 SDL創建多線程的函數SDL_CreateThread()所調用的是函數指針,這意味着我們不可以傳入(非靜態)成員函數的指針。關於兩種函數指針我們之前已經討論過:函數指針與成員函數指針,我們可以有兩種方法能讓具有
原创 SDL入門教程(十三):1、多線程,從動畫說起
作者:龍飛1.1:簡單動畫 遊戲離不開動畫。我們考慮最簡單的情況:將一個角色從一個位置移動到另外一個位置。這個行爲表述給電腦就是,將一個surface不斷的blit(),從起始位置的座標,移動到結束位置的座標。移動速度取決於
原创 SDL入門教程(十三):2、初識多線程
作者:龍飛2.1:競爭條件(Race Conditions) 我們在前面將一個普通函數調用轉換成了用線程調用,這意味着我們可以“同時”調用兩個以上的線程。例如,我們希望在屏幕的另外一個位置也播放這段簡單的動畫,我們只需要添加
原创 SDL入門教程(十):1、多語言支持,Win32下的GetText
作者:龍飛 自從開始研究SDL的文本顯示,我就一直在思考在SDL中顯示中文的問題。我們知道韋諾之戰(Battle for Wesnoth)使用SDL開發的,並且支持多語言。所以,我一直相信Wesnoth的源代碼裏面一定有我所
原创 SDL入門教程(十一):3、做一個對話框
作者:龍飛 有了按鈕類,我們製作對話框就很輕鬆了。邊寫程序邊說明吧。 bool hand_dialog(const ScreenSurface& screen, const std::string& dialog_text,
原创 SDL入門教程(九):1、在SDL圖形窗口顯示文本
作者:龍飛 最近幾篇教程基本上都是參考着Lazy Foo的教程順序來的。因爲我也覺得他的順序很實用。所不同的是,新的類型我都添加在了之前建立起來的surface類的基礎之上。所以,如果你覺得單
原创 SDL入門教程(十一):2、設計按鈕ButtonClass
作者:龍飛2.1:設計框架與基類的接口 有了更加完善的SurfaceClass的支持,我們可以進行按鈕的設計了。接着上一節的話題,按鈕除了要給我們表現出來是否被按下的視覺效果,還要起到實際上的作用。一種最簡單的思路,既是鼠標
原创 SDL入門教程(十):5、SDL完美顯示中文
作者:龍飛注意:請使用支持中文的TTF字庫。5.1:構建可以正確顯示中文的SDL_ttf函數 世界終於又充滿了光明!任何事情都是有答案的,不知道僅僅是因爲我們還沒有找到。解決了以上一系列問題
原创 SDL入門教程(八):2、裁剪精靈圖片的完整源代碼
//UVi Soft (2008)//Long Fei (lf426), E-mail: [email protected]//FileName: SurfaceClass.h#ifndef SURFACE_CLASS_H#define