Ashley's Forum Posts

  • Did you get the correct Windows SDK version? IIRC if you get that wrong, VS2017 can't open it. It won't work in VS2015 either until you fix it.

  • Make sure you wait for the runtime to finish loading. That function won't exist on startup.

  • You should only have objects placed on the layout that the layout really does use. Don't place objects which are never used on that layout, since it will waste memory (C2 will preload them but they will never be used). Conversely, don't delete objects which really are used - the preloading system depends on using the initially placed objects. Even if you create them on Start of Layout, it is less efficient. If you change layouts and the previous layout used that object, if it's not initially placed on the next layout, C2 will unload it, and then reload it again in Start of Layout. This pointlessly unloads then reloads the textures for it. If it's initially placed, C2 knows to keep it in memory if the previous layout also used it.

    It's pretty simple really: just have the objects the layout uses initially placed on the layout, and everything is optimal.

  • I'm not sure, browser storage is handled by the browser. It's probably in a database somewhere in the user data folder.

  • Sketch works for me but Speedy looks like it has a bug in the minified code. If you use the Physics behavior it's a known bug, but if not please file a bug for it following all the guidelines.

  • The memory usage is based on objects initially placed in the layout. If you delete them and create them at runtime, then the runtime memory usage hasn't actually changed, but C2 will estimate the memory usage being less based on the initially placed objects. Basically the memory estimate assumes you don't create any objects at runtime.

    It's also a bad idea to delete objects you actually use from the layout, because if they are initially placed, C2 will pre-load them when the layout starts. If they're not initially placed in the layout, it will be forced to load them at the moment you create them, which can jank the game.

    tl;dr it will make things slightly worse.

  • (Moved to C2 forum)

    In general, if your app can read the data, so can the user. So you can't rule out anyone inspecting or modifying the data.

    If your next thought is to try and encrypt it, it's the same situation, just with a minor hurdle in the way. Welcome to the anti-piracy arms race!

  • You do not have permission to view this post

  • Yes, it's planned.

  • The feature suggestions platform is for things exactly like this, you should post it there so people can vote on it.

  • Can Construct 3 run on any browsers on Mac?

    Yes, Chrome of course. It's only iOS where Apple have banned other browser engines.

    I'd be interested on any feedback if you've tried C3 in Firefox!

  • You can now also use Construct 3 to build Construct 2 exports.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • It still sounds like a bug. There's no reason it should take that long.

  • We hope to support both Edge and Safari later down the line, but the stable versions can't run C3 at the moment. We'll add experimental support for those as well when we can, hopefully later this year.

  • Are you sure it's not just your events leaking objects? As in, the object count constantly increasing over time?

    It's normal for UIDs to keep increasing, Construct just increments the global UID counter every time it creates a new instance, so the current UID is meaningless in terms of performance.

    Unless you have specific measurements pointing at a specific cause like GC, it's a waste of time to start guessing about things like that. I'd first try C2's own profiler, but if that doesn't help pin it down you can try running a performance profile with Chrome's dev tools to see where most of the time is going. (Make sure you don't minify so the names are readable.) You can save and share profiles so I can have a look at anything you record and see where most of the time is spent in the engine.

    Also modern mobile devices aren't really that special compared to desktops any more, if there's a real performance difference you should be able to reproduce it on desktop too, albeit with higher measurements (e.g. 60 FPS but a change in CPU usage or something like that).