Iphone 2d游戏-应用重力,弹跳问题
||
目前是一名Flash游戏开发人员,我开始使用cocos 2d引擎为iPhone编写游戏,我实现了单独的Axis定理进行碰撞检测,效果很好。所有多边形在openGl中绘制如下。
经过多次搜索后,现在我试图将重力应用于此16x16框,我发现本教程http://www.seinia.com/tutorials/Bounce/并在目标C中实现了同样的效果。
问题在于正方形停下来后,它会不断地向上/向下跳动。我做了很多尝试来解决这个问题,但我无法控制这种微小的移动。我从未在闪光灯中遇到过这样的问题,但在这里浮动值对方形位置的影响很大。
请让我知道如何处理这种问题,任何参考URL都将有所帮助。希望得到您的帮助。谢谢!
0,16 16,16
------------
| |
| |
| |
| |
------------
0,0 16,0
目标C代码
if (square.points[0].y <= 0.1f) {
velocity.vy *= -bounce;
[square restInPeace:[Vector2D createVectorWithComponentX:velocity.vx Y:8.0f]];
// landed
if (fabs(velocity.vy) < 0.9f) {
velocity.vy = 0.0f;
[square restInPeace:[Vector2D createVectorWithComponentX:velocity.vx Y:8.0f]];
isLanded = YES;
}
}
翻译物件
-(void) translateVelocity:(Vector2D*)velocity
{
// The center as well as all of the vertices need to be
// accommodated.
center.x += velocity.vx;
center.y += velocity.vy;
for(int i=0; i < count; i++)
{
points[i].x += velocity.vx;
points[i].y += velocity.vy;
////NSLog(@\"velocity %f %f\",points[i].x , points[i].y);
}
}
没有找到相关结果
已邀请:
1 个回复
箩冀娥
例如。这应该使您的对象总是停顿下来。