Ashley's Forum Posts

  • Never adjust the official plugins or behaviors. Just post a feature request.

  • As I already mentioned, breaking it up to individual tiles can be hundreds of times less efficient than the way the current tilemap object does it. It's very well optimised.

  • Arima - it doesn't really fix the problem, it just postpones it maybe to the next mip level. The way mipmaps work is they keep halving the texture size, meaning the area of averaged pixels doubles in a power of two sequence (so the first mip level averages 2x2, the next averages 2x2 areas so it effectively averages 4x4, the next averages 4x4 areas so it effectively averages 8x8, then 16x16, 32x32 etc). So the only way to guarantee absolutely that images never bleed across mip levels is to power-of-two align them again.

  • Can't reproduce: using the Windows Phone Developer Power Tools it sits at 167-172mb usage steadily even as I watch it for several minutes. The way garbage collected languages like JS work is they gradually increase memory then free it in chunks, and I observe this in the memory use pattern: it gradually increases to ~172mb or so, then drops back down to ~168mb. The snapshot you sent me on Twitter (note: it's more useful to keep it in the bug report itself) only indicates 179mb usage, which is only a little above what I've observed. If you want to send a more useful snapshot, export again with "minify script" off, since the minify option has made the majority of the snapshot unreadable.

    Closing as can't reproduce; I also think that if it reproduces on no other platforms at all, then even if there is a leak it would be in the Windows Phone 8.1 code, not in C2's code (otherwise it would show up on other platforms). If you still think there is a problem I'd recommend taking it up with Microsoft.

  • Well, it's not to do with Crosswalk or text boxes: Chrome does it even on desktop if you roll the mouse wheel even with the text boxes deleted. It seems to occur in scale inner, scale outer or crop fullscreen modes. No other browser seems to do it. I found a workaround, hopefully it's fixed for the next build.

  • More of a feature request than a bug report, but added for the next build.

  • That's an extreme size for a tiled background, and many mobile systems will force it to be a power-of-two size in memory, so every 1x1536 image will use up a 2048x2048 surface (16mb of memory alone). Perhaps your project is running out of memory so later images fail to load. I'd really avoid such extreme dimensions on objects.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Your bug report description includes "when the textbox itself is out of the screen, or further away", meaning the text dimensions are not known. I cannot reproduce any problem while the text object is on-screen.

  • As stated in the guidelines please don't send us bug reports with complete projects, it's not very helpful. Reproduce the problem in a new empty project.

  • What is there to explain? In that event, 'Mouse: on any click' has no effect on the picking at all. It doesn't matter what conditions are above it, you'd always need a for-each loop to push back an array item for each instance.

  • OK, I managed to isolate this to the mipmap. By default mipmaps are enabled and are used for high-quality downscaling. (This pre-processes high-quality resized images at 1/2 size, 1/4 size, 1/8 size etc. down to 1px). Unfortunately this works badly with spritesheeting: as the mipmaps get smaller, they blend more and more and cause bleed between unrelated images.

    One possible fix is to disable mipmapping - but this reduces the downsampling quality, even with linear sampling. See this example (which includes the glitch bug with mipmaps, but notice the quality difference):

    The correct fix is to pad images to a power-of-two size in the sprite sheet, and ensure they are aligned to power-of-two positions. Then since the mipmaps scale down by a factor of 2 every time, the images don't bleed at low mip levels. I tested this and it fixes the problem. However it comes with a high price: it effectively defeats the memory savings from sprite sheets, and in many cases can force animations that used to fit neatly on to one sprite sheet to spread over on to two or three sprite sheets. This could double image memory usage for some projects.

    I think the best solution is to make an option in the editor. I'll add a 'Downscaling' property with three modes:

    Low quality: mipmaps disabled, dense spritesheets

    Medium quality (same as happens now): mipmaps enabled, dense spritesheets (minor glitches such as the one reported here are possible, but appear to be rare)

    High quality: mipmaps enabled, sparse spritesheets (should never glitch)

    Hopefully it's not too confusing an option to introduce, but I want to avoid either degrading the display quality, or increasing memory usage significantly for a relatively rare problem.

  • So it's just a new 'None' setting for the window left/top properties? Seems reasonable, added for next build.

  • Closing as not a bug: letterbox scale mode is identical when exported either as 'embed' or 'normal' mode, since letterbox scale is already suitable for embedding. 'Embed' is only different when fullscreen-in-browser is set to 'off'.

    iframes work just fine on our own Arcade, so there must be a problem with your embedding page's markup.

  • Closing, see the Text object manual entry for these expressions:

    [quote:hlj4vjgk]Return the size of the actual text content within the text object's rectangle. Note the Text object must be drawn before these have the correct values. If you set the text then immediately access these expressions, they won't yet have the correct value. Adding a 'Wait 0.1 seconds' action will usually solve this.

    If you move the object offscreen, it is not drawn, so the values are not known. Please also only make bug reports using the latest version of Construct 2 (currently r168).

  • Closing as not a bug, this is how the browser's security mechanism works, to prevent pages repeatedly asking in a loop until approved. It will likely depend on the browser you use as well (Chrome may handle it differently to Firefox for example). You may need to reset the permission in the browser preferences.