首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用force在Libgdx中移动对象

使用force在Libgdx中移动对象
EN

Stack Overflow用户
提问于 2016-05-23 08:19:27
回答 1查看 237关注 0票数 0

我的任务是使用LibGdx游戏引擎为java中的冲突创建自己的物理引擎。它是自上而下的,所以忽略重力。我被困在弄清楚如何在身体上施加力。我是通过一段时间内速度的变化来求出加速度。下面是如何找到x组件的加速:

代码语言:javascript
复制
    Vector2 velX = new Vector2();
public void update(){
    timer += Gdx.graphics.getDeltaTime();

    movementSpeed = 5 * Gdx.graphics.getDeltaTime();
    coordinates.x += vel.x;
    coordinates.y += vel.y;
    if( timer >= .5f && timer < 1){
        velX.x = vel.x;
    }
    if(timer >= 1){
        velX.y = vel.x;
        acceleration.x = (float) ((velX.y - velX.x)/ (1 - .5));
        timer = 0;
    }

vel.x是x速度,velX是在不同时刻存储速度x分量的Vector2 (我使用的是中值定理)。基本上,我找到了x分量的加速度。现在,如果我施加一个力,我做加速度*质量。这是我完全困惑的地方。

F= ma.是的,所以我可以得到一个力变量。但是现在我如何利用这个力来适当地影响速度。本质上,在施加了力之后,速度应该是偶然的。当它们是两个完全不同的变量(牛顿和米/秒)时,我如何从力的某个值改变速度。

在这方面的任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-23 16:43:02

用初始速度v1和质量m1,你的初始动量p1 = v1m1。(m1 + m2)vf = m1v1也是真,假设第二个物体的初始速度是0。这意味着这两个对象的最终速度将被称为最终速度vf = m1 * v1 / m1 + m2。

如果你计划碰撞运动物体与现实物理,我建议你一些先进的物理课程/教程。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37385971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档