PyWeek 29 entry: pollen.

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.


This is cool. Would be better with more shaders and post processing, but still looks good. I like the animated grass. Btw, I have played Flower on PS Vita.

The game looks good and plays nice. The dynamic soundtrack is also cool.

Like Yonnji, I especially liked the animated grass effect.
Also, a nice touch for a game like this that it has an actual ending.

The only downside that after completion it’s just fades to white and doesn’t react to keys.

I haven’t seen other PyWeek entries, but Pollen seems to be very competent in terms of art/music/gameplay, as for me. I don’t know if other entries can compete.

I liked the smoothness, very impressive. There is a smooth transition from the menu to the game, it looks very cinematic. However, I noticed that the visible part of the terrain was cut off.

You can break the pause menu if you put the game on pause and press resume, and then quickly press the " Esc " button several times in a row.

Yeah, there is an issue in Panda3D when usig FadeLODNode in combination with custom bounding volumes, as is needed when doing terrain height adjustment in the shader. This is causing the terrain or grass to sometimes be hidden. I will be looking at fixing that issue in Panda3D.

Agreed, it should go back to the menu, or go back into an endless mode, but I ran out of time. The ending was hacked up in the final hours.

Oops! Well caught. Fixed on GitHub.

This is a neat little game! It seemed to run fairly well, and controlling the butterfly-swarm was cool. I also rather liked the effect of the grass transitioning from brownish to vibrant green. :slight_smile:

The grass in use here looks rather good, to my eye, and an out-of-the-box grass implementation for Panda seems like a neat addition to the engine!