Skip to content

Interpolate Hitboxes when Scaling Mobjs

When a mobj is scaling up or down, the mobj's scale is interpolated smoothly, but its hitbox (the renderhitbox console variable) isn't, as it uses the mobj's radius/height, which aren't interpolated. [Déjà vu.]
This merge request adds radius/height variables to interpmobjstate_t, and uses them for hitboxes, drop shadows, and upside-down sprites - the latter two being enhanced and simplified compared to !1986 (merged) and !1979 (merged), but still not perfect as some parts are still uninterpolated (e.g. "touching-sector" lists).
This does not interpolate direct changes to mobj->radius/mobj->height, only their natural scaling from changing mobj->scale. Likewise, mobjs do not have old_radius/old_height variables.

Also now uses decimal instead of octal vertex IDs for the hitbox in OpenGL, because referencing index 027 of a 24-length array looks weird.

-

TL;DR: Fixed some interpolation artefacts

Merge request reports