Frage zu Bresenham Algorithmus
-
IBV schrieb:
Das hat uns der Prof. empfohlen und so hatte ich das umgesetzt.
Bist du sicher, dass er das so zur Umsetzung empfohlen hat? Konzeptionell ist das super, weil es die Problemstellung auf eine zentrale Frage reduziert und erstmal Spezialfälle rausnimmt. Aber das ist sicher nicht so gedacht, dass man es dann genau so runtercodet.
-
Ja, er hat das so empfohlen. Ich habe auch schon abgegeben.
-
Jester schrieb:
Aber das ist sicher nicht so gedacht, dass man es dann genau so runtercodet.
Nicht genauso.
Vielleicht soll der Kreis vorbereitet werden, der innen ungernplot(x,y)
hat, sondern lieber
plot(mx+x,my+y)
oder gar
plot(mx+x,my+y) plot(mx+x,my-y) plot(mx-x,my+y) plot(mx-x,my-y) plot(mx+y,my+x) plot(mx+y,my-x) plot(mx-y,my+x) plot(mx-y,my-x)
-
Ich hatte mal nen richtig coolen code für Bresenham.
Self modifying asm code für "drüber und drunter".
Dummerweise hat meine Exfrau alles vernichtet. Sie wusste schon wo sie mich treffen kann...
-
@EOP
Das was ich hier als Pseudocode gezeigt habe lässt sich so ziemlich 1:1 auf Assembler übertragen.
(Zumindest wenn man einen "chunky" Display-Mode hat. Mit planaren Modi wird's umständlicher - da würde ich dann wirklich mehrere Schleifen empfehlen.)Dabei packt man die drei 2D Vektoren
pt
,primary_step
undsecondary_step
in je ein (Skalar-)Register. Und zwarpt
als Adresse des Pixels und die beiden anderen als Adressänderung.Der Code der dabei rauskommt sollte ziemlich optimal sein. Kein Grund für selbstmodifizierenden Code oder andere Grässlichkeiten
-
hustbaer schrieb:
Kein Grund für selbstmodifizierenden Code oder andere Grässlichkeiten
Selbstmodifizierender code ist eine der coolsten Sachen überhaupt.
Hatte Anfang der 90er ein Spiel, das seinen eigenen code ständig vor sich her geschoben und modifiziert hat. Quite cool.EDIT:
Zeiten als ich noch Spaß dran hatte mich 12 Stunden ohne Essen oder Trinken mit TurboDebugger zu beschäftigen.EDIT #2:
Und jetzt kommt volkard und setzt überall wo sie fehlen die richtigen Kommata in diesen und meinen vorherigen Satz ein. :p
-
EOP schrieb:
Ich hatte mal nen richtig coolen code für Bresenham.
Self modifying asm code für "drüber und drunter".
Dummerweise hat meine Exfrau alles vernichtet. Sie wusste schon wo sie mich treffen kann...Ist nicht soo rasend schlimm. Was man sinnvoll selfmoodyfied hatte, ist ja was statisches, das jagt der Prozzi inzwischen durch wie nix.
Ich hätt gern als Andenken ein 64-er-Programm von mir ausgedruckt, was ich nur auf Tonbandcasette habe. Auch so ein Andenken.
-
volkard schrieb:
Ich hätt gern als Andenken ein 64-er-Programm von mir ausgedruckt, was ich nur auf Tonbandcasette habe. Auch so ein Andenken.
Nun gut, so alt bin ich auch wieder nicht, daß ich wie mein Bruder noch mit Lochkarten oder gar wie du mit Casetten gearbeitet hätte. Bin erst in den Fuffzigern. :p
EDIT:
Cassetten?
-
EOP schrieb:
EDIT:
Cassetten?Floppy war mir zu teuer. Die hat ja so viel wie der Rechner selber gekostet.
-
Another thread hijacked...
-
volkard schrieb:
mm. Was man sinnvoll selfmoodyfied hatte, ist ja was statisches, das jagt der Prozzi inzwischen durch wie nix.
Ja, sind Erinnerungen an DOS-Zeiten.
Das war noch schön als man alles wüst manipulieren konnte.
-
volkard schrieb:
Floppy war mir zu teuer. Die hat ja so viel wie der Rechner selber gekostet.
Dafür hatte man mit Floppy auch nen Parallelrechner
@EOP
IIRC gab's ein paar A500 Spiele die auf dem A3000 nicht liefen, weil der 68030er nen Instruction-Cache hatte der nicht mit dem Daten-Cache synchronisiert war.
Das war dann weniger cool
-
hustbaer schrieb:
@EOP
IIRC gab's ein paar A500 Spiele die auf dem A3000 nicht liefen, weil der 68030er nen Instruction-Cache hatte der nicht mit dem Daten-Cache synchronisiert war.
Das war dann weniger coolIch hab immer nur DOS-Zeugs gemacht.
Und auch nur Sachen wenn es genervt hat, wie "Alle fünf Leben sind verbraucht. Neues Spiel?"
Obwohl ich nie ein Spieler war und bin. War nur ein Spaß, den ich für mich und 2, 3 Freunde gemacht hab.