gmod-rs/crates/engine/src
Niko Marmeladkov b564de5b25
Some checks are pending
CI / checks (push) Waiting to run
Зеркало func_reflective_glass: отражённая камера и клип по плоскости
- сборка мира: модель зеркала помечается материалом-меткой `<mirror>` до
  резолва материала (у reflectiveglass001 нет VTF, иначе грань выпадала),
  из её граней строится плоскость MirrorPlane (origin, normal);
- рендер: проход отражённой камерой в текстуру Rgba16Float, клип по плоскости
  зеркала (vec4 в uniform камеры, discard в шейдере), грань зеркала сэмплирует
  отражение по экранным координатам;
- отражение привязано на слот лайтмапы (группа 3) отдельным bind group:
  у устройства max_bind_groups = 4, пятая группа не создаётся;
- обычный проход пропускает зеркальные батчи (иначе чекер-заглушка
  перекрывала отражение), зеркало рисуется после непрозрачного мира;
- найден и исправлен пропуск слота `sun` в Camera у world.wgsl (из-за него
  fog_color читался со сдвигом).

Проверено: 25 сьютов и 29 картовых тестов зелёные; UV-градиент на грани
подтвердил плоскость и шейдер, отражение показывает стену и потолок.
2026-10-23 19:26:00 +03:00
..
animation.rs A26: постоянные дорожки RAW и выбор анимации по состоянию 2026-10-23 14:02:05 +03:00
camera.rs engine/render: M3 v0 — рендер мира BSP со скайбоксом 2026-10-12 00:06:26 +03:00
constraints.rs engine: констрейны — шар, шарнир, ползун, сварка, верёвка 2026-10-13 13:56:47 +03:00
entity.rs lua: мост к движку — Entity(), ents.* работают с живым миром 2026-10-13 12:57:01 +03:00
lib.rs Слияние feat/hdr: попиксельная лайтмапа, HDR, мягкие тени 2026-10-23 14:30:13 +03:00
model.rs A26: кадры анимации играют — модель игрока и вьюмодель 2026-10-17 12:37:45 +03:00
physics.rs Физика: углы Source ↔ кватернион тела совпадают с рендером 2026-10-23 18:06:45 +03:00
player.rs feat(render): попиксельная лайтмапа, HDR и мягкие тени 2026-10-23 14:10:58 +03:00
world.rs Зеркало func_reflective_glass: отражённая камера и клип по плоскости 2026-10-23 19:26:00 +03:00