Porting to C2 - node webkit - doable?

Discussion and feedback on Construct 2

Post » Tue Jun 18, 2013 5:04 pm

Hi boys & girls,

after some sandboxing with Construct 2, Im seriously thinking in porting my CC project to C2.

To that end, I got several questions to the more experienced C2ers.

-Node Webkit, how good is it? My main target platform still is the non-Win8 desktop. I have to handle a whole bunch of external files, mainly gfx and some data stored in ini-files and hashtables. I still would prefer to address them and be able to load them at runtime. The node webkit object should allow me to do that, and of course I need to load local resource gfx for sprites, tiled bg, etc.

-WebGl vs. PS 2.0 Dx9 - How versatile are the shaders? Anybody has some experience with perfomance letdowns or improvements?

-Plugins - Theres a lot already, Id need some sort of hashtable as mentioned above, line of sight and - there comes the big one - a capable audio engine like the xaudio from CC to handle channels / positioned sounds / music.

-Overall perfomance - I need to handle alot of objects, 80% is scenery stuff that doesnt have to many events going at runtime, but 50 enemies + player + some serious bullet stuff should be doable at 60 FPS v-synced. Of course this is too vague, but is it generally possible at at a 720p resolution?

Finally I am growing tired of the workflow hinderings that one encounters with CC and, if C2 is suitable, a switch would prevent a desaster for the dev process.

If C2 can pull it off, I promise you a superb title that will of course skyrocket C2s already flawless reputation ;)

Thanks
The Colonel
Image
B
17
S
5
G
1
Posts: 122
Reputation: 1,930

Post » Tue Jun 18, 2013 5:16 pm

I'm a convert from classic, myself and in the last six months C2 has really impressed, I am currently doing some tests with a 32000 wide layout granted a sparse backdrop but with 500-600 objects running around all shooting, moving and calculating, I get a very solid 60 FPS with node, compared to 30 fps in firefox and approx 50-60 with chrome...

The fact that C2 is still developed and the stable editor more than make up for any features not yet implemented into C2...Pixel perfick2013-06-18 17:17:03
As long as I can move left, right and fire, I'm Happy...
B
42
S
15
G
11
Posts: 655
Reputation: 12,260

Post » Tue Jun 18, 2013 5:25 pm

Ashley made a performance test around CC & C2 and to our biggest surprise
WebGL is way faster than CC native DX9 !

Here is the blog entry

Otherwise , the shader database is currently really big with more than 70 WebGL effects

Also , I think ... There's currently positionned audio in the audio plugin (?)

Cheers ...
B
41
S
17
G
17
Posts: 2,247
Reputation: 17,436

Post » Tue Jun 18, 2013 5:38 pm

Node-Webkit is as good as the Chrome browser (it's almost the same thing), which is great because Chrome has generally been the best and fastest browser for HTML5 games. (Firefox has done well to catch up lately though!) Our HTML5 renderer in Chrome is on par with CC's DirectX9 native engine performance-wise.

The node-webkit plugin should allow all the file access you need. The Dictionary object is the new name for hash table. Don't use INI, it's an ancient format from Windows 3.1; the Dictionary object is a better choice anyway.

WebGL shaders are probably as good as or better than DX9 PS2 shaders. DX9 PS2 level was specified in 2004; the WebGL spec was started in 2011. They also work on mobile and Mac and Linux desktop.

We recently added line-of-sight, and I don't know if you've checked out C2's Audio object lately, but it includes positioned sounds and advanced audio effects which should make it on par with XAudio2 - but again, cross platform.

Performance shouldn't be a problem, except for desktop systems with out of date graphics card drivers (which can sometimes fall back to software rendering). Usually a driver update resolves any problems.

I would seriously strongly recommend you go with C2 instead. I do think its desktop exporting via node-webkit is comparable to Classic's, with the added bonus it runs on Mac and Linux, in browsers, on mobile...
Scirra Founder
B
383
S
224
G
86
Posts: 24,085
Reputation: 190,366

Post » Tue Jun 18, 2013 5:42 pm

I have noticed lag spikes with shaders in C2 - not sure if it's just my machine, or a more widespread issue. Of course, that's with many layer effects and at fullscreen resolution.
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,664

Post » Tue Jun 18, 2013 9:53 pm

Alrighty, sounds good so far.

Some additional stuff: Does the node webkit support real full screen? (full screen, not maximized window).

Look & feel - wise, how will the node webkit export be presented. As there is no executable, how is the data compiled / stored upon export?
Image
B
17
S
5
G
1
Posts: 122
Reputation: 1,930

Post » Tue Jun 18, 2013 10:01 pm

Visually is is real full screen however apparently behind the scenes it isn't (i.e. it still renders background windows).

There is an .exe file on export, however it uses some external files in the same folder. This isn't abnormal, most games do this.
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,664

Post » Tue Jun 18, 2013 11:27 pm

While it uses a fullscreen borderless window, as long as the window manager is hardware accelerated (it is in win 7, 8 and vista when aero is turned on) there seems to be no performance difference between that and 'true' fullscreen mode. Another benefit is I hear fullscreen borderless windows are more stable than true fullscreen, as alt tabing in and out of true fullscreen mode can sometimes cause crashes.
Moderator
B
92
S
32
G
33
Posts: 3,005
Reputation: 27,582

Post » Wed Jun 19, 2013 12:30 am

The only benefit I see (and desire) with true fullscreen, is on older machines, I find there is a performance boost the smaller the window is, meaning the user has to have it windowed and small if they have a bad computer.
Having True fullscreen would, since it changes the monitor resolution, allow the user to easily set the resolution to 640x480 or something, and the game can scale to the resolution, thus giving performance boost. As of now, I have to manually change the resolution to a lower one on an older machine, which sometimes messes up the icons on the users desktop and is just troublesome to do.
B
51
S
20
G
10
Posts: 571
Reputation: 9,819

Post » Wed Jun 19, 2013 12:36 am

Yeah, true. It would be a nice option to have, but at least there's some method available for users with old graphics cards.
Moderator
B
92
S
32
G
33
Posts: 3,005
Reputation: 27,582

Next

Return to Construct 2 General

Who is online

Users browsing this forum: Yahoo [Bot] and 11 guests