diff options
| author | salmonik <salmonik@tuta.io> | 2026-11-04 12:52:03 +0100 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-11-04 12:52:03 +0100 |
| commit | a83d3c80d3c555490e7545a191a2c09dd74ca13d (patch) | |
| tree | aaaab95ba016362a948cd1148229d12047a8a5c0 /Makefile | |
| parent | ESP: classify NPC damage immunity/armour/vulnerability (diff) | |
| download | hl2h-a83d3c80d3c555490e7545a191a2c09dd74ca13d.tar.gz hl2h-a83d3c80d3c555490e7545a191a2c09dd74ca13d.zip | |
Props: forward DrawModel's modelOrigin argument
DrawModel takes (this, results, info, boneToWorld, flexWeights,
flexDelayedWeights, const Vector &modelOrigin, flags). The hook dropped
modelOrigin, so flags landed in its slot and the real flags were read from
caller stack garbage. studiorender.so 0x83ad0 reads 0x20(%ebp) as the
modelOrigin pointer and 0x24(%ebp) as the flags; passing both restores the
engine's normal draw.
This is the cause of the intermittent (~50%) checkerboard/error-material
props: the draw was being issued with a garbage flag word.
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions
