TheRealDannyyy's Recent Forum Activity

  • Some games i've played, mostly older poorly optimized 3d games uses tripple buffering to even out the framerate a bit. Is that something that could help in these cases? and is it worth it for a bit more vram usage, depending on what type of game and platform you're targeting?

    From what I understand Tripple buffer is sometimes used to smooth the experience, similar to v-sync?

    Does the web even offer this feature?

    I mean you can't even take control over default V-sync to for example, simply enable/disable it.

  • I think everyone's jumped to conclusions on this. The profiles actually show that GC is not the cause. The profiles show a long frame, and only a tiny amount of time taken up by GC. For example the profile posted by TheRealDannyyy shows a frame taking 68ms, but GC only taking 8ms of that. Why didn't it schedule another frame in the remaining 60 ms? It looks like it could have done, because it wasn't busy doing GC, but it didn't. Right now we don't know why, but it is too early to blame GC, especially since it looks like GC finished quickly with plenty of time to spare. ...

    Ashley Why would GC do any work at all? I'm for incremental GC if necessary but in Chrome 69 those GC calls seem to be all over the place, regardless of available system memory, it's almost like GC is always under pressure to release memory.

    I couldn't find a more reliable example besides the one I posted before, could reproduce this on Win7; 8gb RAM; GTX 1050ti (4gb); Quad Core Cpu 3,6ghz. Taking a quick look at the open bugs for M69, looks like it's quite broken with several performance related problems.

    Again, I think best thing would be to wait and see if a hotfix will solve all the issues including this one.

  • Hmm, weird. This totally fixed it for me. Here is the comparison, it still does indeed jank twice for some reason (it still says GC actually) but then it runs buttery smooth.

    That's the issue we're all complaining about, GC shouldn't do any work at all (cause jank), especially not on systems like mine with more than enough memory available.

    Again best thing would be to wait for hotfix patches over the next days in my opinion.

  • This is interesting. I tried your example and... it´s not janking. The autorunner on the other hand is janking almost like a clockwork. This got me thinking... where is the difference? First I nuked the entire event sheet of the autorunner, the jank was gone. After un-nuking it and more carefully killing off event after event I was left with a single event, with a single action.

    (Duh, why can´t I add more than one image to a post :V)

    Anyway, after replacing the regular text object with a spritefont, the jank is entirely gone (apart from two janks right at the beginning) Could that be it?

    I removed any text objects found inside the example and could still reproduce, this ain't it unfortunatly.

  • I'd say we should wait 1-3 days for any hotfix patches.

    Personally not really seeing a point in creating a report with a HTML5 example that's using a single rotating sprite.

  • Let me rephrase.

    Make a test where objects aren't destroyed.

    Not a common method for Construct, but often called object pooling.

    Did it, removed everything except the rotating sprite (needed for canvas refresh) and it did jank again.

  • Here is a quick example I came up with for the time being. (Download Example: Link)

    How to reproduce:

    1. Open In C3
    2. Run preview or export+upload as HTML5 (optionally enable fullscreen using F11 key)
    3. Enable "Spawn Auto" mode
    4. Notice occasional jank caused by GC
  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Maybe make a test where a game doesn't need garbage collection.

    The runner example wouldn't need GC to do work at all, especially not as often as it currently does.

  • Here is my Performance Profile, you can clearly see that GC is being triggered right after some Construct related runtime work.

  • I can reproduce this in Chrome 69 as well (high-end Desktop PC). Judging based on my performance profile, GC is all out again and doing its thing whenever it likes to, this time it seems to trigger whenever Construct performs runtime work with draw calls in it.

    Speculation Alert: This might be caused by objects being destroyed or created.

    I'd do a Chromium bug report but this example is a bit too unreliable for me. Currently trying to figure an example which triggers GC calls by doing the things mentioned above.

    If anyone's got suggestions or a more reliable example, please post it here and I'll check it out.

    Found this reported bug, which might be related?

    https://bugs.chromium.org/p/chromium/issues/detail?id=815259

    This happens across browsers though, more or less.

    Nah that's something else, nothing to do with this issue.

  • There are still various contradictory aspects in the state of this. I'd prefer to see a response to my comment on this issue clarifying the situation before continuing.

    Ashley you've probably seen this already but the issue has been closed and the developer confirmed that it wasn't an accidental release. Would appreciate if you could add this to the Construct(s), whenever you got the time to.

    By the way, do you perhaps know how I could get the attention of FireFox (Mozilla) and Edge (Microsoft) to implement this feature to their browsers as well? Now that Chrome supports it, they'd probably be more interested in supporting it too.

  • > > Hello one question.

    > > I thought that NWjs.AppFolder would give me the directory of the location of the nw.exe file.

    > > But this is not the case, NWjs.AppFolder gives me the directory where the capx file is located.

    > > What the hell do I want that directory ?.

    > > I need the directory of the nw.exe application because there are my files to load.

    > >

    > > How do I obtain this directory ?.

    >

    > Ashley added new expressions after I did a feature request about this a while ago. Just update C2 to R257 or newer and use the new expressions.

    >

    > I think they should also work with fetching the executable path. If not you should be able to manually replace parts of the fetched path. Although I'm guessing in your case it's an issue that only occurs during preview and not in the exported version.

    My problem is with the exported version.

    I have files that my program loads to create the levels.

    I have used the expression NWjs.ProjectFilesFolder seems to work but it is not the path of the executable file nw.exe

    I suppose that NWjs.ProjectFilesFolder is the path where the files are decompressed and then loaded from there.

    Thanks for the info.

    Usually NWjs.ProjectFilesFolder should fetch the app path of the executable and the new expressions fetch the files found inside your package.nw archive file. Not sure why it wouldn't work, maybe uploading a quick example for reproduction would help me finding out what's going wrong.

TheRealDannyyy's avatar

TheRealDannyyy

Member since 30 Sep, 2014

Twitter
TheRealDannyyy has 18 followers

Trophy Case

  • 10-Year Club
  • Jupiter Mission Supports Gordon's mission to Jupiter
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • Regular Visitor Visited Construct.net 7 days in a row
  • RTFM Read the fabulous manual
  • Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

18/44
How to earn trophies

Blogs