java - 如何使 java 对象平滑并缓慢地跟随鼠标光标?
问题描述
我正在制作一个小型 2D 游戏,玩家可以在其中控制喷气式飞机,这架喷气式飞机将跟随他们的鼠标光标。
我得到了数学运算,但是当我降低加速度时,飞机开始变得更加僵硬,不太平滑的转弯。例如:(我添加了一条轨迹,这样你就可以知道它转动的角度)高速喷射轨迹:
注意那条轨迹的平滑度,但我希望飞机即使在以较低速度移动时也具有相同的平滑度。
目前,如果我降低速度,它看起来更像这样:低加速速度的喷射轨迹:
这是一些代码,因此您可以查看我当前用于移动飞机的方程式。(这里速度是10)
int jet1DeltaX = (int) Math.round((Math.cos(theta)) * 10);
int jet1DeltaY = (int) Math.round((Math.sin(theta)) * 10);
注意:theta 只是使用 atan2 看鼠标的角度。
.
然后我将增量位置添加到原始位置。
jet1.setPos(jet1.getX() + jet1DeltaX, jet1.getY() + jet1DeltaY);
所以我的问题是,我将如何减慢喷气式飞机的速度,同时保持它在平稳的路径上移动?
解决方案
推荐阅读
- git - 无法 git push 致命:远程错误:服务未启用
- ios - 尝试插入按钮时出现问题?(斯威夫特用户界面)
- xcode - SwiftUI动态修改TextField格式、字符串模式、掩码
- python - 从 cmd 运行 powershell 命令
- c# - 如何将 ModelExpression 绑定到 ASP.NET Core 中的 ViewComponent?
- angular - Angular中的styleSheet中的Cytoscape js错误
- python - 轴参数在keras的点层中有什么作用?
- android - 执行在线预测 Google ML 部署模型时出错
- r - 根据其他受访者在 dplyr 中的 dyad 中的回答构建变量
- windows - 在 LOOP 内执行的每个命令后执行一个操作