2013-09-04 3 views
2

Я пытался сделать камеру третьего лица в libgdx в течение последних нескольких дней и не могу понять, как это сделать. Я попробовал функцию rotateAround в PerspectiveCamera, но когда я перемещаю камеру как раз за моделью, ее следует следовать, вращение становится испорченным. Я в недоумении, что сейчас попробовать. Я хочу, чтобы камера была настроена назад и чуть выше модели и следила за ней. Если бы кто-то мог указать мне в правильном направлении, я был бы очень признателен.Просмотр камеры третьего лица

ответ

2

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

В зависимости от масштаба ваших моделей вам, возможно, придется играть с этими значениями.

В рендер цикле вы хотите что-то вроде этого:

к сведению, что в этом примере игрок является Vector3 и камерой является перспектива камеры

Это позволит сделать внешний вид камеры на характер. Вы можете изменить значения, чтобы они выглядели впереди (измените для этого x и z).

cam.lookAt(player.x, 0, player.z);

Здесь мы устанавливаем расположение камеры, таким образом, мы можем видеть, что она всегда будет плавающим позади и над характером

cam.position.set(player.x, 10f, player.y-20f)

Это обновляет камеру, чтобы применить все ваши преобразования

cam.update();

Abou t вращение я не слишком уверен, я не пробовал. Here s статья, которая должна помочь.

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