This is my PyWeek 29 entry, made together with @janEntikan. The theme was “Butterfly Effect” and we interpreted it literally, taking inspiration from the PS3 game Flower.
It was intended to have more gameplay, and a failure state (you could be chased by birds and swarms of wasps and have to avoid spider webs, and different flower colours would cause different effects). A lot of assets to that effect went unused in the end. It turned into something that should at least be an interesting little demo. It’s not very optimized, so it does require a decent CPU.
I didn’t put this in an in-game instruction, so people are missing this: hold mouse button or shift to speed up. If you use a gamepad, press the trigger or A instead.
The GitHub page is here. Running from source requires Python 3.7 or 3.8. The game gratefully makes use of wecs and panda3d-simplepbr. I don’t recommend looking in the codebase, though. It’s a gigantic mess.
I learned a lot about effective grass rendering. It makes heavy use of FadeLODNode to get decent performance. I’m considering taking my approach here and turning it into a grass generator tool for Panda.