第三章:C4droid編程:SDL2_05:簡單動畫&多線程處理
2022-11-30 01:48 作者:PonyLinuxlife | 我要投稿
Hello,Everypony,今天我來講解SDL2 的鍵盤鼠標觸屏信號處理和播放簡易動畫。
在我們玩的電腦游戲中,都是需要鍵盤和鼠標來完成互動的,而在手機上,則需要用到觸屏和虛擬鍵盤(指的是輸入法app,不是外接鍵盤),還有游戲里面有很多動畫,很多都是由大量的幀圖片以24張每秒播放的(這種速度下人眼無法識別圖片閃動)。為什么需要多線程處理呢?因為有些程序,特別是大游戲,需要很多線程分配到多個CPU核心同時處理,加快運行速度。
所以,我們來制作一個由多線程處理并播放帶聲音的簡單動畫,而且要將其導出apk安裝包。

首先,像上次一樣創(chuàng)建工程,不過不同的是大工程,有多個c/h文件,文件夾和素材資源,以及編譯腳本如Makefile,命令如下:
apkoverlay:apk配置層(我也不太清楚?)
resources:資源,如圖片,音樂,視頻,字庫等
src:源代碼
Makefile:編譯腳本,對應工具為gnu make
接下來是編寫編譯腳本,修改編譯選項:
Makefile?

然后是編寫程序,代碼如下:
以下是新用到的函數(shù):
接下來是制作動畫,不過SDL2播放不了動畫,只能用連續(xù)顯示圖片來達到目的

制作完成(總感覺哪里有點怪?!)

制作完成后導出連續(xù)的圖片到工程下的resources/video目錄下

最后再把ogg音樂文件復制到resources/music目錄下,編譯運行就可以看到帶有音樂的動畫了


如果有需要的話,也可以導出apk再安裝,還是一樣的效果。
到了最后,順便說下導出apk界面的選項

還有,當時測試代碼時,動畫沒放到一半時,程序就自動重新運行了,返回平板電腦主界面時發(fā)現(xiàn)其重新加載了,可能是內(nèi)存占用過高,還不確定原因。
標簽: