-
-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TileMap: allow placing any tile from an animation sequence other than the first tile #7461
Comments
My project would benefit greatly from this, so I'm interested in ensuring this proposal is as clear and useful as possible! One question that isn't immediately answered in the proposal (as best as I can tell, anyway) is what the UX might look like. I have two ideas:
Another question is how to reconcile this with #6856, and its implementation in godotengine/godot#77257. Should this behavior be a third enum entry? Restricted only to |
Oh yeah, that's an option as well - would totally work. If that one were chosen then I agree, a new mode would be prudent. I imagine some users are used to the existing behavior of selecting the first frame regardless of where they click. A new mode would retain that behavior, add the new functionality, and avoid any confusion about random mode |
Prototype with selection of frames working only in TileMap tab (even with animation columns) todo:
|
I think I got it all working. Probably some issues but.... Is it "cheating" to work on proposal instead of issue? :) |
@rakkarage This issue has few reactions but they're all positive, I'd open a PR and see what the maintainers say |
Describe the project you are working on
A tile based pixel art game with lots of small animations and special effects
Describe the problem or limitation you are having in your project
In my project I'd like to use lots of simple special effects on menus, backgrounds and such. These effects are technologically very simple and lend themselves well to implementation as tiles, for example an animated menu background of small stars:
The problem is that it looks quite mechanical and silly when there are lots of them and they're all blinking in sync (looks more like a stroboscopic seizure test than a fun background effect).
I'd like it to look like this (less mechanical):
Or for example the animations of other elements, here is a sketch of water waves on the beach, compare the top (what it looks like out of the box) and below what I'd like it to look like:
Currently, the only solution to eliminating this mechanical effect (when all tile animations are in sync) is to either use a shader (something like what is mentioned #57677), but this is impractical and I have no idea how to maintain it (I'm a designer) or prepare a special tile sheet with offset animations, but this looks quite wasteful to me:
Other solutions are even less practical (for example I could make a mini-scene for each effect and then manually change the offset for each… nightmare to maintain).
Please note I'm not talking about the ability to randomize starting offset in a tile animation set (#6856). Randomization would not allow for synchronized effects like this for example:
Describe the feature / enhancement and how it helps to overcome the problem or limitation
I'd like to be able to place any tile from the animation sequence on a TileMap. The placed tile would act as a starting point for the tile sequence animation.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
With the Tile Map component selected in the Scene Tree, using Tile Map / Paint tool the designer can select any tile from any animation sequence. Placing this tile in the game will set this tile as a starting tile once the animation starts playing.
There is no need for new interface.
If this enhancement will not be used often, can it be worked around with a few lines of script?
There are workarounds but they are all kind of impractical (and in my case maintaining a shader is not something I'll be able to do anytime soon). I believe it will be used often.
Is there a reason why this should be core and not an add-on in the asset library?
Selecting a tile from a tile sheet is such a basic and simple to use (not sure how easy it is to implement if any tile is accessible) action that is tightly integrated with the Godot's UI tile placing workflow, makes it hard to imagine how would an add-on be glued on top of it.
The text was updated successfully, but these errors were encountered: