我用cocos2d中的box2d移动我的身体。我想只改变位置。但是,不是角度(不是旋转)。它在移动过程中改变角度。当我使用SetTransform方法设置时,每次都是相同的角度。
ı在youtube上抓住了我的问题:http://www.youtube.com/watch?v=IQAQtgplLmw&feature=youtu.be
我的代码:
body->SetTransform(myB2Vec2Position, body->GetAngle());
在设置我的身体
之前
** image2:用SetTransform设置我的身体**
与image2一样:它改变了移动时的角度当我每次使用相同的角度设置SetTransform时。
NSLog(@"MyAngleValue: %f",currentBody->GetAngle());
每次:MyAngleValue:0.000000。通常,我的身体每次都会改变角度。当我调用SetTransform方法时,角度为0.000000。 有什么问题?
感谢。
答案 0 :(得分:0)
设置您的身体定义时,请尝试同时设置此参数:
bodyDef.fixedRotation = true;
答案 1 :(得分:0)
如果你不想让你的身体完全旋转(从不,无论如何),将其动量设定为INFINITY
。应该这样做(如果你没有手动改变角度或角速度)。