1. Hey! Guest! The 35th GMC Jam will take place between November 28th, 12:00 UTC - December 2nd, 12:00 UTC. Why not join in! Click here to find out more!
    Dismiss Notice

Feedback Collision Masks, Sprites, Image Editor

Discussion in 'GameMaker Studio 2 Community Tech Support' started by csanyk, Dec 6, 2016.

  1. csanyk

    csanyk Member

    Joined:
    Jun 20, 2016
    Posts:
    821
    Imported a project from 1.4. Built, ran the game without needing to change anything, but noticed some collisions looked funny (collisions registering without the sprites touching). All sprites are 32x32.

    So I opened up the sprites in the editor to look at the collision masks.... then noticed a whole bunch of things:
    1. I set a collision mask of "Precise Per Frame (slow)" and tested it, the object using the sprite no longer detects collisions at all. I also tried Precise, Ellipse, and Diamond collision masks, and these do not register collisions either. It seems only Rectangle collisions are working properly.
    2. I set a collision mask of "Ellipse (Slow)" and the appearance of the mask in the Sprite editor is not symmetric. Note the right and bottom sides of the ellipse appears much more blunt and flat than the left and top, which appears properly rounded. It appears the mask is improperly truncated/approximated from the ideal circle that it draws while setting the mask, before converting it to pixels. Oddly, if I play with the Alpha Tolerance slider, it seems to fix the roundness of the mask, at least temporarily, until I try to adjust it again, and then it's improperly shaped again, flattened on the right and bottom sides. upload_2016-12-5_22-7-22.png
    3. Adjusting the Alpha Tolerance slider resizes the mask shape back to fill the entire dimensions of the sprite, resetting the Left, Top, Right, and Bottom to default. It should NOT do this!
    4. The tab order for the UI controls in the Sprite editor mostly is correct, but when you get to the collision mask settings it goes Right, Bottom, Left, Top; it should go Left, Top, Right, Bottom.
    5. It seems the ONLY fast collision method is rectangular masks. I believe a perfectly circular mask centered on the origin of the sprite should also be fast, as this can be checked by seeing if the distance to the instance is <= the radius of the collision mask. If this is indeed possible to calculate a collision check with a circle mask quickly, I would like to request this as a feature.
    6. I would like to be able to set multiple masks per sprite, through the Sprite Editor. In many games, it's better to give a sprite a generous collision mask for detecting collisions with power-up items, and a smaller collision mask for detecting collisions with things that will hurt you. To do this currently requires multiple checks in GML; it'd be nice if we could have set multiple collisions (perhaps as an array) and set events for Collision[mask] so that different Collision Events can be coded easily for different Collision masks.
    7. In the Image Editor, I can't figure out how to reposition text that I've typed out with the Text Tool once I've typed it, but before I've committed it. It requires me to know ahead of time precisely where to click to start drawing with the Text Tool before I type anything, which is virtually impossible to do. The tool ought to allow me to grab the pre-committed text with a UI handle and move it around before committing it.
    8. In the Image Editor, moving a selection of pixels is possible, one pixel at a time, with the arrow keys. I should be able to use Shift and Ctrl to modify the arrow keys to move the selection by more pixels. If moving with the Mouse, holding Shift should constrain the movement direction to strictly Horizontal or Vertical.
    9. Is the "replace all pixels of Color I click on with Color X" tool gone, or am I just not seeing it? Please bring it back!
    10. Positioning the tool palette to the right is just awkward for a right-handed mouse user; it feels more natural for the tools to be on the left. Although I can reposition most of the GMS2 UI, I can't seem to reposition the different control palettes in the Image Editor.
    11. Overall it feels to me like the many "UI polishing" tweaks that are needed for the Image Editor to feel good are missing, which makes me wonder if there was a design document. If there was, it must be substantially lacking in fine details. It just feels very rough, with a lot of the smoothness that I'm accustomed to in other image editors and have taken for granted simply not implemented.
    12. Is there a shortcut key to flip through the frames of an animation?
    13. I keep creating brushes that are my selection of pixels without intending to, by using Ctrl+A, Ctrl+C (which I thought should be Select All, Copy). If I want to copy a frame in my sprite animation and paste it into another frame, positioned exactly right, I can't do it; there's no Ctrl+A, Ctrl+C, Ctrl+V to paste since the pixels aren't in the copy buffer, but are in the Brushes, and only draw the copied pixels relative to the mouse location. Whatever the intent is of the UI now, it's very different from what I'm used to from using many image editors, including the image editor in GMS1.x. I totally don't get the new workflow, and it's really slowing me down.
    14. In the Image Editor, when selecting the font in the Text Tool, the list of fonts doesn't preview to show me what the font looks like, which means I have to memorize what all the fonts installed on my system look like :(
    15. When placing text with the Text Tool, it'd be great if I could click-drag to draw the a box-shaped region where the Text Tool would draw the text, and allow me the option to Left|Right|Center|Justify the text within that region.
    16. Another good Text Tool option would be to allow me to draw the text on a path.
     
    Last edited: Dec 6, 2016

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice