第三章:C4droid编程:SDL2_05:简单动画&多线程处理
2022-11-30 01:48 作者:PonyLinuxlife | 我要投稿
Hello,Everypony,今天我来讲解SDL2 的键盘鼠标触屏信号处理和播放简易动画。
在我们玩的电脑游戏中,都是需要键盘和鼠标来完成互动的,而在手机上,则需要用到触屏和虚拟键盘(指的是输入法app,不是外接键盘),还有游戏里面有很多动画,很多都是由大量的帧图片以24张每秒播放的(这种速度下人眼无法识别图片闪动)。为什么需要多线程处理呢?因为有些程序,特别是大游戏,需要很多线程分配到多个CPU核心同时处理,加快运行速度。
所以,我们来制作一个由多线程处理并播放带声音的简单动画,而且要将其导出apk安装包。

首先,像上次一样创建工程,不过不同的是大工程,有多个c/h文件,文件夹和素材资源,以及编译脚本如Makefile,命令如下:
apkoverlay:apk配置层(我也不太清楚?)
resources:资源,如图片,音乐,视频,字库等
src:源代码
Makefile:编译脚本,对应工具为gnu make
接下来是编写编译脚本,修改编译选项:
Makefile

然后是编写程序,代码如下:
以下是新用到的函数:
接下来是制作动画,不过SDL2播放不了动画,只能用连续显示图片来达到目的

制作完成(总感觉哪里有点怪?!)

制作完成后导出连续的图片到工程下的resources/video目录下

最后再把ogg音乐文件复制到resources/music目录下,编译运行就可以看到带有音乐的动画了


如果有需要的话,也可以导出apk再安装,还是一样的效果。
到了最后,顺便说下导出apk界面的选项

还有,当时测试代码时,动画没放到一半时,程序就自动重新运行了,返回平板电脑主界面时发现其重新加载了,可能是内存占用过高,还不确定原因。