Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Gearend Demo

Explore an Abandoned Robotics Research Facility with an interchangeable Robot · By SolarLune

Game runs really, really slow

A topic by xTester created Apr 16, 2017 Views: 1,348 Replies: 8
Viewing posts 1 to 9

Even at the title-screen, which shouldn't be that graphically intensive, but it seems to really chug GPU resources for some reason.

I turned off all the higher level graphical effects that were available in the options, but that didn't really seem to change anything (at the title screen, or in the game).

The only thing that helps is shrinking the window size to something unplayably small.

I would guess that there is some fairly expensive shader code running at all times, which older hardware can't really handle.

My GPU is an nvidia GeForce 9300M GS, which is quite old at this point, but is still an "OpenGL ES 2.0-compatible graphics card" - I think it should be able to render a game like Gearend at 60 fps, provided all the fancy graphical effects are turned off.

... Or not, but then it would probably be a good idea to expand the minimum system requirements to something higher.

Thanks for the info so far - what OS are you using? Is it a desktop or laptop?

64-bit linux laptop.

(1 edit)

What's the distribution?

Manjaro.

Although, I doubt that matters, since the symptoms seem to strongly indicate a GPU related issue.

Are there any non-trivial shaders that run during the title screen? And if so, is there any way to turn them off?

Which CPU does your system have?

Intel Core 2 Duo T5800

The CPU doesn't appear to be a bottleneck in my case, since usage while running the game is at ~30% of both cores.

Given the new profiling capability, I tested again, to see if I can get some useful info. Starting out, in a maximized window:

I can only get 60 fps when I scale it down to something really small:


A few confusing parts here. For one, the bottleneck doesn't actually register in the "render" subsystem, or anywhere else in the game. The time is just measured to be "outside", which could mean that it's something on my system, unrelated to Gearend (although, I can't imagine what), or it could mean that this profiler doesn't properly calculate/include the time spent in the rendering process.

I kinda suspect that it's an issue with the profiler, because, in the first image, it lists a frame time of 67.3 ms, but the "outside" category is 80 ms ... Shouldn't the total frame time be the sum of all other categories, including outside? That seems very wonky.

There are 8 shader switches just on the menu screen. Is that a switch for each material used, or are you running any screen shaders?

It would be nice if we could see what shaders are actually running, and if we could enable/disable them, to see the performance impact. I think that would help us localize these issues much faster.

(1 edit)

Yo, 'sup!

So I've been thinking about what the issue could be. Your information is correct - the bottleneck is showing outside the render system, which implies to me that it's not happening on the CPU's portion of rendering, but rather between the time when the main engine loop ends and when it picks up again. BDX's profiler only profiles inside of the engine loop, but outside the loop, I believe the GPU should probably be actually rendering, which is pretty much what should be expected by your earlier statement (that the game's using 30% CPU, so any slow-down is probably due to the GPU).

I'm not 100% sure what you mean by "see what shaders are actually running". The only shader that should be running on the title screen is the "normal" ubershader to handle lighting, texturing, etc.

I'm working on improving the profiler to show times where the CPU's waiting for the GPU to finish, which might be helpful.