下载必备的软件包

  1. 下载并安装WebStorm7。WebStorm7目前的稳定版本是7.0.3。为什么我们选择WebStorm?因为它提供了许多功能,如JavaScript代码的语法完成,调试,语法高亮,版本系统集成等,你可以去WebStorm的更多信息的官方网站。

  2. 从Cocos2d-x的官方网站下载Cocos2D-JS 3.0alpha版本。点此处下载。当你下载了的Cocos2D-JS 3.0alpha版本。你应该把它解压缩到一个合适的位置。在我们的例子中,我把它解压在~/work/cocos2d-js-v3.0-alpha2.~代表你的主目录路径,这在我们的例子中是/Users/linshun

注意:

你也可以通过GitHub上得到的Cocos2D-JS的前沿版本。这里是的Cocos2D-JS GitHub的版本库,最新的开发工作在develop分支。

  1. 下载并安装Chrome34和JetBrains-IDE-support扩展。

好吧,让我们来看看如何配置WebStorm7开发和调试我们的Cocos2D-JS应用。

如何创建新工程

Cocos2d-JS 提供了一个控制台工具,使CH5JSB应用程序的开发更加简单和方便得多。你可以使用它来创建一个新的项目,其发布到Android,iOS,Mac OS或web,它是非常容易使用。

安装Console工具

第一步,在你使用该工具前需要先安装。 请克隆 Cocos2d-JS仓库并跟新所有子模块。在Cocos2d-JS文件夹下打开控制台工具(console),然后在控制台上运行./setup.py。在安装期间你可能需要提供你的 NDK,Android SDK 和 ANT的路径。 注意该工具是使用python开发的,所以你需要在你的机子上安装python 2.7.5或以后的版本(但是不支持 python3)。

**注意: ** 请执行source ~/.bash_profile,使环境设置立即生效。

创建新工程

// 创建一个包含 Cocos2d-x JSB 和 Cocos2d-html5 工程:
cocos new -l js

// 创建一个仅包含 Cocos2d-html5 的工程:
cocos new -l js --no-native

// 在指定的目录创建一个指定名字的工程:
cocos new projectName -l js -d ./Projects

在这个教程中,我们使用cocos new -l js在当前目录创建一个MyJSGame工程。

运行该工程

  • 使用Websever 运行 Cocos2d-JS 工程

    cd ~/work/MyJSGame
    cocos run -p web
  • 使用Cocos2d-x JSB 编译并运行项目

    cd ~/work/MyJSGame
    cocos compile -p ios|android|mac
    cocos run -p ios|android|mac
  • 有用的参数

    -p platform : 平台可以是 ios|mac|android|web.
    -s source : 你的工程目录,如果不指定当前目录会被使用.
    -q : 静默模式,移除日志消息.
    -m mode : debug 或 release 模式,默认是debug
    --source-map: 普通的 source-map 文件. (仅针对Web 平台)

配置WebStorm 进行Cocos2d-JS开发

首先,你应该启动WebStorm7。如果这是你第一次启动WebStorm,它会要求你选择你的个人偏好,比如选择键盘映射。

这是我的WebStorm启动截图:

图1

注意:

如果你是第一次启动WebStorm,最近打开工程部分应该为空。

现在,让我尝试用WebStorm进行Cocos2d-JS开发。

  1. 打开已经创建好的项目 MyJSGame

    正如我们可以从上面的图片中看到,你应该选择Create New Project from Exisiting Files(从已存在的文件创建新项目)

    然后,它会提示你以下选项:

    图2

  2. 选择Source files are in a local directory,no Web server is yet configured(源文件在本地目录,没有配置web server) 并点击Next(下一步)继续

    图3

  3. 在这一步,你应该展开目录树来指定你的MyJSGame源代码放的位置。当你指定了正确的目录,注意Finish按钮仍然是灰色的。

  4. 现在,我们应该设置该目录为项目的Project Root(根目录)。单击项目根目录按钮,Finish(完成)按钮将激活。

    图4

  5. 恭喜你,你已经成功配置了webstorm 开发 Cocos2d-JS 项目。

体验 Cocos2d-JS

当你已经添加了整个的Cocos2D-JS项目目录到WebStorm7。WebStorm将解析所有的Cocos2D-JS源代码。如果你打开MyJSGame/src/myApp.js,你可以得到的准确的语法自动补全的能力。

图5如果你有一个第三方JavaScript库在你的Cocos2d-JS游戏应用程序,你也可以把它添加到WebStorm库来解析并启用实时语法自动补全。

下面是说明:

(可选) 添加第三方库进行解析

  1. 点击Settings(设置)按钮启动你工程的设置对话框:

    图6

  2. 在点击Settings(设置)菜单后,它将弹出如下的对话框:

    图7:

  3. 现在你可以点击Add...按钮,然后会提示你指定你的javascript库的路径。

    图8

在WebStorm中调试Cocos2d-JS javascript

是时候学习调试Cocos2d-JS代码了。

