2015-08-26 5 views
0

Это может быть глупый вопрос, но я застрял и не могу его передать. Я делаю изометрическую игру, и у меня есть карта, построенная с использованием плит, я просто последовал этому руководству, чтобы построить карту, http://www.binpress.com/tutorial/creating-a-city-building-game-with-sfml/137. Но теперь я не знаю, как добавить символьные спрайты. Должен ли я добавлять эти спрайты, используя плитки, или просто рисовать спрайты в положение экрана. Любая помощь приветствуется.Isometric Sprites

ответ

1

Насколько я могу судить по движку, просто следуйте руководству «Текстуры и анимации» и нарисуйте анимацию на экране после того, как вы нарисуете плитки. Это не сложный движок, поэтому вы работаете только с 2D-спрайтами, нарисованными на экране (3D-эффект - всего лишь трюки алгоритма живописца, чтобы заставить его работать ... нет оси z, о чем указывает учебник)

+0

Да, это то, что я сделал сначала, но чувствовал себя не так, как учил, я бы спросил, прежде чем тратить больше времени. Спасибо за ответ. – user1857403

0
  1. глубина делается по заказу плитки оказывающего

    То же самое касается объектов, игроков и т.д. ... Пусть предположить плоскость XY параллельно с землей и Z ось - высота. Тогда ваша сетка будет что-то вроде этого (предполагается, что макет формы алмаза):

    diamond shape layout

  2. Порядок оказания

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

    Так что теперь, если у вас есть какой-либо объект, проигрыватель или материал помещен в ячейке (x,y,z), то вы должны сделать его сразу после того, как клетка (x,y,z) была вынесена до рендеринга любой другой клетки.

    Для ускорения - это хорошая идея иметь объекты и игроков на вашей карте плитки в качестве ячейки. Но для этого вы должны иметь плитки в правильном порядке, а также ваши картографические представления должны быть способны это сделать.

 Смежные вопросы

  • Нет связанных вопросов^_^