2010-10-26 5 views
0

Я пишу прокрутку игры с физикой. Прежде, чем мои руки грязные, я начал концентрироваться на физике и визуализации графики. Сначала я думал о том, чтобы хранить все статичные (без прокрутки). Для физики, обратившись ко многим учебным пособиям, наконец я оказался здесь http://www.tonypa.pri.ee/vectors/tut08.html. Этот набор руководств охватывает большинство базовых/расширенных физик, необходимых для простой игры. Следуя этому руководству, я создал свой 2-й мир с такими объектами, как треугольник, ящик, ..... Каждая из различных вершин объектов сохраняется как векторы для вычисления столкновения, отскока, ....... Ответ довольно хорош, если i применить силу в x/y, работает идеально, если все объекты, которые могут быть сколидированы, являются статическими. Теперь я пытаюсь переместить все векторы в соответствии с направлением (справа/слева) и в то же время обновить новое изменение вектора для столкновения. У меня есть некоторое базовое понимание того, как этот перевод работает в среде на основе плитки. Но для мира, основанного на негравитации, лучшая практика. Заранее спасибо.Прокрутка 2-го мира с физикой

+1

Вы пытаетесь прокрутить весь экран или просто перемещать отдельные объекты? –

+0

Im пытается прокрутить всю сцену как в x, y. Было бы здорово, если бы кто-то объяснил подход к популярной игре PSP LOCO ROCO. Онлайн-версия здесь http://www.cuteflashgames.com/game/loco_roco.html – Anandh

ответ

1

Если вы собираетесь переместить все, лучшим способом было бы просто прокрутить виртуальную камеру.

Боюсь, я ничего не знаю о вспышке, но я бы предположил, что у нее есть некоторые функции для управления виртуальной камерой, матрицей преобразования по умолчанию или чем-то подобным.

Вам не нужно ничего менять, если вы можете манипулировать виртуальной камерой или матрицей преобразования по умолчанию.

+0

Спасибо за ваш ответ. Я не разрабатываю это во Flash, пишу эту игру в объективе-c/c для iphone, используя cocos2d и свой собственный векторный физика. Как вы сказали, я пробовал прокручивать весь CCLayer, но я не мог сделать его идеальным. Я попробую изучить камеру и openGL ES. Может ли кто-нибудь объяснить, как координата x, y камеры должна переводиться в соответствии с движением игрока? – Anandh

+0

Я знаком с OpenGL, но не с OpenGL ES, поэтому я не знаю, где именно они меняются. В opengl вы должны установить glMatrixMode (GL_MODELVIEW), чтобы манипулировать матрицей просмотра модели, а затем использовать либо glTranslatef, либо использовать методы glLoadMatrixf (и поддерживать собственную матрицу представлений вне opengl) для управления виртуальной камерой. Я обычно поддерживаю свои собственные матрицы, так как легче получить доступ ко всем данным, которые вам нужны в сложной программе. – Montdidier

1

Если вы используете OpenGL ...

Я насыщая это из памяти, так что вы должны проверить взыскивает, но я думаю, что есть метод GL, что статистика местоположение и то, что вы смотрите. Это все, что вам нужно. Вы можете указать его в мировых координатах, чтобы координаты x, y соответствующих объектов не менялись, просто ваша вена.

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