-
Notifications
You must be signed in to change notification settings - Fork 1
/
settings.py
25 lines (20 loc) · 1.71 KB
/
settings.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import math
# настройки игры
RES = WIDTH, HEIGHT = 1600, 900 # Размер окна игры
FPS = 60 # Частота обновления окна игры
HALF_WIDTH = WIDTH // 2 # Половина ширины экрана
HALF_HEIGHT = HEIGHT // 2 # Половина высоты экрана
PLATES_POS = 1.5, 5 # на миникарте
PLAYES_ANGLE = 0 # Угол игрока
PLAYES_SPEED = 0.004 # Скорость игрока
PLAYES_ROT_SPEED = 0.002 # Скорость вращения игрока
FOV = math.pi / 3 # Угол зрения игрока
HALF_FOV = FOV / 2 # Половина угла поля зрения игрока
NUM_RAYS = WIDTH // 2 # Число лучей для обработки изображения
HALF_NUM_RAYS = NUM_RAYS / 2 # Половина числа лучей
DELTA_ANGLE = FOV / NUM_RAYS # Угол между лучами
MAX_DEPTH = 20 # Максимальная глубина отрисовки изображения
# Изменяя глубину, мы изменяем дальность отрисовки стен, но при этом пустые пространства отрисовываются,
# как стена. Это можно использовать для создания исскуственной туманности
SCREEN_DIST = HALF_WIDTH / math.tan(HALF_FOV) # Дистанция до экрана отрисовки изображения на экране игрока
SCALE = WIDTH // NUM_RAYS # Определяем коэффициент масштабирования прямоугольника лучай отрисовки т.к. лучей меньше чем разрешение экрана