-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathspec.txt
More file actions
51 lines (41 loc) · 4.76 KB
/
spec.txt
File metadata and controls
51 lines (41 loc) · 4.76 KB
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Спецификация на графический движок m2d
1. Общее описание и базовые требования
Данная спецификация описывает базовые объекты (Блоки, Мир, его максимальные размеры и т.п.), методы хранения информации о положении и состоянии объектов.
1.1 Структуры и объекты, описывающие Мир, Блоки и т.п. должны содержать информацию ИСКОЮЧИТЕЛЬНО о типе, свойствах(твердый блок, сыпучий, моб и т.п.), параметрах (положение в пространстве, угол поворота и т.п.)
1.2 Привязка текстур, свойств анимации и т.п. должна осуществляться в методах и классах, отвечающих за вывод графики (опираясь, например, на тип блока)
1.3 Описательная часть Мира должна быть отделена на логическом уровне от визуализации Мира
1.4 Должны быть реализованы юнит-тесты
2. Описание базового Блока
2.1 Описательная часть объекта Блока должна содержать:
- тип
- координаты
- размеры
- список свойств, который не фиксирован и может расширяться при описании логики игры
2.2 Графическая часть, обрабатывающая объекты типа Блок, должна уметь:
- по типу Блока выбрать текстуру
- по размеру Блока откалибровать текстуру (уменьшить/увеличить)
- отрисовать по заданным координатам
3. Описание Мира
3.1 Мир состоит из объектов
3.2 Объекты делятся на Блоки и Сущности
3.3 Сущности делятся на Игрока, Мобов, Предметы.
3.4 Все Сущности могут самостоятельно передвигаться
3.5 Предметы делятся на Инвентарь и Схемы
3.6 Схемы могут быть Эл.схемами, Водопроводами, Механизмами
3.7 Мир со всеми Объектами описывается Сценой
3.8 Сцена реализует:
- прозрачный механизм подгрузки (выгрузки) информации о части Мира, локализуемой положением Игрока
- взаимодействие с графическим движком (предоставление инфы об объектах)
- взаимодействие с логическим движком (возможность редактирования мира)
4. Требования к описательному движку
4.1 Данный игровой движок универсален и может применяться для конечного множества игр
4.2 Должны быть реализованы механизмы, позволяющие легко и быстро нарастить кол-во типов Блоков и Сущностей
5. Требования к графическому движку (ГД)
5.1 ГД для отрисовки использует только данные, предоставленные сценой
5.2 ГД не может изменять объекты Мира (для ГД Мир только для чтения)
5.3 При выводе графической информации ГД должен отображать не только часть игрового мира, но и Карту, "Вещь-мешок" и статистику по игре
6. Требования к интерфесу взаимодействия с пользователем
6.1 Для взаимодействия Человек-Компьютер используются устройства ввода типа "клавиатура" и "мышь".
6.2 Допускается использование только одного из устройств, указанных в п.6.1.
6.3 Для взаимодействия Компьютер-Человек используются устройства вывода визуальной и акустической информации.
7. Требования к логическому движку не предъявляются, т.к. являются частью Игровой логики