Finally fixed! Node-Webkit WebGL issue on Win7/8 laptops

Discussion and feedback on Construct 2

Post » Mon Oct 06, 2014 7:13 am

Rebooting seems like a very inconvenient solution. Don't you have a laptop with Win7 and intel HD graphics 3000 on which you could try?
B
17
S
3
G
3
Posts: 89
Reputation: 2,825

Post » Wed Oct 08, 2014 12:05 am

Telyko wrote:Rebooting seems like a very inconvenient solution. Don't you have a laptop with Win7 and intel HD graphics 3000 on which you could try?


Inconvenient or no, rebooting is the standard after many installations. It allows the computer to reinitialize the OS from a clean start with the new files/services running as intended. It's not always necessary to reboot to access/run the newly installed files, but it's good practice.

I don't really have anything of value to add, just wanted to point out Ashley's reasoning.

As an IT guy, this is the troubleshooting process I would try: Clear out the files and .dlls you have in place (make backups of those individual .dll files) and uninstall dx to get rid of residual files. Then reboot, reinstall with dxwebsetup.exe (might as well try elevated/admin priveledge on install) and reboot after install finishes.

If that doesn't make the game work, drop the individual .dlls back into the root project folder. If it works after that, it sounds like the .dlls aren't being accessed properly from the system folder and only from the root project folder?

I dunno. :?

PS: I think I've had problems with dxwebsetup.exe being a pos in the past, getting stuck/not completing installation successfully. I hate web setups.
ImageImageImage
B
16
S
3
Posts: 45
Reputation: 2,188

Post » Wed Oct 08, 2014 1:26 pm

Yeah, welcome to native development. One of the advantages of web delivery is you don't have to deal with all of this. It was a constant thorn in our side when we were working on Construct Classic, too.
Scirra Founder
B
387
S
230
G
87
Posts: 24,249
Reputation: 192,240

Post » Thu Oct 09, 2014 12:37 pm

Hello everyone,

So I did some quick testing in regards to this discussed issue and thought I'd update you all on the results of it all..

First and foremost I removed the two .dll-files from the root folder of my project and ran my build in which webgl did not run successfully.
After this experiment I tried reinstalling directx (by using the included dxwebsetup.exe) as well as rebooting my system. This was not a successful operation either.
Lastly, I tried uninstalling directx all together and reinstalling it once again (as well as rebooting my system). This, however, did seem to do the trick as I now require no seperate .dll files in the root of my build folder for the project to run webgl successfully.

Thus, In conclusion, I'm not entirely sure what to make of all this other than directx seems to be a bit iffy when installing? I haven't a clue why it worked this time as compared to the first time I installed it when it did not. I hope this brings some insight on the issue..
B
40
S
21
G
18
Posts: 153
Reputation: 12,308

Post » Fri Oct 10, 2014 8:44 am

Thank you all for your explanations and testings.

The only thing I think about is the customer experience. You buy a game, you install it, and you play it. No one wants to have to ask people to uninstall / re-install directX, reboot their computer and move a bunch of .dlls around.

I'm also kinda into IT and know very well that rebooting is the standard procedure on a lot of cases but this cannot reasonably apply to the gaming business.
B
17
S
3
G
3
Posts: 89
Reputation: 2,825

Post » Mon Oct 20, 2014 2:58 pm

I just found out something very weird a few days ago about that Laptop performance issue...
I was still getting a pretty bad framerate while playing the game on Node-Webkit directly on the laptop, but I plugged a bigger external monitor (tried both DVI and HDMI outputs) and switched display on that external screen (24") and no more lag at all.
All smooth... It's like the small screen of the laptop has things condensed too much with the scaling and it somehow messes with the engine but it runs perfectly fine on a large screen... Does anyone have another explanation?
B
17
S
3
G
3
Posts: 89
Reputation: 2,825

Post » Tue Oct 21, 2014 1:46 am

@Telyko, that sounds a bit weird - I don't know why the monitor size should make any difference, but perhaps the required driver for the external monitor is is newer and better? Also, just out of interest, on the back of the jerky performance threads, was there a resolution change that went with running on the new monitor?
I only occasionally visit - I'm learning C# for Unity, but c2 is still a respectable game engine imo....
B
73
S
19
G
66
Posts: 2,198
Reputation: 42,188

Post » Wed Oct 22, 2014 8:23 am

@Colludium, you think it's not the same driver that is used wether the active display is on the laptop screen or on an external screen??
It sounds weird indeed.
Yes, there is a change in the resolution between the laptop (1600x900) and the external screen (I actually tried two different monitors with both different native resolutions, one at 1680 x 1050 and the other at 1920 x 1080).
And, the performance difference between laptop screen/external screen is just night and day, I can't understand why.
B
17
S
3
G
3
Posts: 89
Reputation: 2,825

Post » Wed Oct 22, 2014 9:05 am

I've had a laptop with Windows 7 and Intel HD 3000, my game worked just fine with the DXinstaller that is bundled with Node-Webkit when you export it... weird. And I use a few WebGL effects. The only part that was slower in the game was a big area that had like 3 or 4 WebGL effects running at the same time. I fixed it by downscaling the game and changing the quality.

On the other hand, I just can't get the OSX version of Node-Webkit to use the WebGL effects on the Intel HD 3000. I thought that the drivers OSX was using were old, so I was hoping that with Yosemite it would be fixed. Haven't tested yet.
B
122
S
42
G
40
Posts: 846
Reputation: 27,994

Post » Wed Oct 22, 2014 11:30 am

@Telyko, ha! Yes, I was not clear at all. It certainly appears that the driver could be optimised to run external, and perhaps more modern, hardware. Have you tried turning webgl off in the editor and seeing if that makes a difference to the laptop performance? On my older laptop I found even just having webgl on made a huge difference, even with no shader effects.

That would still not explain why the driver is not running each screen the same. Perhaps it self-allocates more memory to running another monitor and that just happens to be what node requires. If you can manually set how much memory the driver uses then, perhaps, increasing that might also help.
I only occasionally visit - I'm learning C# for Unity, but c2 is still a respectable game engine imo....
B
73
S
19
G
66
Posts: 2,198
Reputation: 42,188

PreviousNext

Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 15 guests