有一个与名为 GB2ShapeCache 的程序物理编辑器关联的类,它加载我在程序中制作的形状。我注意到目前无法动态更改形状的比例,因此我希望能够缩放我在物理编辑器中制作的形状的固定装置。现在我的应用程序中 CCSprite 的比例可以是随机的,所以目前在 addShapesWithFile 方法中,我对多边形执行此操作:
vertices[vindex].x = (offset.x * sprite.scaleX) / ptmRatio_;
vertices[vindex].y = (offset.y * sprite.scaleY) / ptmRatio_;
这对于圈子:
circleShape->m_radius = ([[circleData objectForKey:@"radius"] floatValue] / ptmRatio_) *sprite.scale;
我还更改了方法,以便我可以传入我的精灵,这样我就可以得到比例:
-(void) addShapesWithFile:(NSString*)plist forSprite:
(CCSprite*) 精灵
这样我就可以传入我的精灵,这样我就可以得到比例。
但是,我发现这效率低下,因为我不应该在我的 plist 中重新加载我的所有形状,因为它们已经添加了。
那么除了 addFixturesToBody 方法之外,有什么方法可以做我现在正在做的事情吗?这样我就不会重新创建已经添加的 plist 形状,我只会在准备好添加到我的身体时缩放固定装置。
如果有人需要查看更多代码或需要更多信息,请随时询问。我知道这个问题一定很简单!!!
谢谢!