Groovy is an attempt at making something sorely lacking in the current version of Gamemaker Studio; a simple and effective way of creating physics geometry.
It means a tool that allows you to draw as you would in any art creation program, and turn those brush strokes into an interchange format that becomes physics objects in Gamemaker Studio 2.
Currently Groovy is in a very early state as the editor implementations are starting to exist, but this project currently exists mostly as a play space with what has been implemented.
Implemented features include DeCastlejau's alg to generate bezier's, support for open and closed polybeziers, a single brush tool in progress that generates a hollow closed star-like shape that is created as a polybezier. Also generates the fixtures for these physics objects so that they can interact in a physics world. early UI composition in progress.
Honestly, a lot. This originally started as part of the Cookbook Jam 2 in the Gamemaker Kitchen discord. I was unfortunately unable to finish due to real world responsibilities, but a minimal viable product requires finalizing an interchange format between editor and API, Brushes/Widgets that allow more simple adjustments of points of the generated curve, a catmull-rom implementation for curve fitting pen/mouse strokes, and a way to integrate any used textures into the target project, or ensuring that loaded textures exist in the targetted project
Never. Projects like this require continuous effort and never really finish, just as game engines are never "finished" but always evolving to best match user needs
Currently, I have not picked a license, but it will be a permissive one as this is intended to be a FOSS resource
Links to included art assets as required by their licenses
Scissors icons created by Good Ware - Flaticon Line icons created by Freepik - Flaticon
rotate object by BUSAIRI from Noun Project (CC BY 3.0)
curve by Dika Neto from Noun Project (CC BY 3.0)
Cut by David Swanson from Noun Project (CC BY 3.0)
Move by icon 54 from Noun Project (CC BY 3.0)
line tool by ghufronagustian from Noun Project (CC BY 3.0)
Fabric by Ayub Irawan from Noun Project (CC BY 3.0)
selection by Ricons from Noun Project (CC BY 3.0)
connect by Gregor Cresnar from Noun Project (CC BY 3.0)
rubber stamp by Tippawan Sookruay from Noun Project (CC BY 3.0)