我有一个带有动态物理体的SKSpriteNode,放在SKNode *_fgLayer
上。
现在,当我暂停或取消暂停游戏时,我希望该SKSpriteNode保持原地不旋转也不掉下来。如果我只是使用_fgLayer.paused = YES;
,那么SKSpriteNode不会停留在原地,而是会旋转并掉下来。如果我在暂停时设置physicsBody.dynamic = NO;
,并在取消暂停时设置physicsBody.dynamic = YES;
,那么它可以正常工作。
然而,经过几次尝试之后,我总是会遇到以下崩溃:
"Assertion failed: (typeA == b2_dynamicBody || typeB == b2_dynamicBody), function SolveTOI, file /SourceCache/PhysicsKit/PhysicsKit-4.6/PhysicsKit/Box2D/Dynamics/b2World.cpp, line 670."
所以,我猜测将physicsBody.dynamic = NO;
设置回去不起作用。
有没有人有想法
如何让动态物理体在暂停游戏时保持原地?