18:42 Геометрия областей в SimCity 2013 |
Геометрия областей в SimCity 2013 Как разработчикам удалось совместить строительство в зонах с разной геометрией рассказал Грег Андервуд, программист из команды Maxis. Привет всем! Я инженер Грег Андервуд, отвечающий за системы зонирования в игре SimCity. Чтобы вы могли физически могли размещать здания на карте города мы использовали особую геометрию областей вместо сетки, которая была в предыдущих версиях игры. Строительство города является важной геометрической задачей — дороги и здания нужно разместить в мире так, чтобы город как единое целое развивался естественно и правдоподобно. В предыдущих играх тоже была удобная система разметки — сетка, которая делила пространство на квадратные ячейки. У каждого объекта был свой размер и все они могли размещаться на карте, если позволял размер. Однако карта при этом была похожа на тетрис. В SimCity 2013 технологии строительства усовершенствовались, мы создали извилистые дороги и полностью трехмерные объекты. Кроме того, все здания меняются в зависимости от прогресса в игре. Поэтому возникла необходимость размещения их на карте с другой геометрией областей. Она будет привязана к дорогам. Построив их, вы можете размещать постройки и создавать жилые, коммерческие или промышленные зоны. Когда вы строите дорогу, внутри заложенного алгоритма создается ряд участков. Участки служат для разделения пространства и представляют собой своеобразную сетку, выровненную вдоль созданных извилистых дорог. Создавая жилые, коммерческие и промышленные области с помощью инструмента создания областей, вы можете видеть их форму. ![]() При наличии места для создания зданий в зонах, система областей пытается подыскать группу участков. Сложность в том, что геометрия сетки не является регулярной и квадратной: участки повторяют форму дорог, поэтому в одном месте они сужены а в другом — расширены и часто накладываются друг на друга. ![]() Возникает интересная задача по вычислению геометрии: по контуру здания нужно определить, поместится ли оно в форму, образованную группой участков. Математически эта задача называется «Размещение объектов». Простыми словами ее можно сформулировать так: «Сколько разных способов нужно применить, чтобы узнать, поместится ли одна фигура внутри другой?» Поскольку существует бесконечное множество форм, решение может быть очень сложным, а его реализация может оказаться весьма затратной. Но в случае с SimCity 2013 эта задача значительно упрощается: Во-первых, нам известно направление здания – его фасад направлен к дороге. Во-вторых, мы знаем форму здания – она всегда представляет собой прямоугольник. Эта информация позволяет свести решение задачи к паре простых тестов, за счет чего мы можем быстро размещать здания вдоль городских улиц. Конечно, немало сложностей: необходимо учитывать наложение и пересечение участков с разной геометрией. Плюс в игре присутствуют крутые склоны, мосты, берега водоемов и скалы. Также в SimCity 2013 есть здания с собственными дорогами и модулями, которые нужно встроить в общую систему. Разнообразие всех этих условий превращает игру в поиск интересных вариантов и надеюсь решение этих задач доставит вам не меньше удовольствия, чем мне! PS. Кстати, то о чем рассказал Грег Андервуд — весьма увлекательная вещь для многих проектировщиков игр. Это новое направление и оно получило название «урбанистическое моделирование» (генерация участков в игровой среде). Посмотрите на видео, как выполняется настройка зданий в таких системах. |
|
Всего комментариев: 0 | |


- Советы в роскрутки
- Написал: nikskameykin (21.10.2016)

- Урок № 2 Создание формы входа и I этап регистрации
- Написал: vazonov11 (11.01.2014)


- Советы в роскрутки
- Написал: nikskameykin (21.10.2016)

- Урок № 2 Создание формы входа и I этап регистрации
- Написал: vazonov11 (11.01.2014)
