Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios SK3DNode不旋转_Ios_Sprite Kit_Scenekit - Fatal编程技术网

Ios SK3DNode不旋转

Ios SK3DNode不旋转,ios,sprite-kit,scenekit,Ios,Sprite Kit,Scenekit,我有一个三维球体模型保存为dae文件并加载到xcode 问题是我无法让它旋转-它只是保持静止。。。我试过几种方法,甚至试着让相机在它周围移动 SCNScene *model = [SCNScene sceneNamed:@"model3.dae"]; SK3DNode *node = [[SK3DNode alloc] initWithViewportSize:CGSizeMake(50, 50)]; //workaround id s1 = [node valueForKey:@"_scnR

我有一个三维球体模型保存为dae文件并加载到xcode

问题是我无法让它旋转-它只是保持静止。。。我试过几种方法,甚至试着让相机在它周围移动

SCNScene *model = [SCNScene sceneNamed:@"model3.dae"];
SK3DNode *node = [[SK3DNode alloc] initWithViewportSize:CGSizeMake(50, 50)];

//workaround
id s1 = [node valueForKey:@"_scnRenderer"];
NSLog(@"%@", s1);

node.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:node.frame.size.width/2];

node.physicsBody.affectedByGravity = NO;
node.physicsBody.allowsRotation = YES;

node.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame));
[node setScnScene:model];

//THIS IS THE PART! I cannot get it to spin around
CABasicAnimation *rotationAnimation = [CABasicAnimation animationWithKeyPath:@"rotation"];
rotationAnimation.toValue = [NSValue valueWithSCNVector4:SCNVector4Make(1, 2, 3, M_PI * 2)];
rotationAnimation.duration = 1;
rotationAnimation.repeatCount = FLT_MAX;
[model.rootNode addAnimation:rotationAnimation forKey:nil];

//camera
SCNCamera *camera = [SCNCamera camera];
camera.xFov = 0;
camera.yFov = 0;
camera.zNear = 0.0;
camera.zFar = 10.0;
SCNNode *cameraNode = [SCNNode node];
cameraNode.camera = camera;
cameraNode.position = SCNVector3Make(0, 0, 5);
[model.rootNode addChildNode:cameraNode];

node.pointOfView = cameraNode;
[world addChild:node];
有什么想法吗?基本上,我想尝试让3D模型在SK3DNode内移动。希望这是有意义的。想想旋转的星球

提前感谢,,
Alex

修改场景根节点的变换(例如,通过添加动画)没有效果,因为摄影机由该根节点的子节点控制。球体和摄影机之间的相对变换保持不变。应将动画添加到摄影机节点或球体节点

多谢各位。是的,将动画应用到相机工作,我必须在设置结束时完成。如何获得球体节点?没关系,我猜到了。。。谢谢你的帮助!SCNNode*n=[model.rootNode childNodeWithName:@“Icosphere”递归:YES];