Извините, если это глупый вопрос, но я начинаю космический перестрелку, как Икаруга и т. Д. ... и заметил, что пули, игроки, враги не двигаются со свитком. Этот тип игр представляет все на экране?
Я имею в виду, что вы можете иметь прокручивающую / вращающуюся среду на заднем плане, но столкновения и т. Д. Только в пространстве экрана?.
Исходя из этого, что вы думаете об этом игровом процессе:
1) Игрок в экранных координатах
2) Враги - это мировые координаты, пока они не пробудятся, в этот момент они преобразуются в экранные координаты (просто используя текущую мировую позицию прокрутки).
3) Пули врага и игрока - это координаты экрана.
4) Если бы у нас были препятствия в мире (скажем, например, в 2D-игре у нас есть плитки, представляющие препятствия), нам пришлось бы преобразовывать пули, врагов, игрока в мир, чтобы проверять столкновения с картой.
Преимущества:
- Все, что движется, - это пространство экрана, легко проверять столкновения между динамическими объектами и т. Д. *
Недостатки:
- Мы должны преобразовать каждую сущность в мировые координаты, чтобы проверить наличие препятствий.
Иначе можно было бы иметь все в мире и перемещать игрока (звездолет), пули и т. Д. На то же количество перемещенного свитка и применять свою собственную скорость.
Преимущества:
-Все это экранная карта / сущности, поэтому конвертация не требуется.
Недостатки:
-Мы должны пройти через каждую сущность, чтобы применить исправление к ее положению на основе скорости прокрутки, чтобы имитировать вещи в пространстве экрана.
Как вы думаете, это лучшее решение ?. Я реализую первый прямо сейчас.
Спасибо заранее,
HexDump.