You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+23-1
Original file line number
Diff line number
Diff line change
@@ -110,6 +110,27 @@
110
110
-**8**: Красный (тип 2).
111
111
-**9**: Синий (тип 3).
112
112
113
+
# Turbo Mode (Experimental Feature)
114
+
115
+
-**Turbo Mode**
116
+
— это экспериментальный режим симуляции, который превращает вашу "Игру Жизни" в настоящий ускоритель частиц! В этом режиме мы выжимаем максимум из GPU, позволяя выполнять несколько шагов симуляции за один кадр рендеринга. Результат? Скорость симуляции взлетает до небес, но стабильность остаётся под вопросом.
117
+
- Как это работает?
118
+
- Включите Turbo Mode через кнопку в окне "Управление симуляцией" (ищите красную кнопку — её сложно пропустить!).
119
+
- Количество шагов симуляции за кадр (Simulation Steps) автоматически подстраивается в зависимости от текущего FPS, пытаясь удерживать рендеринг на частоте вашего монитора (по умолчанию 75 Гц).
120
+
- Чем больше шагов, тем быстрее эволюционирует ваша сетка — но и тем выше нагрузка на систему.
121
+
-**Предупреждение**: Экспериментальная зона!
122
+
-**Стабильность**: Этот режим нестабилен и зависит от размера сетки, мощности вашего GPU и настроек параметров. На больших сетках (например, 10000×10000) возможны просадки FPS, зависания или странные глюки — от "волн" в скорости симуляции до внезапных "турбо-скачков".
123
+
-**По умолчанию**: Режим выключен, и игра работает в стандартном стабильном режиме с одной симуляцией на кадр. Включайте Turbo Mode только если готовы к приключениям!
124
+
-**Почему это круто**?
125
+
- На маленьких сетках вы получите молниеносную симуляцию без потери FPS.
126
+
- На больших сетках это как тест на выносливость для вашего GPU — сможете ли вы укротить хаос?
127
+
-**Как использовать**?
128
+
- Откройте окно "Управление симуляцией".
129
+
- Найдите кнопку "Turbo Mode" (красная, как сигнал опасности).
130
+
- Нажмите её, чтобы включить/выключить режим.
131
+
- Наблюдайте, как ваша симуляция либо взлетает, либо эпично падает — зависит от удачи и настроек!
132
+
-**Примечание**: Мы не гарантируем, что ваша видеокарта не начнёт молить о пощаде, а игра — вести себя как космический корабль на автопилоте с пьяным штурманом. Это эксперимент, так что играйте с ним на свой риск и получайте удовольствие от хаоса!
-`TextureFieldRenderer.h`, `TextureFieldRenderer.cpp` - Отрисовка игрового поля на дальних расстояниях от самого поля, улучшает производительность не влияя на визуальное отображение.
192
213
-`CellsViewportRenderer.h`, `CellsViewportRenderer.cpp` - Отрисовка игрового поля на ближних расстояниях от игрового поля, улучшает визуальное отображение.
193
-
-`IRendererProvider.h` - Проводник обеспечивающий обмен данными между разными классами. Это простой интерфейс, паттерн провайдер.
214
+
-`IRendererProvider.h` - Проводник для `Renderer`обеспечивающий обмен данными между разными классами. Это простой интерфейс, паттерн провайдер.
194
215
195
216
-**./mathematics**: Математические утилиты:
196
217
-`Matrix4x4.h`, `Matrix4x4.cpp` - Операции с матрицами (на данный момент не используется)
@@ -207,6 +228,7 @@ git push origin v1.0.0
207
228
-`ShaderManager.h`, `ShaderManager.cpp` - Создание компиляция проверка шейдеров (GLSL) OpenGL
208
229
-`SettingsManager.h`, `SettingsManager.cpp` - Сохранение и загрузка пользовательских настроек.
// так как у нас есть вертикальная синхронизация то колличество симуляций не сможет превысить частоту обновление монитора. поэтому мы обошли такие ограничения
256
+
int monitorHz = GetMonitorRefreshRate();
257
+
float frameIntervalMs = 1000.0f / monitorHz; // Например, 13.33 мс для 75 Гц
0 commit comments