使用JB chrome 扩展连接WebStorm 到 Chrome

  1. 右键点击~/work/MyJSGame下的index.html文件,并选择Debug 'index.html'

    图9

  2. 现在,它会自动打开你的Chrome浏览器。如果你把你的鼠标chrome上面的JB插件, 它会告诉你,它已经连接上WebStrom7.0.3:

    图10

这一步很简单,一旦你已经安装了插件 -“JetBrains IDE support”。当你单击WebStorm调试菜单,它会自动连接到浏览器。它是相当的方便啊!你也可以点击右侧Chrome浏览器的侧边栏的JB图标,它会立即把你带到WebStorm的IDE界面。

在WebStorm中调试javascript代码

返回到WebStorm界面,并双击MyJSGame/src/myApp.js在代码区展示。

  1. 设置断点。用鼠标右键单击myApp.js源代码视窗左边的侧栏。

    图11

  2. 开始调试。 WebStorm会自动启动你的chrome浏览器,并运行示例项目。然后通过点击JB图标回到你的WebStorm。程序将停止在我们刚才设置的断点处。且编辑器将切换到Debug视图:

    图12

  3. 现在你可以做调试之类的事情,单步跳出,单步进入入,单步跳过,继续执行等。

总结

在本教程中,向你展示了基本的步骤来配置WebStorm7进行Cocos2d-HTML5的开发工作,包括配置语法感知自动补全和调试。过程是相当简单明了。如果你对这个教程有任何疑问或建议,请告诉我们。我们将非常感谢你的贡献。

何去何从

在接下来的教程中,我们将通过内置的Cocos2d-JS测试和示例游戏,告诉你如何设置一个新的Cocos2d-JS项目。



cocos2d-js 3.0 RC0 手动绑定 C++调用js,js调用C++ jsbinding

1 JS调用C++

3.0中写这个绑定比较简单,跟ANE调用java如出一辙,一个jscontext,一个jsval,使用cocos2d提供的c++和js变量转换的函数做好转换即可。

cocos2d-js原来就定义好了代码风格:

    sc->addRegisterCallback(MinXmlHttpRequest::_js_register); 
  sc->addRegisterCallback(register_jsb_websocket); 
  sc->addRegisterCallback(register_jsb_socketio); 
  
  #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) 
  sc->addRegisterCallback(JavascriptJavaBridge::_js_register); 
  #endif 
  
  sc->addRegisterCallback(register_jsb_kenko_all); 
  
  sc->start();

我们也顺着这个风格,添加一个函数:register_jsb_kenko_all,这是一个全局函数。

jsb_kenko_auto.h

#ifndef jsb_jsb_kenko_auto_h 
#define jsb_jsb_kenko_auto_h#include "cocos2d.h"std::string os_info(); 
bool jsb_os_info(jscontext *cx,uint32_t argc,JS::Value *vp); 
bool jsb_callback(jscontext *cx,255); line-height: 1.5 !important;">void register_jsb_kenko_all(jscontext* cx,JSObject* obj);#endif

cocos - js (v3.12) 搭建技术文章的更多相关文章

  1. html5 拖拽及用 js 实现拖拽功能的示例代码

    这篇文章主要介绍了html5 拖拽及用 js 实现拖拽,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  2. amaze ui 的使用详细教程

    这篇文章主要介绍了amaze ui 的使用详细教程,本文通过多种方法给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  3. HTML5适合的情人节礼物有纪念日期功能

    这篇文章主要介绍了HTML5适合的情人节礼物有纪念日期功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  4. swift皮筋弹动发射飞机ios源码

    这是一个款采用swift实现的皮筋弹动发射飞机游戏源码,游戏源码比较详细,大家可以研究学习一下吧。

  5. Swift与Js通过WebView交互

    开发环境:Swfit2.3XCode8.2基础概念jscontext,jscontext是代表JS的执行环境,通过-evaluateScript:方法就可以执行一JS代码JSValue,JSValue封装了JS与ObjC中的对应的类型,以及调用JS的API等JSExport,JSExport是一个协议,遵守此协议,就可以定义我们自己的协议,在协议中声明的API都会在JS中暴露出来,才能调用Swif

  6. JSCore swift

    如果双方相互引用,会造成循环引用,而导致内存泄露。以上是Jscore的基本使用,比较简单

  7. Swift WKWebView的js调用swift

    最近项目需求,需要用到JavaScriptCore和WebKit,但是网上的资源有限,而且比较杂,都是一个博客复制另外一个博客,都没有去实际敲代码验证,下面给大家分享一下我的学习过程。

  8. Swift WKWebView的swift调用js

    不多说,直接上代码:在html里面要添加的的代码,显示swift传过去的参数:这样就实现了swift给js传参数和调用!

  9. 在 Swift 專案中使用 Javascript:編寫一個將 Markdown 轉為 HTML 的編輯器

    你有強烈的好奇心,希望在你的iOS專案中使用JavaScript。jscontext中的所有值都是JSValue對象,JSValue類用於表示任意類型的JavaScript值。因此,我們既需要寫Swift代碼也要寫JavaScript代碼。此外,我們還會在JavaScript中按照這個類的定義來創建一個對象并對其屬性進行賦值。從Swift中呼叫JavaScript就如介紹中所言,JavaScriptCore中最主要的角色就是jscontext類。一個jscontext對象是位於JavaScript環境和本

  10. swift - WKWebView JS 交互

    本文介绍WKWebView怎么与js交互,至于怎么用WKWebView这里就不介绍了HTML代码APP调JS代码结果JS给APP传参数首先注册你需要监听的js方法名2.继承WKScriptMessageHandler并重写userContentController方法,在该方法里接收JS传来的参数3.结果

