
Delivering digital art since 1997, #demoscene roots. #BFS, #BoundPS4, #Catzilla, #Datura, #LingerInShadows in the past. Now working on BFS
Łódź, Poland
Joined December 2015
- Tweets3K
- Following117
- Followers2.8K
- Likes10.5K
Plastic retweeted
We've made a Starcraft inspired map but entirely on GPU. The game data never reaches CPU, that's why we got extremely fast map practically for free :). And yes it is still deterministic and working in multiplayer.
Plastic retweeted
This week on Dev Dive, I sat down with Michał Staniszewski to talk about the full history of his studio, Plastic.
Plastic is always ahead of the curve- they developed the PS4/PSVR game Bound, as well as Linger in Shadows and Datura. youtu.be/aV8GloGGnlQ
#DevDive @bonzajplc
Plastic retweeted
Me and my @plasticdemo team, escaping a wave of green aliens.
Here's a showcase of a massive deterministic GPU simulation working in multiplayer .
Big immersive worlds are possible to run fluently online (we are in 400 km range).
Everyone is simulating exactly the same world.
Plastic retweeted
Experimenting with new camera voxel cutouts both for simulation and editor parts of the game
Plastic retweeted
Finally found some time, to add dynamic density change to toys. Brown boat is wood, red boat is steel.
Plastic retweeted
Finally we managed to figure out the strategy that brings some attention around BFS. @MaSta13RVC is building a community level on YT and tiktok based on the comments and it started to get interesting
Plastic retweeted
Big announcement!
Almost 13 years ago, at the WeCan 2013 demoparty, @plasticdemo and I introduced a realtime shader programming competition that later became widely known as Shader Showdown.
The concept has remained largely unchanged over the years. Two coders compete by writing shaders that are automatically recompiled and displayed on a big screen for the audience to vote on.
Personally, I felt that the competition had become a little repetitive. Coders were spending much of their time writing raytracing boilerplate and trying to reconstruct the same equations from memory. Fewer and fewer programmers also wanted to compete because the format was quite exhausting.
I decided to change that, and the organizers of @PartyXenium 2026 gave me the opportunity to try something new.
We will be using BonzomaticAI, a slightly modified version of the original competition tool. It allows AI agents to connect to the application and control the competition based on the programmers’ prompts.
The video below shows the results of a presentation I gave to non technical students at the Academy of Fine Arts. The prompts are in Polish to make the barrier to entry even lower.
Trust me: good coders are still better at this new game.
WE ARE NOT COOKED!
Plastic retweeted
Quick idea on how to get a lot of XP quicker. Just multiply the players.
We decided to use that "natural" behavior just for display in UI and final score. Every player can still gather XP in different manner and upgrade differently.
Plastic retweeted
Ok, I investigated and I confirm that frontier models (tested on Sol) can do GPU low level optimizations when instructed by profiler, like @yacineMTB has proven (attached my before and after for comparison).
Unfortunately for gamedev, using generic shader languages other than CUDA, we have to manually screenshot NSIGHT heatmap for it to work best. So there's a place for a loop improvement, but before that it is still very interesting way for quick optimizations.
But have your deterministic frame hashes ready :).
Plastic retweeted
Tomorrow I'll be doing another stream with BFS. I'll be showing how to quickly create an active volcano, that can be used in various scenarios. Check below
Plastic retweeted
In response to @yacineMTB remarkable port of Box3D to GPU, here's my personal performance test for low level optimizations (still plenty left to do). Currently for 170k deterministic GPU chicken simulation(they spawn another chicken on touch and try to keep distance form each other) the avg step takes ~3.9 ms (250 fps without rendering) (profiling shot attached). This is still to slow. We need to cut it to 2 ms to be able to run it at consumer grade hardware
Plastic retweeted
Ok, it was a bit bumpy first ride, but I managed to do my first stream. I made a small scenario about reviving skeleton pigs into living pigs by throwing pork chops at them ... (makes sense). next week I'll jump into Castle building (hopefully)!
Plastic retweeted
It's happening.
Tomorrow I'll be streaming live at 9 PM CET. Making introduction to BFS, describing the main 3 rules of the game and creating a new scenario. Link to be dig out from comments. Subscribe, share and bookmark.
It will be full of hikups and funny uncontrolled moments since it will be my first stream and I may totally break it :D
Plastic retweeted
Spawning 5000 dogs per second seems like a total chaos.
With deterministic simulator it is actually not. It's is fully controllable turbulent space
Plastic retweeted
Snow Plow Problem.
Because we use UE and our game is computed on GPU the fundametal problem exists which is a camera. Unreal feeds the camera via constant buffer from CPU.
Then it computes all the culling, setup shadows etc.
We want to attach the camera smoothly to SnowPlow which is computed on GPU. It implies a really inconvenient route GPU->CPU->GPU which requires patching of unsynchronized transforms.
In the movie everything seems all right, but snow particles don't have their transforms patched and they stutter.
It's because sometimes during one visual frame one simulation iteration is computed and sometimes two or three or four. Camera get's that information with delay and desyncs.
I really wished if there was a path in UE to patch the camera position inside RWBuffer in compute shader
Plastic retweeted
One of the reasons I started to work on BFS is that I really was disappointed with Minecraft's explosions.
What you see on the video is prefractured castle. What we would like to do is to add realtime voronoi fracturing on the whole terrain and architecture based on material properties.
Funny thing is that our models and generators have the materials already set up. Physics work fine with that amounts. VFX has been implemented. "Just" the dynamic (and deterministic!) fracturing on GPU is left to finish.
And of course the floating parts in the air. Well at least that's what is left in the spirit of good old Minecraft :).






