加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

cocos2dx 3.10 功夫小子学习笔记

发布时间:2020-12-14 17:00:38 所属栏目:百科 来源:网络整理
导读:一 目的 学习,并作为练习的一个案例 github 地址 https://github.com/baidang201/KungFuChild 教程地址: http://suool.net/2015/07/30/My-Cocos2d-x-Game-Class-For-JiKeXueYuan/ 二 大纲 1 概要 了解游戏设计的大概结构 2 基础类 《1 工具类实现 《2 英雄

一 目的

学习,并作为练习的一个案例

github 地址 https://github.com/baidang201/KungFuChild


教程地址:

http://suool.net/2015/07/30/My-Cocos2d-x-Game-Class-For-JiKeXueYuan/


二 大纲

1 概要
了解游戏设计的大概结构

2 基础类
《1 工具类实现
《2 英雄类实现
《3 简单AI怪物实现

3 主菜单和秘籍界面
《1 资源异步加载(图片纹理 精灵缓存 声音(要使用线程异步加载)),使用过渡页达到目的
《2 Menu家族菜单的使用
《3 UserDefault简单配置文件使用

4 设置和图鉴界面
《1 ControlSider 用法,滑动条
《2 MenuItemToggle 用法,开关菜单控件
《3 ListView 列表视图

5 帮助和选关界面
《1 帮助页面,裁剪页ClippingNode使用,类似于flash的蒙版,用于实现字幕滚动。
《2 OrbitCamera action视角按照球面坐标轨迹围绕屏幕中心进行旋转


6 主场景界面
《1 ControlButton 按钮的使用
《2 ProgressTimer 进度条的使用

《3 暂停和继续,使用了截图类(RenderTexture),为了屏蔽触摸事件到后面的操作按钮

《4 使用了视差节点类,造成远景近景层次移动效果(ParallaxNode)



7 主逻辑
《1 游戏暂停的实现,使用RenderTexture。可用于截屏
《2 游戏结算的场景实现(遮罩层屏蔽触摸)

8 打包为apk
《1 基础组件(jdk python sdk ndk ant)
《2 cocos命令行打包
《3 eclipse/android studio打包


三 小结

1 异步加载。

纹理,动画有异步接口,声音资源只能写线程预加载(cocos2dx 3.10)


2 Menu家族比较

文字菜单

图片/精灵菜单

开关菜单

比较特别的是开关菜单项,回调函数在第一个参数位置,大概是为了实现后面放可变参数吧

MenuItemToggle * MenuItemToggle::createWithCallback(const ccMenuCallback &callback,MenuItem* item,...)

其他的是

MenuItemSprite * MenuItemSprite::create(Node* normalSprite,Node* selectedSprite,Node* disabledSprite)

3 view家族比较

scroolView,ListView,PageView,TableView


4 windows32平台(cocos2dx 3.10),调节背景音乐 音效的接口居然无效,看了例子改写cocos2dcocosaudiowin32 如下3个文件,使用windowsAPI mciSendCommand实现

MciPlayer.cpp
MciPlayer.h
SimpleAudioEngine.cpp


5 改进方向

《1 使用有限状态机改写本游戏项目 《2 为怪物添加更强大的AI,改进现有的碰撞检测 《3 怪物的产生使用读取配置文件的方式 《4 将游戏GameLayer各个层分开实现,降低程序的耦合性。 《5 组合按键,生成新的技能系统

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读