Cocos2D-JS Exporter?

  • Hello there,

    a question Ashley:

    According to the description on Cocos2d website:

    " Cocos2d-Js supports running game code as native application in Cocos2d-x JavaScript Bindings without or with little modification" http://www.cocos2d-x.org/wiki/Cocos2d-JS.

    "All graphics, rendering and physics code will run natively and only the game logic will run in JavaScript. Cocos2d-x uses SpiderMonkey, the Firefox JS virtual machine (VM), to execute JS code.

    The JS VM is extended to support all the cocos2d, Chipmunk and CocosBuilder Reader APIs. So, when you create a CCSprite in JS, you are actually creating an C++ CCSprite. When you create an action in JS, you are actually creating an C++ action, when you create a particle system in JS, you are actually creating an C++ particle system… and so on. This approach is about 10x ~ 20x faster than HTML5 games even when they use accelerators like directCanvas" http://www.cocos2d-x.org/wiki/How_to_bind_C++_to_Javascript

    This framework is opensource and has many games in their showcase, even zynga used it. Can it be used for development of "native" exporter for C2? Does it make sense technically?

  • No, if it's not a real browser engine, not interested. Sounds like just another Javascript engine with cherry-picked features bolted on, which are compatibility nightmares (see: CocoonJS, Ejecta).

    [quote:1e1vcyam]Cocos2d-Js supports running game code as native application in Cocos2d-x JavaScript Bindings without or with little modification

    So they support a full browser-compatible DOM, Web Audio API, WebGL and WebRTC? Hmm, I doubt it if it's not a browser.

    [quote:1e1vcyam]This approach is about 10x ~ 20x faster than HTML5 games even when they use accelerators like directCanvas

    This is probably based on out of date measurements - directCanvas changed name quite some time ago - so it's probably no faster, and likely actually slower on iOS 8 since custom JS engines can't JIT compile.

  • I expected a slightly more positive response, but well, I can understand the situation because of any headache that cocoonjs already offered you Ashley XD.

    What surprised me was the amount of great games published through it, I came to see a Disney there.

    I had the opportunity to test the platform some time ago, and complaints about performance I have none, it handles very well with that part.

    Well, be that at least you could look at this a little deeper into Ashley? Shall not be the first time that someone already asked about cocoos, but it would be cool to do that and give a verdict whether or not it's worth.

    Do not misunderstand me, you gave a very complete answer, but some of them seem just guesses XD

  • Even if we supported it, without a full DOM, Web Audio API, WebRTC etc. etc. it will be an ongoing compatibility nightmare. A big factor in dropping CocoonJS support was the perpetual support headache of users running in to those same missing features again and again. So no, if it is missing such major features, I don't want to support it.

  • I'm confused, Cocos2d-JS, developed by the team behind Cocos2d-x is a combination of "Cocos2d-HTML5", Cocos2d-Javascript and Cocos2d-JSB, sponsored by both Google and Zynga. The idea that this is some frankenstein creation is a bit presumptuous on your part. Cocos2d-JS is designed for developing web games as well as native desktop and mobile apps, which was the big interest in for both Google and Zynga. You can develop with Cocos2d-JS using nothing but a pure HTML5 project if you like, so I don't see how that is any different than what you are doing now.

    If you want more proof that it is not a passing fad, the following game titles were developed with Cocos2d-x and JS:

    Avengers Alliance by Marvel Entertainment

    Star Wars: Tiny Death Star by LucasArts

    Family Guy: The Quest for Stuff by TinyCo, Inc

    Diamond Dash by Wooga

    BADLANDS by Frogmind

    Just because it has the letters JS on the end, everyone assumes it is some mashup, or as you say "cherry-picked features bolted on". Why don't you actual install and look at Cocos2d-JS before making an assumption. I purchased Construct 2, but have not used it since I have moved to Cocos2d-JS as you refuse to support it as an export option.

  • Even if we supported it, without a full DOM, Web Audio API, WebRTC etc. etc. it will be an ongoing compatibility nightmare. A big factor in dropping CocoonJS support was the perpetual support headache of users running in to those same missing features again and again. So no, if it is missing such major features, I don't want to support it.

    With a quick glance in the wiki, I see it supports web audio when on web.

    Does not look like it supports webrtc.

    cocos2d wiki

    Also, looking at the tool, ... perhaps the Cocos2d users can request Cocos2d for a decent importer of an exported html5 web app/game.

    Sounds far more plausible then asking for a 3rd party to make their exports compatible with cocos2ds features/changes.

    They support HTML5, I would have thought they would be able to import some.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • jbardi

    If you want it so badly, you could support your argument by doing some investigation as to what features actually port over.

    Demanding gets you squat, proof gets you everything.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)