www.mikrocontroller.net

Forum: Offtopic ····Asteroids?····


Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich versuche gerade den Klassiker Atari Asteroids in C 
nachzuprogrammieren und brauche noch ein paar Details über den 
Spielablauf bzw. hab ein paar Fragen dazu:

== 1 ==
Es gibt eine Web-Version in
    http://www.widgetbox.com/widget/asteroids

 -- Kommt das ungefähr hin von der Spielführung/Grafik?
    Das Raumschiff scheint eine Reibung zu widerfahren und wird
    immer auf 0 gebremst. War das im Original auch so?

 -- Addiert sich die Geschwindigkeit eines Torpedos zur Geschwindigkeit
    des Raumschiffs? Oder ist sie unabhängig davon -- sozusagen
    relativistisch?

Momentab bin ich noch am Sondieren, ob die Maschine (ATmega168) das von 
der Geschwindigkeit her überhaupt schafft, und es sieht ganz gut aus.

Eine 1-zu-1 Übertragung des Originals wird's aber nicht sein, weil ich 
nur 8 Bits Auslösung hab (Original war mit 10-Bit DAC) und die Anzeige 
rund ist (Röhre) und nicht rechteckig. Ne Torus-Topologie ist also sehr 
unpraktisch, weil es dann Bereiche gäbe, in denen das Raumschiff nicht 
sichtbar ist.

Auf dem µC hab ich noch rund 2k Flash frei, und das sollte eigentlich 
reichen. Basisroutinen wie Strahsteuerung, Bresenham, sin/cos-Tabelle, 
Vektor-Font, Fix-Arithmetik etc. ist alles schon vorhanden.

== 2 ==
 -- Wie macht man den Sound?
    Es gibt nen Piezo-Beeper zwischen zwei 16-Bit
    PWM-Ports (OC1A/B). Beeps sind also easy, aber wie macht
    man Gerumpel wenn zB ein Asteroid zerkracht?

Hat vielleicht jemand die Originalquelle von Atari? Nicht die 
ROM-Version, sondern die kommentierte Quelle. Vor einiger Zeit gab's mal 
den
   Beitrag "Asteroids Wettbewerb aus der ct"
und bei dem Wettbewerb konnte man auf Anfrage die Originalquellen haben.

Johann

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail, Yahoo oder Facebook? Keine Anmeldung erforderlich!
Mit Google-Account einloggen | Mit Yahoo-Account einloggen | Mit Facebook-Account einloggen
Noch kein Account? Hier anmelden.