get her what she really wants for christmas (casting shadows from alpha-tested materials in the id Tech 4 engine)

— hitscanner apologist ⚡
— tired trans woman ⚧️☣
— not always grumpy, she just looks like that 💀
— level/environment designer 🔨
— Current work: Skin Deep (at Blendo Games) 🐈
📍 Adelaide, Australia
Private page (for friends): @garbagegrenade
get her what she really wants for christmas (casting shadows from alpha-tested materials in the id Tech 4 engine)
this got me thinking what pacts with the dark gods of graphics one would need to make to make this possible
There are some nasty workarounds that I've used in situations where it's especially noticeable. You can build a shadow mesh out of brushes if it's simple enough, but it's not practical for complex shapes (e.g. grates, netting, ropes)
My best guess would be to build a tool where you can feed in a surface in 3D space and an alpha-tested material and it generates a shadow mesh for it, based on which parts of the surface pass the alpha test. It'd be nasty as hell but it might work.
Another idea might be... get the surface's coordinates in space, flatten it down to a plane from the 'perspective' of the light, save that to a buffer somehow (???) and then subtract it from the light texture on the fly, if that's even possible. But only spotlights are guaranteed to have the light texture perpendicular to the direction they're casting—point lights are more like upright cylinders that fade towards either end.