나는 떠있는 공을 만들고 싶다.SceneKit의 중역에 영향을 줍니까?
내가 할 일 physicsbody.affectedbygravity = NO;
하지만 무엇을해야합니까? scenekit?
나는 질량을 0으로 설정하려고 시도했지만, 동적 인 몸체는 정적으로 변했다 : 중력이나 충돌로 움직이지 않는다. 볼은 천천히 폭포 - 내 코드
// add ball
SCNNode *ball = [SCNNode node];
ball.geometry = [SCNSphere sphereWithRadius:5];
ball.geometry.firstMaterial.locksAmbientWithDiffuse = YES;
ball.geometry.firstMaterial.diffuse.contents = @"ball.jpg";
ball.geometry.firstMaterial.diffuse.contentsTransform = SCNMatrix4MakeScale(2, 1, 1);
ball.geometry.firstMaterial.diffuse.wrapS = SCNWrapModeMirror;
ball.physicsBody = [SCNPhysicsBody dynamicBody];
ball.physicsBody.restitution = 0.9;
//ball.physicsBody.mass=0; //here makes a ball statical and not moving
ball.physicsBody.allowsResting = YES;
[[scene rootNode] addChildNode:ball];
UPD이 너무 도움이됩니다.
- (void)renderer:(id<SCNSceneRenderer>)aRenderer didSimulatePhysicsAtTime:(NSTimeInterval)time{
[ball.physicsBody applyForce:SCNVector3Make(0, 9.8, 0) atPosition:SCNVector3Make(0,0,0) impulse:NO]; //this
ball.physicsBody.velocity=SCNVector3Make(0,0,0); //or this
}
Apple의 매뉴얼에 비트 마스크에 관한 내용이 없습니다. https://developer.apple.com/library/prerelease/iOS/documentation/SceneKit/Reference/SCNPhysicsField_Class/index.html#//apple_ref/occ/를 참조하십시오. clm/SCNPhysicsField/linearGravityField ----- 그래서, 같은 비트 마스크를 "gravitated"모델과 필드의 노드로 설정해야한다는 것을 의미합니까? – djdance
그래서 Scenekit 필드 맨은 다음 위치에 있습니다. https://developer.apple.com/library/ios/documentation/SceneKit/Reference/SCNPhysicsField_Class/index.html#//apple_ref/occ/instp/SCNPhysicsField/categoryBitMask – djdance