Einzelnen Beitrag anzeigen

GeMo

Registriert seit: 25. Jan 2006
80 Beiträge
 
Delphi 7 Professional
 
#5

Re: Steuerung eines Raumschiffes mit Trägheit

  Alt 5. Okt 2007, 13:53
danke nochmals für deine antwort!
ich habs jetzt anders gelöst. und zwar kann man auch einfach mit hilfe eines rechtwinkligen dreiecks die gewollte bewegung ausrechnen und diese anschliessend zur momentanen bewegung addieren!

Delphi-Quellcode:
max_speed : Integer = 20;

moveX, moveY : Extended;
speed : Extended;
drive_angle, Angle : Integer;

if(isUp in Main.DXInput.States) then
begin
  if(speed < 1) then
  begin
    speed := speed + 0.25;
  end;
  
  beschleunigung := 1;

  newx := beschleunigung * cos256(drive_angle);
  newy := -beschleunigung * sin256(drive_angle);

  if(movex <= max_speed) and (movey <= max_speed) and (movex >= -max_speed) and (movey >= -max_speed) then
  begin
    movex := movex + newx;
    movey := movey + newy;
  end;
end;

x := x + movex*speed;
y := y + movey*speed;
das funktioniert ganz gut eigentlich! hab da jetzt noch ein paar optimierungen drin und dann klappt alles schon sehr gut!
danke für die Hilfe!!

greetz
  Mit Zitat antworten Zitat