Tilemap - Столкновение слоя необходимо? - PullRequest
1 голос
/ 10 августа 2010

Я создаю 2-х стороннюю игру с прокруткой, и у меня возник вопрос по поводу столкновения. Я читал различные статьи, и некоторые из них говорят, что у вас должен быть слой столкновений, который в точности соответствует стилю листов, но просто хранит биты. Я понимаю эту логику, но что если мои плитки на самом деле являются структурами, которые содержат свойство с именем IsSolid. Могу ли я просто проверить, есть ли текущий тайл isSolid вместо другого слоя? Или наличие слоя столкновения дает дополнительные преимущества, которые я пропустил?

Спасибо за любую помощь

1 Ответ

5 голосов
/ 10 августа 2010

На самом деле, если ваша игра поддерживает несколько слоев, это только большая проблема.

Если у вас есть несколько визуальных слоев (например: фон, игровое поле, передний план), то может быть полезно иметь возможность обрабатывать все эти слои одинаково. Отделение данных о столкновениях может быть структурно «хорошим».

Как вы это делаете, зависит от вас. Вы можете реализовать отдельный слой столкновений, который вы можете редактировать отдельно. Однако я рекомендую против этого, потому что тогда вы должны поддерживать синхронизацию слоя столкновения с визуальным слоем «игрового поля».

Лучшее решение состоит в том, чтобы при загрузке уровня динамически генерировать "слой" столкновений, извлекая данные из слоя игрового поля (и, возможно, других слоев, если это имеет смысл для вашей игры). Возможно, вы сохраните этот «слой» в совершенно другом формате и поместите его в визуальные данные для уровня.

...