2015-05-31 2 views
2

У меня есть SCNNode и SCNCamera. Камера расположена вверху и перед узлом и смотрит вниз на узел с помощью SCNLookAtConstraint, который у меня установлен. Однако, когда узел перемещается вбок, камера вращается только вместо того, чтобы двигаться вместе с ней. Есть ли способ заставить камеру перемещаться с узлом?Нужно ли SCNCamera следовать за узлом на фиксированном расстоянии?

ответ

5

Вы используете только SCNLookAtConstraint, который, как говорится в его названии, сделает камеру. Посмотрите на объект. (Вам нужно только повернуть голову, чтобы что-то посмотреть)

Чтобы сделать камеру перемещающейся с ней, вам понадобится либо SCNTransformConstraint (documentation here), либо просто сделайте Camera Node дочерним по отношению к объекту, который вы хотите, чтобы он следовать.

Если вы хотите, чтобы камера плавно следила за объектом и была ограничена только расстоянием (как если бы оно было затянуто веревкой), путь SCNTransformConstraint - это путь.

4

Если преобразование между вашим узлом и камерой всегда одинаково, вы должны подумать о том, чтобы сделать камеру дочерним узлом вашего узла. Это намного эффективнее и проще, чем использование ограничений.

1

Я сделал мой узел камеры дочерним узлом SCNNode, которым я хотел следовать. Это еще один способ добиться этого.

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