相信每个人都有一些自己的项目开发习惯,在·开篇·中我主要是会提到一些项目的配置问题.无论做一款什么样的手游项目,我们总是会从需求的角度出发去选择开发引擎,开发工具等一些列的工具去完善我们的开发环境.当然,对引擎的选择是很关键的(我们不讨论的需求,因为毕竟不是针对真是的展品,从学习交流的角度),不过我们这边只会选择cocos2d-x.

对于cocos2d-x,我总是赶不上官方更新的脚步.官方更新cocos engine(废除掉cocostudio以后的新东西),cocos2d-x engine开发包,cocos ide的脚步比较快,我选择的是cocos2d-x 3.3final.开发工具选择的不是cocos ide,而是一般的文本编辑器,根据个人爱好吧,我选用的是sublime text, 也可以选用ue,或者是ms新发出的code.前期需要的就只需要这么多到了.因为选用的版本是cocos2d-x 3.3 final.所以coco engine可能是没法用的.在后续的部分,我会给出一个我自己的解决方案,也可以先透漏一下,Ui部分自己写一个lua层面的中间解析库.动画部分用cocostudio v1.6来做就好了.这个呢就先带过吧.

上面也是透漏了,我不会选用单纯的c++去做,主要的原因是我对c++0x11不熟悉,一直没时间去学这个东西.从效率的角度出发,当然是c++要更快,更快也是要付出代价的,对程序员的素质要求也就更高.脚本的支持也是很多的,还是选用lua吧,其他脚本还要花时间去学习,虽然不是很难,可是还是在熟悉的领域做事比较舒服.废话也就这么多了,下面是要配置一下我们的win开发环境。

我不是高富帅,只有x86机器,所以我们来配置一下window开发环境.具体的文档可以参考cocos2dx-3.3/tools/bindings-generator/README.md文档. 对于一直使用cocos ide的同学可能有些人没有配置过,不过没关系,都是点点鼠标的事情,没什么难的.

下面我们创建一个自己的项目, 我给这一系列的项目起了一个名字叫做 firework. 这个名称的由来很简单, 就是想简单一点. cocos2d-x提供了终端脚本来创建项目,不过要在CMD穿越一大堆的目录还是略显蛋疼, 所以我就写了几个WIN32批处理脚本.

 @echo off
@setlocal :start set PYTHON_BIN=python
set COCOS_BIN=E:\cocos2d-x-3.3\tools\cocos2d-console\bin\cocos.py
set PROJECT_NAME=firework
set PACKAGE=com.respawn.firework
set LANGUAGE=lua
set DST=../ %PYTHON_BIN% %COCOS_BIN% new %PROJECT_NAME% -p %PACKAGE% -l %LANGUAGE% -d %DST% pause

这个脚本很简单, 使用的时候可以先创建这样的文件目录结构.

-- c2dx-firework-lua(我的项目根文件夹)

-- scripts

-- create-project.cmd

-- compile-win32.cmd

-- compile-android.cmd

-- firework(create-project.cmd创建的cocos2dx项目)

创建好项目之后就是编译咯. 我给出我的编译脚本.也就是上面的(compile-win32/android.cmd)

 @echo off
@setlocal :start set PYTHON_BIN=python
set COCOS_BIN=E:\cocos2d-x-3.3\tools\cocos2d-console\bin\cocos.py
cd ../firework
%PYTHON_BIN% %COCOS_BIN% compile -p win32 -j2 pause

相同, compile-android.cmd则直接修改上面的编译平台就行了.这个大家应该都是知道的.至于是不是用多线程编译就视自己的机器情况而看吧.

编译好之后我们在scripts同级目录创建一个文件夹, 用作WIN32开发的根目录. 因为win32编译之后的文件目录层次有点深了, 每次都需要一点点点到那边很费劲. 所以干脆就移除来吧. 另外这么做的目的也是方便SVN/GIT管理.总不能把所有firework目录的东西都上传到版本仓库吧.太大了, 使用过得就都知道.好的, 我加上了版本号,创建了一个firework-v1.0的文件夹.在下面又创建了两个子文件夹也就是apk/和win32-build.

-- c2dx-firework-lua(我的项目根文件夹)

-- scripts

-- create-project.cmd

-- compile-win32.cmd

-- compile-android.cmd

-- firework(create-project.cmd创建的cocos2dx项目)

-- firework-v1.0

--apk

--win32-build

我们将编译好的runtime下面的文件以及库对用WIN32都拷贝到win32-build下面.如果打包了那就把apk拷贝到apk下面.然后firework-v1.0就作为仓库的一个子目录上传就好了.这样无论是同步还是更新的速度都很快.好了,开篇的文章就是这么多了.

`cocos2dx非完整`开篇的更多相关文章

  1. `cocos2dx非完整` 添加xxtea加密模块

    在上一篇文章中,我已经开始着手写自己的模块,也就是fw部分.其中上一篇文章中完成的是lua部分的配置解析部分,涉及一点点平台方面的封装.这一片文章我来说明一下我是如何处理cocos2dx资源加密的.首 ...

  2. `cocos2dx 非完整` UI解析模块

    昨天在cocos2dx的一个群里,遇到一位匿名为x的朋友询问的问题,是关于ui的.他使用c++写了不少的ui封装节点,用来实现游戏中的各种不同效果.然后现在想改用lua,于是尝试使用最小代价去复用自己 ...

  3. `cocos2dx非完整` 日志模块 增量更新

    在上一篇文章中,说到了"流程"的由来,以及我对流程的使用. 这一片就是对流程的应用.前一篇文章中说到了三条流程 check_log_measure, check_env_measu ...

  4. `cocos2dx非完整` 游戏架构缩影 添加启动流程

    这期的话题可能不是很好, 我没有想到很好的词句去更好的表达. 我一直都是很固执的认为, 同一类型的游戏,在开发做的前期工作上面其实都是可以复用的,也就是大同小异的.从游戏启动,启动日志,启动检查,检查 ...

  5. `cocos2dx非完整` 开始自己的FW模块

    上一篇的文章中说到了一些个人习惯的东西以及一些简单的项目配置,这一篇文章我们来进一步完善一些东西.首先,打开编译以后的客户端执行,会看到一大堆的fileutils加载luac文件的提示,在终端显示一大 ...

  6. 新版本ffmpeg解码非完整H264帧失败

    按照ffmpeg/doc/examples/decoding_encoding.c中video_decode_example解码H264,新版本ffmpeg解码非完整H264帧,定量读取数据直接给av ...

  7. `fw服务端非完整` 工程开发初期的工作

    前面写到了一些关于cocos2dx在开发中的一些模块以及一些解决方法,那些都属于本人的个人简介和个人倾向的解决方案.最近这几天我完善了一下ui解析的部分,当然也只是抽出一点点时间去做的这件事情.我添加 ...

  8. hadoop学习day1环境配置笔记(非完整流程)

    hdfs的工作机制: 1.客户把一个文件存入hdfs,其实hdfs会把这个文件切块后,分散存储在N台linux机器系统中(负责存储文件块的角色:data node)<准确来说:切块的行为是由客户 ...

  9. 利用樹霉派採集溫濕度上傳到OneNET(非完整,僅參考)

    看圖: Python代碼: #env /usr/bin/python3 #author Bruce import RPi.GPIO as GPIO import time import json im ...

随机推荐

  1. attilax.java 注解的本质and 使用最佳实践(3)O7

    attilax.java 注解的本质and 使用最佳实践(3)O7 1. 定义pojo 1 2. 建立注解By eclipse tps 1 3. 注解参数的可支持数据类型: 2 4. 注解处理器 2 ...

  2. HTML5游戏开发进阶指南(亚马逊5星畅销书,教你用HTML5和JavaScript构建游戏!)

    HTML5游戏开发进阶指南(亚马逊星畅销书,教你用HTML5和JavaScript构建游戏!) [印]香卡(Shankar,A.R.)著 谢光磊译 ISBN 978-7-121-21226-0 201 ...

  3. 语音直播是否真能让国内网红向“Creator”转变?

    2016年,“直播”.“网红”成为了互联网领域最热门的关键词,一时间整个国内市场涌现出了数百家直播平台,而一些视频网站.新闻客户端.社交平台.电商平台等也纷纷推出直播功能.不仅仅只是创业者们像发了疯似 ...

  4. Liferay7 BPM门户开发之34: liferay7对外服务类生成(RestService Get Url)

    在liferay7中开发不依赖Service Builder的对外服务类,非常简洁,只需要2点注解: 在类的前部定义: @ApplicationPath("/PathXXX") 方 ...

  5. Android 实用工具Hierarchy Viewer实战

    在Android的SDK工具包中,有很多十分有用的工具,可以帮助程序员开发和测试Android应用程序,大大提高其工作效率.其中的一款叫Hierachy Viewer的可视化调试工具,可以很方便地在开 ...

  6. 使用Jsoup 爬取网易首页所有的图片

    package com.enation.newtest; import java.io.File; import java.io.FileNotFoundException; import java. ...

  7. text-size-adjust属性

    在慕课上无意中看到-webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%;这两段代码,居然发现自己完全不理解,然后就去问度娘了,以下是一些 ...

  8. S2SH框架的集成

    S2SH框架的集成 20131130 代码下载 : 链接: http://pan.baidu.com/s/1sz6cQ 密码: 513t 这一个星期的时间里,学习SSH框架技术,首先因为之前的项目用到 ...

  9. 远哥谈 使用WebSocket开发在线实时看远程服务器log日志的工具

    我们开发软件的,通常会有一个测试环境/开发环境,但是系统开发完成后,还会有一个生产环境,也叫正式环境.正式环境我们一般是不能让开发人员去远程登录和维护的,一般正规的生产环境是专门的负责人员去负责更新, ...

  10. MRBS, meeting room manager system,会议预定管理系统

    MRBS,会议管理软件,新增权限控制,周期性例会管理等. 下载地址 http://www.dotnetcms.org/mrbs/mrbs.rar