Итак, я пытаюсь сделать автомобильную игру в процессе обработки, когда машина движется только по его локальной оси y, а она вращается при вращении. Но я не могу понять, как заставить его двигаться по локальной оси y после его поворота, это та часть, где мне нужна помощь. Выкладываю код в Обработка:
class CarClass{
float speed, x, y, steering, w;
CarClass(){
speed = 5;
x = width/2;
y = height/2;
steering = radians(0);
w = 5;
}
void display(){
translate(x, y);
rotate(steering);
rectMode(CENTER);
rect(0, 0, 40, 82);
}
void up(){
y -= speed;
}
void down(){
y += speed;
}
void left(){
steering -= radians(w);
}
void right(){
steering += radians(w);
}
}
void movement(){
if(keyPressed) {
if (keyCode == UP) {
car.up();
}
if (keyCode == DOWN) {
car.down();
}
if (keyCode == LEFT) {
car.left();
}
if (keyCode == RIGHT) {
car.right();
}
}
}
CarClass car;
void setup(){
size(854,480);
car = new CarClass();
}
void draw(){
background(10,10,10);
car.display();
movement();
}