Hello,
I am working on the p5js / p5.play food-based video game named BerlinWallBreaker playable in WIP here (please do not announce it anywhere for now, it is unfinished).
Most of this video-game’s video content was prepared in my kitchen, with food (chocolate, crepes, apples, beetroot) as showcased in the making of screen - about info is also here…
The gameplay is that of a brick breaker, except that almost each element apart from the background is a stop-motion animated cycling sprite from food photographs.
Each of the 3 levels is made up of:
- DONE 1 food-based non-animated background, prepared in GIMP and/or Inkscape, no need for batch help
- WIP several bricks
- WIP 1 ball
- WIP 1 paddle
When playing say level 1, use ESCAPE to un/pause, hit D to show hitboxes…
For each game element (eg. 1 level’s brick’s sprites), I want to setup a G’MIC CLI or gmic-py set of commands to:
- load 1 jpg photo
- remove its background (whitish baking paper) so it has no white surrounding
- resize it to fit a fixed-size square (some bricks), circle (ball, some bricks) or rectangle (paddle)
- save to a numbered transparent .png
- optionally preview the element’s animation in some pop-up window.
Some day, if scripts are easy enough to use, participants in some food-design workshops could create their video game sprites by just cutting and photographing anything they like and load them in some batch processing software application. (I held some food-design or chocolate design workshops in France and Czech republic but never for making a quick video game for now).
The video-game has no server-side work, and no image processing per se in the browser (the vision is that of low-tech, old-computer, very poor CPU / GPU video game…).
An example of jpg input sprites that must be background-extracted, centered, resized is here on Github (the video game is open-source):
- level 1 paddle (done with GIMP without batch script), with target size 120x46px
-
level 1 ball (WIP with Inkscape circle masking and poor background removal), with target size 30x30px.
Finished sprites are namedspritename-00N.png
and picked by the game engine.
Below a finished paddle in chocolate + apple slices, as a gif for you to understand a bit:
So… I am thinking of a G’MIC one-liner… Let us think out loud in G’MIC commands if you’d be happy to, with me