C2 Performance, let's be honest...

  • Comparing games performance from the high end gamer industry to web based html5 games.

    <img src="smileys/smiley36.gif" border="0" align="middle" />

    I will say there is quite a bit of difference ...

  • Aphrodite Sorry I missed Your post earlier, C2 is a great engine and maybe your right that the focus should be on HTML5 performance in general, rather than C2 in particular...

    So if that's the case who do we contact? ludei? Intel? Google? mozilla? Microsoft? ...

  • Let me quote a post for you

    Of course it's much faster. HTML5 Apps are written in Javascript and interpreted by the browser's JavaScript engine, whilst native apps run in native machine code (IOS "C") or at least as compiled byte code (Android "Java"). Also, native apps have much more possibilities to access the system they are running on (sensors like GPS, camera, file system, ...) through the APIs provided by the OS, whilst HTML5 apps are bound to the HTML5 API which is a small subset.

    url=http://stackoverflow.com/questions/12098595/native-app-faster-than-html5]source

    That explains much of it

    Now listen , don't blame C2 , C2 is a wonderfully optimised engine , blame HTML5 , it's known in the industry that "some" technologies sacrificed performance for portability , now that's the case of Java , but it got heaps better now that it's mature , same thing goes to HTML5 , let it mature a bit ... and stop blaming C2

    + Your card is probably blacklisted or something , and that may be the reason you can't squeeze much performance out of it , remember , if WebGL isn't supported , you won't get accelerated graphics , and that can affect your performance , thus , try your games on better rigs and maybe you'll get better result ! <img src="smileys/smiley1.gif" border="0" align="middle">

  • Couple of quotes from my original post will wrap this up for me, as we seem to be going in circles...but thanks for all the input...

    "I think most devs on here are blind to the real capabilities of C2 as they are running fast gaming spec PC's, many still struggle to push 60 FPS in a game that a Sega mega drive could breeze..."

    "Maybe Java script is just not upto the job, or maybe we are just making excuses..."

  • Couple of quotes from my original post will wrap this up for me, as we seem to be going in circles...but thanks for all the input...

    "I think most devs on here are blind to the real capabilities of C2 as they are running fast gaming spec PC's, many still struggle to push 60 FPS in a game that a Sega mega drive could breeze..."

    "Maybe Java script is just not upto the job, or maybe we are just making excuses..."

    I don't have a fast gaming PC, and still can achieve that, so javascript is potentially up to the job I think, the problem is somewhere else to be found, like why can't it be as well for everyone, why some just don't have all the advantages, that is more here the problem.

    But I can understand your frustration, and also the frustration of people that can't enjoy our games :/

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Couple of quotes from my original post will wrap this up for me, as we seem to be going in circles...but thanks for all the input...

    "I think most devs on here are blind to the real capabilities of C2 as they are running fast gaming spec PC's, many still struggle to push 60 FPS in a game that a Sega mega drive could breeze..."

    If you set the resolution to 320 x 240, strapped the maximum tick rate to 10 dropped the colours to 64 etc, etc then you might get a fairer comparison to these Sega Mega drive games, in reality the Sega Mega drive with its by then obsolete Z80 chip from the mid 70's pumping a Motorola 68000 was not a particularly powerful bit of kit and relied upon heavily optimised games often designed specifically for the platform.

    To suggest that this software is incapable of matching the megadrives performance is disingenuous.

    UOTE]

  • I'll take the excuses , it may be because some people aren't using C2 properly because they don't have much of experience in game development in general ... but that's ok , because C2 is designed to be high level , but don't expect to throw at it two nested loops and figure out why it is slow , moreso , C2 was designed as a game engine and should be able to be able to handle all 2D games , thus going overkill with even the simplest games , like polygonal collisions where a game only need tile-based collisions , thus you can't compare code that was written for a sole purpose and game engines , where that code was only created to run in a way , but C2 created to handle in an all-in-one fashion , and that MAY be the reason why it can be slow for simple games in some people's opinion

    That answers the two quotes above , and remember , you can't compare code to a game engine , it's like comparing a ... uhm ... eh ... ( bad example incoming !) a swiss knife to a kitchen knife , The two of 'em are the same weight , but the latter cuts meat better because it was specially designed to do this task , as of , the swiss knife can do WAY more than just cut meat , and therefore is superior for bigger tasks and such , but that's probably not a good example

    <img src="http://www.thestyleking.com/wp-content/uploads/2012/12/victorinox-swisschamp-xlt-swiss-army-knife.jpg" border="0" />

    <img src="http://www.photo-dictionary.com/photofiles/list/7261/9718kitchen_knife.jpg" border="0" />

  • A sega mega drive is a highly optimized, non variable target platform. Games could be coded to the metal. You can't do that on PC, there are too many layers of abstraction getting in the way. Apis like direct x make it easier to do things, at the cost of raw speed, but developers use it because it would be an utter nightmare trying to support all the different configurations of hardware otherwise.

    On a mega drive you don't have all the other bazillion parts of the os and background programs competing for resources. You don't have to worry about buggy unsupported drivers. You know exactly what you're working with.

    No one's claiming JavaScript is as fast as native - it's not. In my tests (done a whole ago, things might be different now) I recall CC was about 1.5-3 times faster than c2 in event execution speed, and c2 was actually faster at rendering. My computer isn't that fast either, an AMD 4400+ with an Nvidia 9800gt, what I would call probably a low-end computer if it were new, and yet most of my stuff runs fine.

    As I said before, performance is a complex matter. Even c++ games have performance problems with the os and abstraction layers getting in the way, which is why ati's mantle API was created to try to improve that.

  • As of , I wouldn't understand why you would be using C2 if you want megadrive-ish optimisations ? It's probably running assembly , plotting pixels and managing the memory by yourself , and lemme tell you that assembly is real scary , which is the last stop before the ride to hell and loss of sanity

    ...

    format PE console

    entry start

    include 'C:\fasm\include\win32a.inc'

    ;======================================

    section '.data' data readable writeable

    ;======================================

    hello_msg db 'Hello, world!',0

    ;=======================================

    section '.code' code readable executable

    ;=======================================

    start:

         ccall     [printf],hello_msg

         ccall     [getchar]

         stdcall     [ExitProcess],0

    ;====================================

    section '.idata' import data readable

    ;====================================

    library kernel,'kernel32.dll',        msvcrt,'msvcrt.dll'

    import kernel,       ExitProcess,'ExitProcess'

    import msvcrt,       printf,'printf',       getchar,'_fgetchar'

    ...

    source

    edited><editid>Whiteclaws</editid><editdate>2014-02-19 00:31:32</editdate></edited>

  • bertie Booster My comment was slightly tongue in cheek and the fact that we are talking about a console released over 25 years ago, just compounds the point...

    I am fully aware of how the coding and hardware for the both systems is chalk and cheese, indeed laughable to think that a HTML5 game running on an i7 could not surpass that ancient arcitecture, but please I would love to see your rendition of Gunstar heroes...

    Will you be posting it on the Scirra Arcade?

  • Whiteclaws lol at your knife example, I do remember you left C2 development to learn a language, looks like the the ride to hell and loss of sanity is due anytime soon... <img src="smileys/smiley1.gif" border="0" align="middle" /> I take it your doing OK with it?

    I am not talking about a specific project here, from mega drive to dungeon crawler C2 has all the tools required to produce virtually any 2D game...but is java script running in layers capable enough to deal with the computations of game logic?

    Arima, with node webkit "near native performance" is quoted, so is that near native C++ or near native Java script running on only the windows OS layer?

  • there is no near native javascript or near native C++

    C is native ( I don't know about C++ , but I guess that a native language is the language that was used to code the operating system )

    Node-webkit only tries to make native code (C) from the javascript source , it compiles it into C code before runtime , thus making an executable for given platforms , that is what we call an AOT Compiler (Ahead of Time)

    HTML5 is javascript , and it gets interpreted (converted) into native code ( I think , correct me if I'm wrong ) in the browser , WHILE running the application , that's called an JIT compiler (Just In Time) , and that's why it's slower than native C , aka NodeWebkit ...

    I hope this shed a bit of light on Javascript manners

    Moreso , if you want to go more into details ,

    Subscribe to Construct videos now

    And yes , it's going pretty well , I've went from Java to C <img src="smileys/smiley2.gif" border="0" align="middle">

  • Sorry, I worded that wrong, I meant does the performance match C++ running on hardware, Or does it strip the browser layer off comparing it to Code running on windows alone, I always assumed the first, but that's where My programming knowledge runs screaming to C2 lol...

  • Probably not , but I'm no expert in the domain , Ashley , any input ?

    pixel perfick

    Edit : going to add one last link

    Oh and I have 5 years of Game programming experience(?) from which , only 1 of it is hardcoding (Java and C)

  • Whiteclaws Sounds like you know your stuff, thanks for the info, I will check out the Vid...

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