sqiddster's Forum Posts

  • No, collision would be one of your issues.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • It's potentially possible in a very limited sense with the Canvas plugin but honestly C2 isn't your best option for vector stuff like this.

  • Ashley fair enough, but it will probably need fine-tuning.

    Did you try my demo with GPU lag?

  • Ashley I agree 45fps is too high a benchmark, however, as this thread has brought up, 45fps is not the same in all circumstances. Spikes, unevenness etc are the main issue. If we were able to make 30fps consistent it would be perfectly fine.

    I can't propose new values for the dt caps, but I'd love to be able to play around with lower caps. 0.0167 is the ideal value, so it would be great to be able to cap it at, say, 0.02. The fact is, some games (including mine and Aurel's) have enough fast motion that it becomes problematic to remain framerate-independent at high dt values. Slowing down the game might actually be better.

  • Ashley I agree with you, and I'm sure most games are fine with low FPS in this regard. HOWEVER, small lag spikes are common and these play havoc with dt - whenever there's a lag spike, dt is set to its lowest value and objects teleport everywhere.

  • Ashley

    1) GPU blacklisting is definitely not the problem. I've checked this, I'm on a new laptop with the latest drivers, and I've tried the test both on the GPU and the integrated graphics.

    2) I had a look at the other browsers and the lag difference doesn't seem to be there at least on my PC. So it's a Chrome/NW problem?

    3) What would C2's profiler say that would be useful? It doesn't measure GPU at all, just CPU?

    I don't think anyone would propose artificially throttling FPS like that - you're making it sound like HTML5 is permanently locked to 60fps? I don't remember reading it anywhere but I guess it could be true.

    The issue brought up by Aurel is a good one and I'd urge you to take a look at allowing us to cap dt at a lower value to prevent collision issues. This isn't directly related to the issue in this thread but does play off it.

  • Those who tested with no results - you have to wait a few seconds for the lag to kick in. Change the loop iterations if it doesn't kick in fast enough.

  • OK, so I've gone and created a test project using Arima's suggestion.

    Initially I just did the collision check method as Arima said, but when I tested it I noticed that at 30fps the game was pretty much fine.

    So, I tried creating lag by a different method (rendering lots of 1% opacity rectangles) and immediately the difference was super obvious. There's significant input delay when the lag is on the GPU side.

    Can anyone confirm? (Capx attached)

  • Ashley reckon we could get a comment on this? Is this something fixable?

  • Arima yeah, that could work, but by the replies on this thread it seems like it is a well-acknowledged problem. Do you get this issue in your games?

  • Hey all,

    So something I've been noticing in my game is that when C2 is reporting framerates lower than 60fps, the game becomes crippled extremely quickly. Any framerate below 45fps severely hampers gameplay, and 30fps is completely unplayable.

    Why the heck is this? Plenty of games pull off ~30fps completely fine, but for some reason, C2 games simply cannot cope. Is this a HTML5 thing?

    I wish I could provide a more concrete example but since there's no way to manually throttle FPS in C2 I don't see a way to do it.

    Am I the only one who notices this? Can anyone else with a fast-paced game confirm this?

  • Thanks Ashley!

  • C-7 I've managed to do it (I think) and I've sent Ashley an email. You can look at the .caproj in a notepad editor to show exactly what third party elements you are using.

  • Aphrodite I have done the low quality resolution change thing, but the issue with that is that it makes the whole game look like rubbish if the res is too low.

    linkman2004 I don't have any experience outside of C2, but I don't see why rendering a layer at low res, then scaling up, is more expensive than rendering the layer at high res.

    Regardless, it's definitely an issue in an engine that doesn't support vector rendering. Even a full screen colour or fade is a huge load on a GPU.

  • I've been running into quite a few performance issues with my game lately, especially on integrated GPU's, and most of them are solved by heavily reducing resolution of the game (i.e. changing fullscreen scaling to low quality, then scaling the canvas down while keeping the window the same size). This leads me to assume that GPU fillrate is the primary issue.

    For those unfamiliar, AFAIK fillrate is simply the amount of pixels the GPU has to draw - at higher window sizes this increases exponentially and can be very straining if you have a lot of layers of content, as I do in my game.

    A great solution to this issue would be being able to render objects/layers at a smaller resolution, then having the engine do a cheap scale-up. Many layers, e.g. backgrounds, and many objects, e.g. full-screen overlays, do not need to be drawn at full scale resolution all the time. Currently there's no way to do even a simple fade-to-black effect without a complete screen of pixel fill. Over 50% of my layers could easily get away with a significant resolution reduction and the performance implications (especially when you consider shaders) would be huge.

    I believe that this could also possibly help performance on mobile devices, something I'm not personally concerned with but I know many are.

    Is this something that's technically impossible to do in the engine?

    Does anyone else agree that this is an important feature to have?