随机推荐

  1. 【cocos2d-x 3.x 学习笔记】对象内存管理

    Cocos2d-x的内存管理cocos2d-x中使用的是上面的引用计数来管理内存,但是又增加了一些自己的特色。cocos2d-x中通过Ref类来实现引用计数,所有需要实现内存自动回收的类都应该继承自Ref类。下面是Ref类的定义:在cocos2d-x中创建对象通常有两种方式:这两中方式的差异可以参见我另一篇博文“对象创建方式讨论”。在cocos2d-x中提倡使用第二种方式,为了避免误用第一种方式,一般将构造函数设为protected或private。参考资料:[1]cocos2d-x高级开发教程2.3节[

  2. 利用cocos2dx 3.2开发消灭星星六如何在cocos2dx中显示中文

    由于编码的不同,在cocos2dx中的Label控件中如果放入中文字,往往会出现乱码。为了方便使用,我把这个从文档中获取中文字的方法放在一个头文件里面Chinese.h这里的tex_vec是cocos2dx提供的一个保存文档内容的一个容器。这里给出ChineseWords,xml的格式再看看ChineseWord的实现Chinese.cpp就这样,以后在需要用到中文字的地方,就先include这个头文件然后调用ChineseWord函数,获取一串中文字符串。

  3. 利用cocos2dx 3.2开发消灭星星七关于星星的算法

    在前面,我们已经在GameLayer中利用随机数初始化了一个StarMatrix,如果还不知道怎么创建星星矩阵请回去看看而且我们也讲了整个游戏的触摸事件的派发了。

  4. cocos2dx3.x 新手打包APK注意事项!

    这个在编译的时候就可以发现了比较好弄这只是我遇到的,其他的以后遇到再补充吧。。。以前被这两个问题坑了好久

  5. 利用cocos2dx 3.2开发消灭星星八游戏的结束判断与数据控制

    如果你看完之前的,那么你基本已经拥有一个消灭星星游戏的雏形。开始把剩下的两两互不相连的星星消去。那么如何判断是GameOver还是进入下一关呢。。其实游戏数据贯穿整个游戏,包括星星消除的时候要加到获得分数上,消去剩下两两不相连的星星的时候的加分政策等,因此如果前面没有做这一块的,最好回去搞一搞。

  6. 利用cocos2dx 3.2开发消灭星星九为游戏添加一些特效

    needClear是一个flag,当游戏判断不能再继续后,这个flag变为true,开始消除剩下的星星clearSumTime是一个累加器ONE_CLEAR_TIME就是每颗星星消除的时间2.连击加分信息一般消除一次星星都会有连击信息和加多少分的信息。其实这些combo标签就是一张图片,也是通过控制其属性或者runAction来实现。源码ComboEffect.hComboEffect.cpp4.消除星星粒子效果消除星星时,为了实现星星爆裂散落的效果,使用了cocos2d提供的粒子特效引擎对于粒子特效不了

  7. 02 Cocos2D-x引擎win7环境搭建及创建项目

    官网有搭建的文章,直接转载记录。环境搭建:本文介绍如何搭建Cocos2d-x3.2版本的开发环境。项目创建:一、通过命令创建项目前面搭建好环境后,怎样创建自己的Cocos2d-x项目呢?先来看看Cocos2d-x3.2的目录吧这就是Cocos2d-x3.2的目录。输入cocosnew项目名–p包名–lcpp–d路径回车就创建成功了例如:成功后,找到这个项目打开proj.win32目录下的Hello.slnF5成功了。

  8. 利用cocos2dx 3.2开发消灭星星十为游戏添加音效项目源码分享

    一个游戏,声音也是非常的重要,其实cocos2dx里面的简单音效引擎的使用是非常简单的。我这里只不过是用一个类对所有的音效进行管理罢了。Audio.hAudio.cpp好了,本系列教程到此结束,第一次写教程如有不对请见谅或指教,谢谢大家。最后附上整个项目的源代码点击打开链接

  9. 03 Helloworld

    程序都有一个入口点,在C++就是main函数了,打开main.cpp,代码如下:123456789101112131415161718#include"main.h"#include"AppDelegate.h"#include"cocos2d.h"USING_NS_CC;intAPIENTRY_tWinMain{UNREFERENCED_ParaMETER;UNREFERENCED_ParaMETER;//createtheapplicationinstanceAppDelegateapp;return

  10. MenuItemImage*图标菜单创建注意事项

    学习cocos2dx,看的是cocos2d-x3.x手游开发实例详解,这本书错误一大把,本着探索求知勇于发现错误改正错误的精神,我跟着书上的例子一起调试,当学习到场景切换这个小节的时候,出了个错误,卡了我好几个小时。

返回
顶部