A Python application can help you create the frames based on input and output images
- Load input and output images
- Choose input and output colors
- Choose frames by using a slider (Maximum: 500)
- Generate frames of your gradient
Frame Extractor: It's useful if you don't want to extract frames of 1 sprite sheet image manually with your photo editor/paint tools
You need to install Pillow:
pip install pillowYou have 2 methods to use this application:
- Download from Releases
- Clone repository:
git clone https://github.com/WMZS-Modding/gradient-frame-generator.gitAnd then run:
python main.py- Open the app
- Choose
Frame Extractorsection - Choose your sprite sheet image
- Edit the
Frame HeightandFrame Width - Click
EXTRACT FRAMESbutton - Go to
save/frames_<number>/and copy these frame images
- Open the app
- Choose your input and output images (they must be the same)
- Choose your colors to your gradient
- Choose your frames you want
- Click
START GENERATIONbutton - Go to
save/gradient_frame_<number>/and copy these gradient frame images
- Open the app
- Tick
Auto mode - Choose your input and output images (they must be the same)
- Choose your frames you want
- Click
START GENERATIONbutton - Go to
save/gradient_frame_<number>/and copy these gradient frame images
- Advantages: Gives you the correct result. It can handle both two identical input colors in image 1 and two different output colors in image 2
- Disadvantages: Still wastes your time because you must add colors manually. And it maybe make a mistake if you don't add missing colors
- Advantages: Gives you the same result as manual mode. It can still handle both two identical input colors in image 1 and two different output colors in image 2. The only different is it doesn't requires adding colors manually
- Disadvantages: Difficult to control because it scans both images simultaneously
If you don't want 500 frames limit, you can follow these step to change limit:
- Fork this repository
- Go to
main.py - Change this code:
self.frame_slider = tk.Scale(slider_frame, from_=2, to=500, variable=self.frame_count_var, orient=tk.HORIZONTAL, length=300)Warning: Only change to=500, don't set it to to=2 and change from_=2 or they'll cause errors
- Push your change to your forked repository and then run
release_assets.yml