gmod-rs/crates
Niko Marmeladkov 229372ffa1 Прыжок 200 вместо 270 и исправлены флаги граней — пропало 100 дырок в картинке
«Дырки в крыше, сквозь которые нельзя упасть»: граней в картинке было меньше,
чем в коллизии. Причина — константы SURF_* в world.rs были перепутаны. По
public/bspflags.h Source настоящие значения:

  SURF_SKY2D    0x0002      SURF_NOPORTAL 0x0020
  SURF_SKY      0x0004      SURF_TRIGGER  0x0040
  SURF_WARP     0x0008      SURF_NODRAW   0x0080
  SURF_HINT     0x0100      SURF_SKIP     0x0200

SURF_NOPORTAL означает «нельзя поставить портал», SURF_TRIGGER — служебный
флаг; ни то, ни другое не про рисование, а мы их пропускали. Замер на
gm_construct: старая маска скрывала 2511 граней, новая 2411 — в картинке
появилось 100 граней, не пропало ни одной.

Тесты surface_flags_match_source_bspflags и
skip_mask_covers_only_faces_that_are_not_drawn не дадут значениям снова разойтись.

«Прыжки марсианские»: скорость прыжка бралась как 270 из Source SDK, а у GMod
она своя — вики GMod в примере Player:GetJumpPower() печатает 200. Прыжок был
выше в 1,8 раза.

  высота     60,8 -> 33,3 юнита
  до вершины 0,45 -> 0,33 с
  полёт      0,90 -> 0,67 с

sv_gravity = 600 подтверждён вики отдельно и остаётся.

Попутно исправлены две ошибки в самих измерениях: брался максимальный z над
точкой вместо высоты поверхности на месте (крыша на z=1296 заслоняла крышу на
z=240), и зазор между габаритами считался без клампа по нулю. На этих
артефактах диагностика рапортовала чужие дефекты.
2026-10-14 08:43:51 +03:00
..
client Ноклип: импульс по Z сохраняется, прыжки складываются 2026-10-14 08:00:34 +03:00
engine Прыжок 200 вместо 270 и исправлены флаги граней — пропало 100 дырок в картинке 2026-10-14 08:43:51 +03:00
formats render/engine: отсечение задних граней с нормализацией намотки 2026-10-12 17:12:40 +03:00
fs lua: рантайм LuaJIT с GMod-подобным API и автозагрузкой клиентских аддонов 2026-10-12 04:29:09 +03:00
lua lua: стандартная библиотека GMod — hook.Run, math, game, file с песочницей 2026-10-13 13:17:28 +03:00
math engine/client: коллизия с брашами и displacement'ами, фикс AABB игрока 2026-10-12 02:18:06 +03:00
net net: добавлен недостающий userinfo-конвар cl_playermodel 2026-10-12 14:51:57 +03:00
render Небо гасится за пределами карты: и 2D-скайбокс, и 3D-скайбокс 2026-10-14 07:10:47 +03:00
tier sprint 0: workspace, tier/fs/math, VPK v1/v2 с CRC, окно SDL3+wgpu на Vulkan 2026-10-11 22:47:09 +03:00