1ae8811...
by
Andrei Alexeyev <email address hidden>
lasers: improve collision; move to lasers/
Moved quantization out of the draw code. The laser is now quantized once
per frame, and the segment data is used for both collisions and
rendering. Player motion is now accounted for as well, preventing
phasing through thin lasers. The overall result is more precise *and*
faster collision detection.
20b360f...
by
Andrei Alexeyev <email address hidden>
geometry: rework lineseg_circle_intersect; add a few useful functions
Fixed a false negative in lineseg_circle_intersect that could occur when
the closest point lies outside the line segment, yet the segment is
still within the circle's radius. Optimized to avoid square roots. Added
functions for querying the closest point on a line segment without
distance restrictions.
593f756...
by
Andrei Alexeyev <email address hidden>
renderer/null: return a more sensible fake viewport value
Avoids an assertion failure in r_framebuffer_viewport_rect
9f2a363...
by
Andrei Alexeyev <email address hidden>
stage: fix --frameskip
4d1b4eb...
by
Andrei Alexeyev <email address hidden>
lasers: new renderer based on signed distance fields (#317)
* lasers: new SDF-based renderer (WIP)
* lasers: tweak sdf_apply shader
* lasers: fix incorrect rendering at 'unlucky' resolutions
* lasers: optimize rendering of multiple lasers
Try to coalesce render passes as much as possible
* lasers: fix warning
* lasers: move rendering into a new file
* lasers: correct "time" coordinate mapping for texturing
* lasers: wrote a novel about laser rendering [skip ci]