Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sprite kit 在physicsbody中限制SKPhysicsJointp的旋转范围,而不使用应启用的限制_Sprite Kit_Skphysicsbody_Skphysicsjoint - Fatal编程技术网

Sprite kit 在physicsbody中限制SKPhysicsJointp的旋转范围,而不使用应启用的限制

Sprite kit 在physicsbody中限制SKPhysicsJointp的旋转范围,而不使用应启用的限制,sprite-kit,skphysicsbody,skphysicsjoint,Sprite Kit,Skphysicsbody,Skphysicsjoint,有人能告诉我如何限制SKPhysicsJointPin physicsbody对象从其起点的旋转范围吗 当我使用shouldEnableLimits强制我的physicbody对象意外移动/当其旋转从+270度旋转到-90度(从正到负等)时出现故障,因此我需要使用另一种方法来实现此限制旋转,即提供的lowerAngleLimit和upperAngleLimit 我有一个在屏幕上不断移动的physicbody,我使用: myobject.physicsBody applyTorque:latera

有人能告诉我如何限制SKPhysicsJointPin physicsbody对象从其起点的旋转范围吗

当我使用shouldEnableLimits强制我的physicbody对象意外移动/当其旋转从+270度旋转到-90度(从正到负等)时出现故障,因此我需要使用另一种方法来实现此限制旋转,即提供的lowerAngleLimit和upperAngleLimit

我有一个在屏幕上不断移动的physicbody,我使用:

myobject.physicsBody applyTorque:lateralMove" //(+ and -)
来左右旋转这个身体。当身体在移动时,我只需要身体在屏幕上移动时只能在设定的数量/范围内旋转

我不知道怎么走嘿,物体的中心点在这里,你不能从中心向左旋转0.7或向右旋转0.7等等

我绞尽脑汁想了一个多星期怎么做,有什么帮助都好

///////////// 如果我做一个测试用例,会发生什么

if (_myobjectdegrees > 265) { 
    NSLog(@"please don't glitch!");
    myobject.zRotation = -1.5f;

}
//这是我的控制台输出

当前zrotation 2.949927

当前zrotation 3.002563

当前zrotation 3.033562

当前zrotation 3.061646

请不要出故障

当前zrotation-1.500000

电流zrotation 0.212812

当前zrotation 1.947406

电流Zr旋转-0.485760

当前zrotation-2.326967

电流zrotation-2.381383

//它闪烁着,在我设置-1.5之后的数字应该会回到-1.49,-1.48回到0

//myobject degrees是一个整数,根据myobject.zRotation的弧度转换为度

我发现我喜欢

//如果myobject.zRotation>4.6{

这起案件几乎从未被触发。
对象不断移动/旋转。

如果旋转超过阈值,您可以手动设置旋转,这很容易在模拟(即爆炸关节)中造成混乱。这就是为什么物理限制是软的而不是硬的。Hi LearnCos2D感谢您的回复,我在上面做了一个编辑,向您展示了发生了什么,以避开这个小故障当它从+270度旋转到-90度,从正旋转到负等等,并将shouldEnableLimits=YES和lowerAngleLimit和upperAngleLimit设置为一个数字时,我想我可以自己手动旋转节点并将其旋转设置为-89,但不幸的是,它仍然在动画/zRot中出现小故障在我将其设置为-1.5etClearNCocos2d之后,您可以看到,您知道为什么会发生这种情况,或者知道如何绕过它吗?