TiAm's Recent Forum Activity

  • You should export your app via Cordova

    and see which one is better.

    Just remember that Cocoon.io is still in beta...

    Beta...yes. Don't overlook that. You don't want Cocoon as your only usable export option.

    Also, Canvas+ does lack a few features vs a full browser engine, such as WebAudio.

    And, technically, Scirra isn't supporting Canvas+ anymore. We already have to tweak some code in the engine to get things working right. Really wish Ashley would at least consider rolling in patches from the community.

    However, if you can live with it's few shortcomings, the perf is wonderful, and with cordova support now, it's very extendable.

    Still, you should try to get your game working passably with cwalk 14, at least on more powerful devices. It still sucks on weaker ones, so don't expect your game to become a smash in third world countries if it's crosswalk only. <img src="{SMILIES_PATH}/icon_e_wink.gif" alt=";)" title="Wink">

    [Cocoon] only supports only ARM

    Crosswalk is slow and big but supports ARM and Intel

    x86? Android?

    . . .

    <img src="{SMILIES_PATH}/icon_lol.gif" alt=":lol:" title="Laughing">

    http://hwstats.unity3d.com/mobile/cpu.html

  • Egyptoon

    1. Canvas+ does not support WebAudio features (filters, positional audio, fft analysis), and occasionally the triggering latency seems to get really bad for me (hasn't done it in awhile though). Other than this, I've never had any issues with sounds.

    2. Get the Canvas+ plugin and use it's built in 'close app' function. Plugin repo is linked in ludei's sig, but here: https://github.com/CocoonIO/cocoon-plugins-c2

    3. First, if you aren't using notepad++...start using notepad++. <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

    https://notepad-plus-plus.org/

    It's around line 434. Make sure you have 'isCocoonJS', not 'IsCocoonJS'...that typo wasted a whole day of my time recently. <img src="{SMILIES_PATH}/icon_razz.gif" alt=":P" title="Razz">

  • If it's a large data set, and performance is an issue, I like to use a four dimensional octree, with a recursive scalar index for the first couple of levels.

    Otherwise, I just use global vars.

  • Anyone tested this in Cocoon.io or CJS with Canvas+?

  • saiyadjin has a very good point. Yes, there are performance issues with browser engines that are not our fault...but I think there are a lot of problems that simply stem from bad design, and a lack of understanding about what limitations mobile presents.

    I think a lot of that bad design stems from people thinking that, with C2, you can be lax about how you design your game, because the editor and the engine will take care of you.

    Well...it won't.

    A lot of people that they can build a full game as easily as a prototype.

    But...you can't.

    It's a lot more work. A LOT more work.

    You have to plan things out, organize your events sensibly, take notes, keep a changelog, modularize your logic to avoid the nightmare of WET design, make sane intelligible comments, keep those comments up to date (harder than it sounds), work out a consistent workflow for asset management, understand best practices for triaging bugs, understand common logic patterns, ...the list goes on...and on...and on.

    The difference: with 'proper' game engines, you have to know most of this stuff to get anywhere in the first place. C2 is more lenient, but because of that people end up with inefficient, redundant, brittle logic that is poorly organized and nigh indecipherable. This still works...until something breaks and they have to try and make sense of their hot mess.

    At this point the whole project generally falls apart, and there is rarely any way to put it back together short of starting from scratch...hopefully with a clearer vision of the goal, and a better understanding of how to put the pieces together.

    //Rant(ish)

  • I'm guessing C2 would not be ideal for that given how large the runtime is. You would probably be better off with a smaller framework.

    But...I am just making a partially educated guess.

  • As an update to my 'paste the screen' quest: I ended up just making a function that, when called, individually pastes every relevant onscreen object in the proper Z order.

    Thankfully, this has worked everywhere I've tried, including on Cocoon.io Canvas+ with WebGL enabled. Also gives me a more flexibility to omit certain objects conditionally.

    tldr: Paster's normal functionality -- pasting objects -- seems to work fine in WebGL.

  • Looks really good; like the mist and waterfall fx too. Thx for sharing.

  • In terms of quality, they should all be the same. Whether C2 would support all those combinations is another story.

    Just looked at some bfxr samples; they are PCM signed 16-bit little-endian (PCM s16le). I'd go with that.

    https://trac.ffmpeg.org/wiki/audio%20types

    Good site for online conversion (yes it looks like a barebone come-on site, but I've used it for years):

    http://www.online-convert.com/

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • iOS 8+ is supposed to work great with phonegap.

    Android is hit and miss. And, given how massively fragmented it is -- on both a software and hardware level -- it will likely remain that way.

    Cocoon.io Canvas+ is hands down the best option for android perf-wise, as it is blazingly fast and smooth, and supports cordova plugs and webGL now. However, you have to change one line in the C2 runtime for it to work:

    https://forums.cocoon.io/t/construct-2- ... g-issue/41

    For targeting more powerful devices, XDK export with Cwalk 14 is probably the best; it's a full browser engine that supports more features than Canvas+. Exports are larger though, and perf can't hold a candle to Canvas+ on weaker devices.

  • Ashley

    Specifically, I was working on a game inspired by the Bangai-O series by Treasure. Having way too much stuff exploding all at once was always a Treasure trademark, as was massive slowdown, sometimes into the single digits. Oddly, this actually served to modulate the difficulty of such games by slowing down more chaotic scenes.

    For my game, things generally stayed at 60fps; at times, though, it would reach as low as 15-20fps, usually for brief periods, but sometimes for up to 30 seconds or so. Mainly due to a custom collision system that involved, at times, a few thousand onscreen actors, sophisticated projectiles with the ability to home and reflect off surfaces, and partially destructible tilemap-based levels.

    For some reason, slowdown handled this way always felt really awesome, as opposed to the awful jerkiness of frame-skipping, which always reminded me of trying to watch youtube on a crappy connection.

    Aside from asthetics, as this game was as much a puzzle game as an action game, having unreliable collisions was simply not an option.

    I still think frame-skip is better for typical games that are trying to maintain a constant framerate, with only brief small dips. However, for games that expect -- or even aim -- to produce sequences of prolonged slowdown, I think a fixed timestep is a more elegant solution.

  • Using the ATP Ads plugin in canvas+, ads still crater my framerate by about half. But my device is relatively weak, so you probably won't notice this on all devices.

    Even in my case...half of 60fps in C+ is still 30fps, and 30fps is a lot smoother than it would be in crosswalk.

TiAm's avatar

TiAm

Member since 24 Nov, 2011

None one is following TiAm yet!

Connect with TiAm

Trophy Case

  • 13-Year Club
  • Email Verified

Progress

14/44
How to earn trophies