だから私は 2D プラットフォーム ゲームの作業を開始したいのですが、来年まで物理学を学ぶことはありません。そのため、古い物理学の本で方程式を見つけ、x と y の位置とその速度を見つけるのを手伝わなければなりませんでした。問題は、レンダリングが遅すぎるという点で、加速が速すぎるように見えることです。それはプログラムのせいではなく、加速を遅くして滑らかに見えるようにする方法がわからないという私のせいです。これが私が使用しているボールクラスのコードです(コードが完全に混乱していることは知っています!私は方程式を正しくしようとしていじっていました....私が働いていたら、このようにコードを書くことは決してありません真面目なプロジェクトなので、見栄えが悪いことを思い出させないでください)
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JComponent;
public class Ball extends JComponent{
public double xpos;
double oX;
double oY;
double ypos;
double xvel;
double yvel;
long time;
double oxvel;
double oyvel;
long angle = 45;
long startTime = System.currentTimeMillis();
public Ball(int p1, int p2, long t){
xpos = p1;
oxvel = 50;
oX = p1;
ypos = p2;
time = t;
oyvel = -50;
}
public void update(){
xvel = (oxvel*Math.cos(45));
yvel = (oyvel*Math.sin(45)) + (9.8*time);
if(!(xpos + xvel + 10 > getWidth())&&!(xpos + xvel < 0))
xpos +=xvel;
if(!(ypos + yvel + 10 > getHeight())&&!(ypos + yvel <= 0))
ypos+=yvel;
time++;
}
public void paint(Graphics g){
Graphics2D g2d = (Graphics2D) g;
g2d.setColor(Color.RED);
g2d.fillOval((int)xpos, (int)ypos, 15, 15);
}
}