0

シーンキットでフォローカメラを作ろうとしています。始めたばかりなので、がんばってください。ノード ( robotNode) があり、カメラをロボットに追従させようとしています。カメラをロボットの子ノードとして追加することで、これを部分的に達成しました。

cameraNode = [SCNNode node];
cameraNode.camera = [SCNCamera camera];
[robotNode addChildNode:cameraNode];

// place the camera
cameraNode.position = SCNVector3Make(0, 0, 10);

しかし問題は、カメラを回転させ始めると、ノードに追従しなくなることです。ここを参照してください: cameraNodeImage

ノードを追跡し続けるにはどうすればよいですか?

4

1 に答える 1

1

あなたが書いたものは、ロボットから一定の距離にカメラノードを作成しますが、カメラがどこを指すかを制御するために何もしていません.

ターゲットがロボット ノードである SCNLookAtConstraint を作成します。それをカメラ ノードにアタッチします。

// warning, written in browser, untested

SCNLookAtConstraint *robotStare = [SCNLookAtConstraint lookAtConstraintWithTarget:robotNode];
// and maybe also
robotStare.gimbalLockEnabled = YES;

cameraNode.constraints = @[robotStare];

// OP added this, to make camera follow node. I'm skeptical.
cameraNode.camera.usesOrthographicProjection = YES;
于 2015-11-22T21:41:10.563 に答える