2010-08-10 1 views
1

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

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

+1

Эй, вам может быть лучше задавать ваши вопросы по разработке игр на http://gamedev.stackexchange.com (не говоря уже о том, что здесь не имеет значения), но это гораздо более вероятно, будет замечено группой людей, имеющих опыт в область игры dev, если вы попросите ее там) – Smashery

+0

Эй. Спасибо за ссылку, я не понял, что на StackExchange появился gamedev. Я думаю, что наткнулся на общие игры и понял, что это единственное, что связано с играми. – Skoder

ответ

5

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

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

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

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