Fer*_*edo 9 game-physics ios scenekit swift
我正在尝试模拟足球比赛.我有一个SCNPlane模拟法庭.我已经导入了足球目标3D模型(.dae文件)和球模型(.dae).
我的球有一个动态的物理体,飞机静止,目标是运动学.我为每个SCNNode 设置了categoryBitMask和contactTestBitMask.
当我将球射向球门时,有时球会反弹并且表现得如预期的那样,但有时候球会穿过球门并穿过它.
我已经分配了SCNPhysicsContactDelegate并且didBeginContact当球再次反弹时触发,但是当球越过它时,则不调用该方法.
你知道会发生什么吗?
谢谢!
实例属性categoryBitMask定义了物理体属于哪些类别,并contactTestBitMask定义了哪些类别的物体会导致与该物理体的相交通知。
您需要一个collisionBitMask实例属性来定义哪些类别的物理体可以与该物理体发生碰撞。
var collisionBitMask: Int { get set }\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n\n当两个物理体相互接触时,可能会发生碰撞。SceneKit 通过执行按位 AND 运算将 body\xe2\x80\x99s 碰撞掩码与其他 body\xe2\x80\x99s 类别掩码进行比较。如果结果是非零值,则主体受到碰撞的影响。每个身体独立地选择是否想要受到另一个身体的影响。例如,您可以选择避免碰撞计算,这会对物体\xe2\x80\x99s 的速度造成可忽略不计的变化。\n 默认值为
\nall(每个位都启用的位掩码),指定物体将与所有其他类别的机构。
static var all: SCNPhysicsCollisionCategory { get }\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n\n
all是Type Property物理体\xe2\x80\x99scollisionBitMask属性的默认值。
| 归档时间: |
|
| 查看次数: |
298 次 |
| 最近记录: |