citron2010's Forum Posts

  • I think one way to do it would be to duplicate what you have, remove the simulate action from one and the set animation from the other. Then add the "trigger once while true" condition to the group with the set animation action.

  • I've narrowed it down to a very specific set of circumstances and raised it here:

    github.com/Scirra/Construct-bugs/issues/9125

    I do have a simple workaround so don't mind if it's fixed or not, but I'm certain there's been a change in behaviour that the sample project demonstrates. Maybe there's a more serious bug behind this?

  • First breaking release is r485

  • Could anyone's issue be related to creating objects at run time?

    I have a project that works perfectly in 476.4 but not in 487.

    Essentially, I have a JSON array that lists some images stored in local storage. I loop through the array and create a sprite for each entry and assign an incrementing instance var to the sprite. Once they're all created, I request the first image from local storage and load it into the first sprite, then increment the var and repeat until all are loaded.

    But in 487, the first sprite didn't load on local storage get.

    What I've found I need to do to fix is insert a wait 0 seconds after I've created the sprites otherwise the on local storage get doesn't trigger because it can't find the sprite.

    I can't replicate in a simple minimal project I just created from scratch and I can't upload my project as it is as it uses a private back end so I'd have to deconstruct it which might take a while.

    But the wait 0 workaround works for me, so I'm not too concerned - but just thought my findings might help others.

  • > I have this problem too. The solution for me was to untick HTML Layer. It wasn't needed in my case.

    > But if HTML Layer is needed Construct team need to do something to fix the problem.

    >

    > Please make a bug report on the github link in the post above.

    > Ashley needs to fix this

    Be good if you could add specifics or your issue here:

    https://github.com/Scirra/Construct-bugs/issues/9106

    paala

    Ashley pointed out that this had already been raised here:

    https://github.com/Scirra/Construct-bugs/issues/9057

    And he's raised it on the webkit issues board here:

    https://bugs.webkit.org/show_bug.cgi?id=312987

    I've just commented on that - so if you could too, it might bump its urgency.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • thanks, helpful

    citron2010 but how did you do multiple languages with SpriteFont? Did you just use multiple seperate objects? And hide the ones that aren't being used?

    Because when generating the SpriteFont image, you normally need to use seperate font files for different languages, as the SpriteFont tools seem to only allow for one font file.

    It's my last bullet point:

    Then I used an image editor to merge that sprite font with my original one

    Literally just open the first, expand the canvas, then paste the second one at the bottom.

    To expand upon that, there's a little tip. Let's say that that I generate the first sprite font with 19 chars per row and have 100 characters - that's 5 rows of 19 characters and the final row has just 5.

    So when I use stmn.itch.io/font2bitmap to generate the second one, I insert 5 random characters at the start of the characters list.

    Then use an image editor to delete these from the generated sprite sheet.

    This means that the second sprite sheet's first character now starts at column 6 (not column 1) so it makes pasting the second at the bottom of the first easier.

    Then import the new sprite sheet in to the sprite font and append the new characters into the "Character set" property.

  • construct.net/en/make-games/manuals/construct-3/plugin-reference/date

    The example linked there is doing exactly what you want.

  • It does work? "Force own texture" should be OFF

    Ah! Sorry - thanks!

  • I have this problem too. The solution for me was to untick HTML Layer. It wasn't needed in my case.

    But if HTML Layer is needed Construct team need to do something to fix the problem.

    Please make a bug report on the github link in the post above.

    Ashley needs to fix this

    Be good if you could add specifics or your issue here:

    github.com/Scirra/Construct-bugs/issues/9106

  • Wait.., you can do this easily by using a pre-made rounded corner mask. You only need a single mask object, along with the sprites that you want to have its corner rounded.

    Steps:

    1) After creating each sprite, spawn the mask below it (1 z-index below it)

    2) Pin the mask to the sprite

    3) Set the mask's blend mode to "Destination Out"

    3) Set the sprite's blend mode to "Destination Over"

    Also, keep in mind that enabling "Force own texture" can slightly reduce performance on mid-range devices but this method does NOT require it.

    That doesn't work for me:

    drive.google.com/file/d/1CJvE69pYrf-GC-zBMWRw5gV2rrSBey_p/view

    The first two pics have normal blend mode below a mask with "Destination Atop" - that works fine except when they overlap - notice the second's top-left corner cropping the first picture.

    The third uses your method - but that doesn't crop at all - unless I've done something wrong (pic is on z=5 with Destination Over, and mask is z=4 with Destination Out).

  • Made no difference. I've worked around it but if I get a chance I'll try troubleshooting further and log a bug.

  • You are doing something wrong.

    https://www.dropbox.com/scl/fi/v3u7hjcc50k3k3dge7bmh/CanvasPastingWithBlendModes.c3p?rlkey=3s20z2qgw2l5sq8uw2ue8e6gy&st=ejh2dmkv&dl=0

    Figured out what I was doing wrong - I saved the image as JPG which doesn't support transparency!

    Just in case anyone stumbles across this thread and wants to crop the corners off an image, this is a summary of the methods I tried (read the whole thread for details):

    1. Used a 9Patch with blend mode = destination atop on a layer with "force own texture" - worked great until one image is dragged over another
    2. As above, but take a canvas snapshot and save the image with its corners cropped - make sure to save your drawing canvas as a PNG
    3. CSS / HTML button - worked great but I couldn't detect touch dragging if over the button
    4. Mesh - too much aliasing
    5. Shader - this is what I ended up using
  • Small update:

    Also updated my iPad to 26.5 and that's now showing the issue too.

    I don't think it's specifically caused by the rotate behaviour - it seems like having anything doing something on a layer above screws things up.

    I did see this error in Xcode's console when running on my iPad (transitioning to a layout that has an HTML layer):

    WebContent[1365] 0x10e058100 - [sessionID=1] WebProcess::markAllLayersVolatile: Failed to mark layers as volatile for webPageID=19

    Fortunately, I don't think I actually need HTML layers in this project any more (as I've reduced the number of HTML elements I'm using). I've reverted them to normal layers and the graphical glitches are gone - just double checking everthing else looks fine with the HTML layers.

  • I noticed a project I’m working on exhibited blocky/flashing distortion when exported to iOS 26.4.2. I checked and noticed it also happened in Safari on the same device – an iPhone SE 2nd Gen. I have another SE running 26.2.1 and the issue didn’t happen. I updated both to 26.5 and it’s now reproduced on both devices, so I’m guessing maybe some kind of webkit regression since 26.2.1?

    When I stripped the project down, I narrowed the cause to having an invisible sprite with rotation enabled on a normal layer above an HTML layer!

    This project shows the issue. It should just show three “PLAY” buttons at the bottom of the screen, but since 26.2.1, they glitch out/flash.

    https://drive.google.com/file/d/1HlojvMzGmIbESIVr_Meyjj3aeQTYmF5B/view?usp=sharing

    It’s such a specific set of circumstances that caused the issue in my case (and something I’ve easily worked around) that I thought I’d post here first in case anyone’s had similar issues that might help narrow down the root cause.

  • I asked Gemini if it could create a shader for me - every attempt failed, so after about 10 iterations, I handed the project over to ChatGPT and it fixed it in 3 attempts.

    If anyone's interest, it's here:

    drive.google.com/file/d/1zE1s13RzZPtttzZrjiOLmEyAa1NL8Av_/view

    Three parameters - radius, width and height (you need to set the latter two to the size of the sprite).

    Thanks for everyone's help.