【问题标题】:How to declare more than one option for SCNPhysicsShape如何为 SCNPhysicsShape 声明多个选项
【发布时间】:2015-01-01 23:28:30
【问题描述】:

我需要在 [SCNPhysicsShape shapeWithGeometry: options:] 中声明 ShapeTypeKey 和 ShapeScaleKey ,所有想到的选项都很短。例如我当前的代码类似于;

NSValue *nodeScale = [NSValue valueWithSCNVector3:SCNVector3Make(200, 400, 150)];
SCNScene *stackScene = [SCNScene sceneNamed:@"stackoverflow.dae"];
SCNNode *stackNode = [stackScene.rootNode childNodeWithName:@"Grid" recursively:NO];
SCNGeometry *nodeGeometry = stackNode.geometry;

stackNode.physicsBody.physicsShape = [SCNPhysicsShape shapeWithGeometry:nodeGeometry options:@{SCNPhysicsShapeTypeKey:SCNPhysicsShapeTypeConcavePolyhedron}];
stackNode.physicsBody.physicsShape = [SCNPhysicsShape shapeWithGeometry:nodeGeometry options:@{SCNPhysicsShapeScaleKey:nodeScale}];

这显然用后者覆盖了前者。

【问题讨论】:

    标签: ios objective-c scenekit


    【解决方案1】:

    因为它是一本字典,你可以这样做:

    stackNode.physicsBody.physicsShape = [SCNPhysicsShape shapeWithGeometry:nodeGeometry options:@{SCNPhysicsShapeTypeKey:SCNPhysicsShapeTypeConcavePolyhedron, SCNPhysicsShapeScaleKey:nodeScale}];
    

    字典中的每个元素都可以用逗号分隔

    【讨论】:

      猜你喜欢
      • 2022-10-08
      • 2019-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多