From 24885ef7bc2d1e8a21f39912d1fffaa30beaf0b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=98=D0=B3=D0=BE=D1=80=D1=8C=20=D0=A4=D0=B5=D0=B4=D0=BE?= =?UTF-8?q?=D1=81=D0=B5=D0=B5=D0=B2?= Date: Wed, 7 Oct 2026 17:01:18 +0300 Subject: [PATCH] chore: add GEMINI.md project guidelines with mandatory git protocol --- GEMINI.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 GEMINI.md diff --git a/GEMINI.md b/GEMINI.md new file mode 100644 index 0000000..3d3c67c --- /dev/null +++ b/GEMINI.md @@ -0,0 +1,37 @@ +# DoorNroll Project Guidelines & Rules + +## 1. Mandatory Git Protocol (CRITICAL) +- **Always Commit**: Any modifications, features, refactors, or bugfixes must be committed to Git as soon as they are implemented and verified. +- **Always Push**: Every commit must be pushed immediately to the remote repository: + ```bash + git push origin main + # Remote: https://git.silverstone.crazedns.ru/iker_ad/DoorNroll.git + ``` +- **Working Tree**: Keep the Git working tree clean after every task. + +## 2. Visual & Geometric Design Rules (Zero-Rounding) +- **Zero Rounding**: Absolutely NO circles, rounded corners, or smooth curved UI primitives (`DrawCircle`, `DrawCircleLines`, `DrawSphere`, `DrawRing`, `DrawRectangleRounded`). +- **Tactical Industrial Aesthetic**: All shapes must be angular, faceted, rectangular, or polygon-based (hard-surface, military electronics, cyber-noir). +- **Color Palette**: High-contrast monochrome, gunmetal, dark slate graphite, and smoked wood base, with saturated functional accents: + - Kinetic: `KIN` Titanium White + - EMP: `EMP` Cobalt Blue + - Overheat: `THM` Amber + - Corrosive: `ACD` Acid Green + - Glitch: `GLT` Neon Violet + - Nanite: `NAN` Carmine / Crimson + - Active Firing Pin / Critical HUD: Pure White & Crimson + +## 3. 3D Rendering Architecture +- **Pipeline Order in Rooms**: + 1. Opaque geometry rendered first (floor, walls, ceiling, furniture). + 2. Flush opaque batch (`rlDrawRenderBatchActive()`). + 3. Translucent pass with `BeginBlendMode(BLEND_ALPHA)`, `rlDisableDepthMask()`, `rlDisableBackfaceCulling()` (godrays, glass, light pools, energy fields). + 4. Flush translucent batch (`rlDrawRenderBatchActive()`), restore depth mask & blend mode. + 5. Post-process shader pass (`beginPostProcess` / `endPostProcess`). + +## 4. Build & Environment +- **Platform**: Windows, MSVC C++20, CMake 3.20+, Raylib 5.5. +- **Verification**: Always run CMake build in Release mode before concluding work: + ```powershell + & "C:\Program Files (x86)\Microsoft Visual Studio\18\BuildTools\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" --build build --config Release + ```