关于Cocos2d-x开发一个游戏的过程自述
我在2016年12月6号完成了我的第一个自己独立完成的游戏,期间遇到各种各样的问题和困难,但是幸运的是问题都一一被解决了,现在我想总结一个整个的制作游戏的过程
使用的环境是VS2013+cocos2d-x3.10
1.建立框架
先设置好几个重要的场景,开始游戏场景,游戏场景,游戏结束场景,有一些基础代码
2.写好主要功能代码
写好让主角运动的代码,和让障碍物可以移动的代码,让画面能动起来
3.小测试
用网上一些简单的图片素材对精灵进行包装和进行测试最初效果
4.添加碰撞机制以及测试碰撞
5.添加UI控件触发主角动作
6.添加背景和背景轮播的效果
7.完善障碍物的结构设计
8.完善主角的动作和状态
9.制作其他界面,辅助功能
以上几步已经完成了游戏场景界面的设计,现在做好开始游戏界面和追加奖励界面以及游戏结束界面
10.添加游戏背景音乐和音效
添加完成后要进行多次测试,看是不是有Bug
11.测试游戏,寻找Bug,代码删减
把没用的代码删除,一些注释语句也都删除
12.打包图集,优化游戏
把图片资源用TexturePacker进行打包,加快游戏运行效率
13.发布游戏
解决发布过程中遇到的各种问题
14.发布好的apk在安卓手机上测试
15.解决屏幕适配问题(AppDelegate.cpp)
用默认的新建项目里面的AppDelegate的语句就好了,不用写多余的语句,反而会出错
16.更换游戏应用程序图标和游戏应用程序名字
图标和名字都在G:\cocosdata\Cocos\CocosProjects\NoOneDies_st\proj.android\res路径下修改,注意strings.xml里面修改游戏的名字,如果要改成中文的,一定要用VS之类的工具打开,别在记事本里面直接改,不然发布的时候会出现编码错误的问题
17.写项目报告
关于Cocos2d-x开发一个游戏的过程自述的更多相关文章
- 【转】 如何利用Cocos2d-x开发一个游戏
原文:http://blog.csdn.net/honghaier/article/details/7888592 这个问题的结果应该是一个流程.我将从一些长期的PC端游戏开发经验结合Cocos2d- ...
- 【一个开发设想】开发一个游戏向时间管理APP
什么是游戏向时间管理呢? 首先我们要做的是时间管理.为了更好地利用时间,摆脱拖延症. 其次是游戏向.就是利用主线任务.支线任务.每日任务的方式展现,一般来讲,没人会讨厌玩游戏.更何况玩这个“游戏”是为 ...
- Cocos2d-x-Lua 开发一个简单的游戏(记数字步进白色块状)
Cocos2d-x-Lua 开发一个简单的游戏(记数字步进白色块状) 本篇博客来给大家介绍怎样使用Lua这门语言来开发一个简单的小游戏-记数字踩白块. 游戏的流程是这种:在界面上生成5个数1~5字并显 ...
- 如何开发一个简单的HTML5 Canvas 小游戏
原文:How to make a simple HTML5 Canvas game 想要快速上手HTML5 Canvas小游戏开发?下面通过一个例子来进行手把手教学.(如果你怀疑我的资历, A Wiz ...
- Unity3D游戏开发初探—4.开发一个“疯狂击箱子”游戏
一.预备知识—对象的”生“与”死“ (1)如何在游戏脚本程序中创建对象而不是一开始就创建好对象?->使用GameObject的静态方法:CreatePrimitive() 以上一篇的博文中的“指 ...
- 使用Cocos2dx-JS开发一个飞行射击游戏
一.前言 笔者闲来无事,某天github闲逛,看到了游戏引擎的专题,引起了自己的兴趣,于是就自己捣腾了一下Cocos2dx-JS.由于是学习,所谓纸上得来终觉浅,只是看文档看sample看demo,并 ...
- Unity3D开发一个2D横版射击游戏
教程基于http://pixelnest.io/tutorials/2d-game-unity/ , 这个例子感觉还是比较经典的, 网上转载的也比较多. 刚好最近也在学习U3D, 做的过程中自己又修改 ...
- Step by Step 使用HTML5开发一个星际大战游戏(1)
本系列博文翻译自以下文章 http://blog.sklambert.com/html5-canvas-game-panning-a-background/ Languages: HTML5, Jav ...
- 我在开发第一个Swift App过程中学到的四件事
本文转载至 http://www.itjhwd.com/wzkfyigeswiftsjs/ 译者注:本文作者Greg Heo,这是他为讲授iOS 8 App Extensions视频教程而实际使用Sw ...
随机推荐
- ! Undefined control sequence. \CJK@XXX ...endcsname {`#2}{`#3}\CJK@ignorespaces \fi l.43 \end{document}
错误的原因是:你的文本内容超过了一页,需要增加新的一页. 解决问题的方法就是在\end{CJK}或者\end{CJK*}之前加入\newpage,\clearpage或者\cleardoublepag ...
- Creating a Unity Game for Windows 8
原地址:http://www.davebost.com/2013/08/30/creating-a-unity-game-for-windows-8 The recent release of Uni ...
- Linux 监测磁盘常用的工具sar iostat vmstat
Linux 检测内存常用的工具sar iostat vmstat #每秒刷新一次显示2次 sar -d 1 2 iostat -kx 1 2 vmstat -d 1 2 磁盘统计信息解释 tps 每秒 ...
- C语言的不完整类型和前置声明(转)
声明与定义(Declaration and Definition) 开始这篇文章之前,我们先弄懂变量的declaration和definition的区别,即变量的声明和定义的区别. 一般情况下,我们这 ...
- Redhat 5禁止IPv6
Redhat 5禁止IPv6 IPv6还没有全然普及,可是安装完系统之后IPv6是有效的,在一定程度上影响网络性能,所以在我们在全然不使用IPv6的情况下.最好关闭IPv6.如今我们就在本文以完整的 ...
- [Done]ibatis/mybatis: java.lang.NoSuchMethodException
异常描述: Caused by: org.apache.ibatis.reflection.ReflectionException: Error instantiating interface cn. ...
- 双系统 ubuntu装完系统后 丢失原win系统启动项
sudo update-grub 可以尝试以上命令 注意这里是先装的win 后装的ubuntu
- Android自动化框架
Android自动化框架 已有 2085 次阅读2014-8-26 12:19 | Android 几种常见的Android自动化测试框架及其应用 随着Android应用得越来越广,越来越多的公司推出 ...
- 重新安装Drupal?
因个人需要需要重新安装Drupal.如何操纵呢?Drupal是在_drupal_bootstrap_database()函数里面检查是否已经安装过的.检查的依据是有没有$GLOBALS['databa ...
- 从0开始搭建symphony
目标:在本地服务器中运行symphonyX 困难:=.= 基本全是困难…服务器重装了win/ubuntu/centos均不识别网卡,也是醉了. 1.通过Eclipse进行配置. 一开始以为需要单独下载 ...