cocos3dでboundingvolumeを使用してCC3MeshNodeを作成したいと考えています。Pod ファイルを使用してCC3MeshNodeを作成しました。衝突時に通知を受け取りたい。
-(void) initializeScene
{
[self addContentFromPODFile: @"hello-world.pod" withName:@"pod1"];
CC3MeshNode *object1 = (CC3MeshNode*)[self getNodeNamed: @"pod1"];
CC3MeshNod *object2=[[object1 copyWithName:@"pod1"]autorelease];
[object1 populateAsSolidBox:CC3BoundingBoxMake(9.5, 5.0, 4.0, 0.0, 0.0, 0.0)]; object1.location=cc3v(-5.0, 0.0, 0.0); object2.location=cc3v(5.0, 0.0, 0.0);
[self addChild:object2];
CCActionInterval *move1=[CC3MoveTo actionWithDuration:3.0 moveTo:cc3v(-1.0, 0.0, 0.0)]; CCActionInterval *move2=[CC3MoveTo actionWithDuration:3.0 moveTo:cc3v(1.0, 0.0, 0.0)]; [object1 runAction:move1];
[object2 runAction:move2];
}
-(void) updateAfterTransform: (CC3NodeUpdatingVisitor*) visitor
{
if([object1 doesIntersectNode:object2])
NSLog(@"Collision !!!!!!!!!!!!!!!!!!!!!!");
}
バウンディングボリュームを割り当てようとしましたが、うまくいきませんでした。実際、cc3MeshNodeの境界ボリュームの実装に混乱しています