3D Flip (Vertically and Horizontally)
Description
Flip sprites with a 3D rotation effect.
Note that the X origin point must be at the center for the best results.
Added vertical flipping to allow flipping in either, or both directions!
How to use the extension
Add the behavior to the sprite. When adding the 'Flip' or 'Flip to side' actions, you can select to do Horizontally, Vertically or both.
Checklist
- [X] I've followed all of the best practices.
- [X] I confirm that this extension can be integrated to this GitHub repository, distributed and MIT licensed.
- [X] I am aware that the extension may be updated by anyone, and do not need my explicit consent to do so.
What tier of review do you aim for your extension?
Community (Unreviewed)
Example file
Extension file
👋 Thanks for your submission! We are sorry, but the filename of the extension has unrecognized characters. Since filenames with weird character can cause all kinds of problems and security flaws, our system won't allow file names with other characters than normal latin upper- and lowercase characters or numbers. Additionally, the first character must be an uppercase character. Please update your original submission post with a new zip file containing your extension with another file name following those guidelines 🙏
@nallovint First off, thanks for your willingness to contribute to GDevelop! We will do our best to guide you along the process.
I started looking at this and frankly, I got carried away trying to update a lot of things like:
- Replaced custom toggle logic with built-in property toggle action
- Replaced deprecated conditions and actions
- Used the shorter method to reference properties and parameters (but I had to rename some properties, such as "Width" to "StartingWidth" to avoid conflicts)
- Changed from milliseconds to seconds
The changes in this submission would be considered "breaking", which means if someone updated this extension in their existing game they would have to update their events. This is not a huge problem, but we try to avoid it. If we want to implement the breaking changes, we always increase a major version number when we do it (1.x.x becomes 2.0.0) to let the user know. (This is called Semantic Versioning)
I have two ideas on how to move forward:
- Keep a single behavior with parameters to choose which axis (or both) to flip on
- This would have breaking changes, especially if we want to name things better
- Create a new behavior for vertical flipping
- Start fresh from the published extension and don't change anything to the behavior for horizontal flipping ("ThreeDFlip")
- Create a new behavior called "ThreeDFlipVertical" (we can start by copying the horizontal behavior)
- This would have no breaking changes
Any thoughts, @D8H or @VegeTato?
FYI - I closed your other issues so we would not get confused on which one to work with.
Updated project
This includes the changes I completed as mentioned above. It's not fully tested or cleaned up, but it might be helpful. ThreeDFlipNewTristan.zip
- Keep a single behavior with parameters to choose which axis (or both) to flip on
- Create a new behavior for vertical flipping
I would vote for 3, have 2 actions: 1 to flip vertically and 1 to flip horizontally.