cocos2d用什么codeide,Coco2d
Cocos code ide怎么配置使用
基本需求:
安装JDK。Windows用户需要选择正确的版本,比如,你如果下载的IDE是64位版本,那么你的JDK也需要是64位的版本。
Windows用户安装Python
2.7。Mac OS X已经集成了python 2.7,所以可以跳过这一步。
请下载Cocos2d-x
3.2来开发Cocos2d-x Lua游戏。
请下载Cocos2d-JS
3.0-RC2来开发Cocos2d-x JavaScript游戏。
注意:
Cocos Code IDE是在Cocos2d-x 3.x/Cocos2d-JS 3.x的基础上开发的,因此,老版本的引擎(Cocos2d-x
2.x)不能在IDE上正常使用。当前版本(1.0.0-RC1)适配了最新的引擎版本(Cocos2d-x
3.2和Cocos2d-JS 3.0 RC2)并且能够向前兼容旧的3.x版本,为了更好的使用IDE,请下载兼容的引擎版本。
引擎和所创建的工程所在的路径都不能包含非英文字符,即路径中不能包含中文。
附加需求:
在iOS的模拟器上调试
确定iOS模拟器已经安装。
通过USB线来调试Android设备
确定Android
SDK已经安装。
如果你想进行定制,你需要下面的工具:
Mac OS X/iOS: XCode 5.0 or above
Windows: VS2012
Android: Android SDK, NDK r9d
version, ANT
通过Code IDE来开发已经存在的游戏
如果你的游戏使用Cocos2d-x 3.x或者Cocos2d-JS 3.x,你可以很轻易的使用Code IDE。你只需要:
通过 IDE 创建一个对应的 Cocos Lua/JavaScript 示例工程
用项目资源(脚本、图片等)替换掉示例工程中的资源
cocos2dx js 使用什么开发
1.Cocos2d-JS引擎
Cocos2d-JS引擎是Cocos2d-x的JS版本,它极大简化与整合的API设计使得游戏开发变得前所未有地轻松。依托Web平台使Cocos2d-JS享有高效的开发测试环境,命令行工具提供三步就可以搞定Web与Native全平台部署的便捷功能。
2.Cocos
Code IDE
Cocos
Code IDE是基于 Eclipse的跨平台
IDE,可帮助开发者便捷地创建游戏工程、编写调试代码、实时查看修改效果、并最终直接发布成可上架的安装包。
Cocos2d-x、Quick-Cocos2d-x、Cocos Studio、Cocos2d-js、Cocos Code IDE的区别
Cocos2d-x是跨平台的框架,用C++,包括windows、ios、android、linux等都可以移植。
Quick-Cocos2d-x是在Cocos2d-x上加了一些功能,具体我也没用过,我只用过Cocos2d-x。
而Cocos2d-js是用JS语言,主要是用于网页端游戏的开发。
Cocos Studio主要是游戏界面和动画的设计。
Cocos Code IDE是cocos官方发布的编程开发环境。如果不用官方的,我们可以用eclipse和vs等其他IDE,配置好之后进行开发。
Cocos2d-x的2.X版本和3.X差别还挺大的,两边的代码不太能兼容,需要一些小修改才能运行。
纯手打。。。
如何使用Code IDE调试Cocos2d-JS开发的游戏
支持的调试环境
在 Windows 上你可以调试Windows和Android游戏,在 Mac 上你可以调试Mac、iOS和Android游戏。我们以 Mac 作为开发环境来演示 Code IDE 的使用,Windows上的流程和这里所介绍的几乎一样,不再赘述。
先决条件
如果你还没有安装好 Cocos Code IDE,请先参考:Cocos Code IDE
IDE配置
基本设置
打开工具的 Preferences 页,切换到 Cocos/JavaScript 子页面,选择你刚刚下载 Cocos2d-js 3.x 作为 JavaScript Framework。:
额外设置
假设你发现我们提供给你的预编译的Android runtime不能满足你的要求,你就需要重新定制,那么你就需要提供给 IDE 几个 Android 编译需要用到的工具。这可以通过打开 Preferences/Cocos 页面进行配置。
运行、测试游戏
1. 新建一个名为 CocosJSGame 的 Cocos JavaScript 工程
2. 点击工具栏上的 debug 按钮
3. 默认情况下脚本会运行在我们提供的 mac 版本预编译 runtime 上。为了简单起见,我们不对默认值进行任何改动。如果你想要在其他我们支持的目标平台上调试程序,可参考下文的“在其它目标平台上调试”
如何调试
断点支持
可以在 javascript 脚本文件中增加断点
当断点被触发时选择 “Yes” 打开 Debug Perspective 透视图,可以看到很多与调试相关的视图,调用栈、变量和断点等等。
支持 Step over, Step into, Step out 等调试方式。
代码热更新
想更改右下角的 close 按钮的位置?closeItem.attr 方法是控制该按钮的显示位置的。
closeItem.attr({
x: size.width - 20,
y: 20,
anchorX: 0.5,
anchorY: 0.5
});
修改“x”上面的值,把"size.width-20" 改成 ""size.width/2" 然后保持修改, 你会发现,在没有重启的情况下 close 按钮的位置已经改变了,在屏幕底部的中间!
在其他目标平台上调试
通过工具栏上的打开 Debug Configurations 打开 Debug Configurations 页面
在页面的左侧,选择之前我们为你创建的名为CocosJSGame的configuration
在 iOS Simulator 上调试
选择iOS Simulator单选项
选择正确的runtime app
点击 Debug 按钮,预编译的 runtime 会被自动安装到模拟器中
在iOS设备上调试
首先,你需要一个 runtime IPA, 从 1.0.0-rc1 版本开始,你可以通过 Code IDE 自己编译一个,然后安装IPA到设备中
在 iOS 设备上启动 runtime
在 "Debug Configuration" 界面选择 Remote Debug 单选项
platform 选择 "iOS"
将设备的 ip 地址填写在 Device IP 上
最后点击Debug按钮
在 Android 设备上使用 ADB 模式调试
在 "Debug Configuration" 界面选择 Android ADB Mode 单选项
选择正确的 runtime apk
点击Debug按钮
IDE 会自动安装配置中的 runtime apk 到你的连接设备上并启动runtime开始调试
在 Android 设备上使用网络模式调试
手动安装 runtime 到你的设备上,它被存放在 CocosLuaGame/runtime/android 目录中
手动启动 runtime,停留在 waiting 页面
在 "Debug Configuration" 界面选择 Remote Debug 单选项
platform 选择 "Android"
将设备的 ip 地址填写在 Device IP 上
点击Debug按钮
如何调试C++
从 1.0.0-rc1 版本开始,支持使用 XCode/Visual Studio 调试 C++ 代码的同时使用 Cocos Code IDE 调试 C++ 代码。
以调试 Mac 为例:
如果你还没有 C++ 代码,那么需要先添加(右击工程,Cocos Tools-Add Native Codes Support...)
使用 Xcode 打开 frameworks/runtime-src/proj.ios_mac 工程,并启动调试
回到 Cocos Code IDE,打开 "Debug Configuration" 页面,选择 Remote Debug 单选项
platfrom 选择 “Mac”
Target IP 填写 "127.0.0.1"
点击Debug按钮
如何安装和设置Cocos Code IDE
Cocos Code IDE进行Cocos2d-x Lua Javascript游戏发、调试、发布完整工具组件支持Cocos2d-x v3.x, Cocos2d-js v3.x及版本
载Cocos Code IDE
Windows用户
使用面命令查看Java版本
java -version
输信息:
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)
Java已经安装通输信息查看32位64位选择确IDE版本
安装
基本需求:
安装JDKWindows用户需要选择确版本比载IDE64位版本JDK需要64位版本
Windows用户安装Python 2.7Mac OS X已经集python 2.7所跳步
请载Cocos2d-x 3.2发Cocos2d-x Lua游戏
请载Cocos2d-JS 3.0-RC2发Cocos2d-x JavaScript游戏
注意:
Cocos Code IDECocos2d-x 3.x/Cocos2d-JS 3.x基础发版本引擎(Cocos2d-x 2.x)能IDE使用前版本(1.0.0-RC1)适配新引擎版本(Cocos2d-x 3.2Cocos2d-JS 3.0 RC2)并且能够向前兼容旧3.x版本更使用IDE请载兼容引擎版本
引擎所创建工程所路径都能包含非英文字符即路径能包含文
如何使用Cocos Code IDE和Cocos2d-x开发《一个都不能落下》游戏
1.创建新工程
打开Cocos Code IDE,切换到Lua工作环境
选择菜单,新建一个Cocos Lua项目,输入项目名:NoOneLeftBehind。
点击下一步设置屏幕方向和分辨率,确认完成
这个时候你就可以点击运行按钮,没有问题的话示例demo就会弹出。
因为分辨率被我们更改过的关系,游戏画面有点变形。
2.游戏逻辑
现在我们就可以往游戏项目中添加自己的代码了。由于游戏的代码细节并不是本文的重点,所以这里只简单地介绍《一个都不能落下》的实现原理。整个游戏项目源码可以在我的Github上下载。
A.main.lua是游戏的入口,在main()函数中我们可以找到场景跳转的代码,这在接口上和Cocos2d-x是保持一致的,因此我们可以很容易上手。在这里我们更改第一个场景为主菜单场景。
--create scene
local scene = require("MenuScene")
local menuScene = scene.createScene()
if cc.Director:getInstance():getRunningScene() then
cc.Director:getInstance():replaceScene(menuScene)
else
cc.Director:getInstance():runWithScene(menuScene)
end
B.MenuScene.lua是游戏的主菜单,四种难度的游戏模式可以在这里进行选择。你可以用下面这种方式创建一个menu。
--create menu
local function menuCallbackOpenNormal()
cc.Director:getInstance():replaceScene(require("GameScene").createScene(2))
end
local normal = cc.MenuItemImage:create("normal.png", "normal.png")
normal:setPosition(0, 150)
normal:registerScriptTapHandler(menuCallbackOpenNormal)
...
local menu = cc.Menu:create(normal, nightmare, hell, inferno)
self:addChild(menu)
C.GameScene.lua是游戏的主场景,通过传进来的heroCount设置同时显示几个hero。
--add hero
function GameLayer:addControllers()
local visibleSize = cc.Director:getInstance():getVisibleSize()
local startY = 30
local gap = (visibleSize.height - startY) / self._heroCount
for i=1, self._heroCount do
local controller = require("HeroController").createController(self, startY + gap * (i - 1))
table.insert(self._controllers, i, controller)
end
end
D.在这里我们对英雄和他作用的环境进行了封装。然后在GameScene的每一帧调用HeroController的onUpdate函数,在这个函数中检测一个随机定时器来判断是否应该生成一个新的障碍物。
-- create block
function HeroController:onUpdate()
self.frameIndex = self.frameIndex +1
if self.frameIndex = self.nextKeyFrameIndex then
local block = require("Block").new()
block:init()
self._layer:addChild(block)
block:setPositionY(self._positionY + block:getContentSize().height / 2)
self:resetTimer()
end
end
E.物理引擎。Hero和,Ground,Block的碰撞这里采用了Cocos2d-x集成的物理引擎。以下代码反映了Hero和Block的碰撞检测。
-- collision detection
self.touchListener:registerScriptHandler(onTouchBegan,cc.Handler.EVENT_TOUCH_BEGAN)
cc.Director:getInstance():getEventDispatcher():addEventListenerWithSceneGraphPriority(self.touchListener, self)
local function onContactBegin(contact)
self:unscheduleUpdate()
cc.Director:getInstance():getEventDispatcher():removeEventListener(self.touchListener)
cc.Director:getInstance():getEventDispatcher():removeEventListener(self.contactListener)
cc.Director:getInstance():replaceScene(require("GameOver").create(self._heroCount, score))
end
self.contactListener = cc.EventListenerPhysicsContact:create();
self.contactListener:registerScriptHandler(onContactBegin, cc.Handler.EVENT_PHYSICS_CONTACT_BEGIN);
local eventDispatcher = self:getEventDispatcher()
eventDispatcher:addEventListenerWithSceneGraphPriority(self.contactListener, self);
F.Block类,封装了障碍物,每一帧向左移动。如果超出了屏幕则删除。
--move the block
function update(dt)
self:setPositionX(self:getPositionX() - 3.5)
if (self:getPositionX() 0) then
self:unscheduleUpdate()
self:removeFromParentAndCleanup()
end
end
self:scheduleUpdateWithPriorityLua(update, 0)
3.各平台打包
点击打包按钮,
如果没有添加本地代码,会提示添加本地代码。
A.Android打包
选择打包为APK,选择debug签名或者自定义签名,选择SDK版本,确认生成。
B.iOS平台打包
选择打包为IPA,选择证书和平台,确认生成。