#FillRate
"this wouldn't have happened if we had only learned to love the fillrate of the graphics synthesizer of the ps2 while we had it," i mutter to myself as my house burns down to the ground, unable to cope with the power draw of my pc as it renders missile strikes while a kindly idol sings from space
September 3, 2026 at 6:39 PM
Shit, I think this is it: it's a fillrate problem

I've just never had that show up in any other engine because, come on, shadow map! Static geometry! Come onnnn bsky.app/profile/skar...
Yeah but with the ground rendering you're writing to every shadow map pixel at least once. With it turned off, you only write to the pixels that have anything above the ground, likely a fraction of the total pixels evaluated.
September 2, 2026 at 3:24 AM
OH.

Shit. You're right. It's basically another class of fillrate soaking, isn't it. I'm just not used to thinking of shadow maps as something that would cost fillrate because. Come on. Shadow map.
September 2, 2026 at 3:23 AM
Because this is minspec and I've already had to reduce render quality a lot and I limit other things that eat fillrate but

oh

I haven't done that for shadows

oh and they're still running 4-split PSSM mode too

Haaaaahhhhh

Thanks all!
September 2, 2026 at 3:26 AM
Me (smart): "but shadow buffer rendering itself is cheap! You couldn't possibly,"

Me (sicko): "yessss?"

Me (smart): "but for that to be the case your buffer fillrate cost would, it'd be, there's no way,"

Me (sicko): "oh, honey :3"
September 2, 2026 at 3:56 AM
Like obviously I've debugged shadow perf too, and eventually I would have noticed the shadow quality setting and that might help, but that isn't this. This is squarely "soaking fillrate but via shadow rendering cus you drew a lot of big overlapping planes".

That's. What. No. That's so DUMB. What.
September 2, 2026 at 3:33 AM
i can still see this iteration on the classic impostor being super useful on fillrate bound platforms (e.g. mobile apus which are steadily becoming the standard quality median), really glad i asked! ty for the explanation!
April 9, 2026 at 10:42 PM
the hair looking better on ps2 is likely due to the ps2's insane fillrate and alpha blending making it easier to make hair nice by Simply Adding More Quads With A Clipped Texture On Them
is it a hot take to say that the original MGS2 version of the MGS1 model is better than the edit they made for Twin Snakes (wrong hair and less detailed textures aside)
November 3, 2025 at 9:57 PM
Looking at this it seems some results are missing on the left side. Like fillrate
August 8, 2025 at 10:26 AM
Largely unrelated, but iirc the PS2 does basically have a "magic Mist Engine" in it. I think it's crazy fillrate let it get away with putting lots of big simple particles on the screen, which was difficult for other rendering solutions of the time (hence why PS2 SH2 is the foggiest version).
May 10, 2025 at 5:23 PM
there may be some amount of copy+accumulation buffer of blur happening in the game?, and drawing the player car afterwards would prevent ghosting/smear of the player's vehicle in that.
ps2 console was fun to make games for, tons of fillrate to do alot of buffer copies and mask/blur/bloom stuff
May 4, 2026 at 11:10 PM
I just wanted a future with more fillrate and free MSAA
March 16, 2026 at 9:22 PM
the extra code to bake the particle color and light isnt a noticable cost, they are particles so cost depends on size onscreen and fillrate.
Depth prepass of scene opaque geometry saves a ton of performance since this is an object space technique so particles are spawned and drawn on backfaces
April 30, 2025 at 1:47 PM
the current implementation uses a scaled up single quad pass when splitting the model, so both halves of the object can slide/ separate from one another. Would be more optimal and fillrate friendly to do it in 2 tightly bounded sprite halves, or N-pieces for more cuts, but thats for another time
February 22, 2025 at 11:23 PM
I tend to think in terms of depth complexity / overdraw / fillrate, which is not strictly what those three items represent, but useful in terms of what I need to optimise or change.

There's also quad overdraw, but for mobile VR I find we're not pushing enough polys for that to be important.
May 9, 2025 at 4:35 PM
Agreed. I doubt we see any changes to how it works either. Given their track record with previous iterations. Open world GP fillrate is a gate for timed nodes. This is just poor design. Especially agregious as I am a fisher. Needing all 1400GP per pond and chain missions not allowing it. RNG :)
April 25, 2025 at 3:45 AM
we love our fillrate, don't we folks, yes we do, i'm always say-when i look at the ps2 fillrate i say look, look at her, she's a pretty one. isn't she pretty?
May 16, 2026 at 12:30 AM
Right, So I can reach 500+ fps when using lowest settngs @ 480p...
Still gotta fix the gpu fillrate bottleneck, as I'm "only" getting 170fps at 1440p max settings.

But first, more work on the guns
#solodev #gamedev #optimization #madewithunity
December 19, 2024 at 5:45 PM
Sooo apparently I hit 400+ fps when using the lowest possible settings and render distance in my game (as well as 480p)

Optimization goes brrr, still more work to do, due it being pixel / fillrate bound at higher resolutions.

#optimization #indiegame #gamedev #solodev #indiedev
December 10, 2024 at 9:01 PM
My games fps is fillrate bound.... Lowering the resolution gives me a pretty big increase in fps. But I refuse to use DLSS or other upscaling bullshit, so I'm redoing the terrain shader for non LOD0 terrain meshes to be cheaper.

#solodev #indiedev
November 15, 2024 at 2:06 PM
I have no clue what "alpha blending", "prevalent accumulation motion blur", or "fillrate" even mean. I even had to go to Wikipedia to double-check what "Interlacing" was, though I've at least heard that term before.
April 19, 2025 at 1:36 PM
there's some major differences, ps2 does not have programmable shaders, but it is a monster with fillrate and vector processing, so you'd have games that use so much particles and overdraw that could make even next gen consoles cry, but it could not do things like normal/bumpmapping like 3ds could
December 28, 2024 at 6:32 PM
Interlacing is still a thing for 6th gen. And "lost tech" of PS2 pushing out lots of alpha blending and prevalent accumulation motion blur in particular, utilizing it's great fillrate

Not how effects done in post-shader era
April 18, 2025 at 6:21 AM
What's surprising me about this whole hardware2 endeavor is that drawing the BSP tree in reverse order not only works flawlessly, it dramatically simplifies the logic by unifying sorting for *all* drawn objects, at essentially no fillrate cost from overdraw. #RingRacers #GameDev
February 11, 2025 at 5:31 AM