基于C语言的跨平台2D游戏框架设计

2021-08-19 08:25:36苏雄张宏桥段凌飞曾晓华
现代计算机 2021年21期
关键词:定义管理

苏雄,张宏桥,段凌飞,曾晓华

(湘南学院电子信息与电气工程学院,郴州423000)

0 引言

C语言是较为底层的高级语言,由于其标准简单规范,在多个领域均较为流行[1-2]。出于教学目的,大部分学生在学习完C语言后,不能进一步探究,对基本的数据结构与算法感觉枯燥。为解决这个问题,目前已有部分高校以游戏引擎等与现实紧密结合的内容为导向,提升学生的编程语言学习兴趣[3-5]。以此为出发点,本文使用跨平台的C语言库SDL2实现了一套2D游戏框架CSimpleEngine来激发学生进一步的学习研究的兴趣。该框架使用C语言(C99标准)实现,依赖于SDL2开源库,该库支持音视频、网络等功能的操作,且支持跨平台编译[6]。对于跨平台部分,本文使用C4Droid作为跨平台编译器,使用的版本为C4Droid v6.97汉化版,其本身已经集成好GCC以及SDL2库,方便本文设计框架的APK编译。此外,文中所涉及的CSimpleEngine框架与演示工程代码已开源提交到https://gitee.com/suiwobian/csimple-engine.git。

1 框架设计

1.1 框架模块

框架目前包含通用功能、事件编辑、输入控制、声音管理、精灵管理、文字绘制、物体管理七个模块。其中,通用功能模块主要负责常用算法的实现,如平面旋转、碰撞位置检测等通用功能;事件编辑模块负责用户层逻辑,包括物体事件声明、定义注册,是用户层设计的主要工具,出于代码复用目的,用户使用该模块的宏进行操作;输入控制模块负责用户层的输入检测,如鼠标或屏幕的点击、键盘按键状态等信息的获取;声音管理模块负责音效资源的配置与使用,包含音乐与音效两种类型。……

登录APP查看全文

猜你喜欢
定义管理
枣前期管理再好,后期管不好,前功尽弃
今日农业(2022年15期)2022-09-20 06:56:20
永远不要用“起点”定义自己
海峡姐妹(2020年9期)2021-01-04 01:35:44
定义“风格”
加强土木工程造价的控制与管理
如何加强土木工程造价的控制与管理
成功的定义
山东青年(2016年1期)2016-02-28 14:25:25
“这下管理创新了!等7则
杂文月刊(2016年1期)2016-02-11 10:35:51
人本管理在我国国企中的应用
现代企业(2015年8期)2015-02-28 18:54:47
修辞学的重大定义
当代修辞学(2014年3期)2014-01-21 02:30:44
山的定义
公务员文萃(2013年5期)2013-03-11 16:08:37