Autor Beitrag
neo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 179



BeitragVerfasst: Mo 09.06.03 16:56 
Hallo!

Ich habe eine Frage:

Ich möchte ein Spiel programmieren. In diesem soll ein Auto (wird als Image eingefügt, sieht man dann von "oben"(Vogel)) gesteuert werden können.
Wenn man die Linke Pfeiltaste drückt soll sich das Auto nach links drehen, und falls man dann auch noch die Gerade aus Taste drückt, soll er eben in diese Richtung fahren.

Ich hoffe ich habe mich halbwegs verständlich ausgedrückt.

Ich möchte einfach eine Steuerung wie zbSp. beim Spiel "Lupo Cup" programmieren.

Danke!
BoMbY
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17



BeitragVerfasst: Di 10.06.03 11:59 
Hallo,

ja freut mich das Du sowas programmieren möchtest...

Aber wie lautet eigendlich Deine Frage? :)

m.f.g.
BoMbY
neo Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 179



BeitragVerfasst: Di 10.06.03 12:19 
Titel: RE:
Ich möchte eine Steuerung wie zbSp. beim Spiel "Lupo Cup" programmieren, und auf die dann ein Spiel aufbauen.

mfg. Neo
maximus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 896

Win XP, Suse 8.1
Delphi 4/7/8 alles prof
BeitragVerfasst: Di 10.06.03 13:18 
^Das ist zwar immer noch keine frage (eher ne festellung), aber ich bin mal nich so :wink:

1. Alles vektor basiert machen (2d-vektoren -> x,y).
2. Dein Auto braucht braucht positions-vektor -> p
3. Dein Auto braucht einen richtungs-vektor -> d
4. Dein auto braucht geschwindigkeits variable -> s

Bei jedem frame addierst du nun d, multipliziert mit s, zu p hinzu:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
typ TVector = record
        x,y:single;
     end;

// das auto am besten als Objekt proggen
var p, d: TVector;
     s : single;

// frame-loop
begin
   ...
   p.x := p.x + d.x * s {* frame-zeit-abstandsfaktor };
   p.y := p.y + d.y * s {* frame-zeit-abstandsfaktor };
   ...
  // das auto an dem punkt p darstellen
   ...
end;


Wenn du jetzt die links/recht tasten drückst, dann musst du den vektor d ändert (winkelfunktionen! RAD etc.). Wenn du nach vorne drückst dann erhöhe s...und dein auto sollte sich in bewegung setzen :D

hoffe es hilft...?

_________________
mfg.
mâximôv