Mode7 (pseudo 3d)

Status
Nicht offen für weitere Antworten.

mantax

Mitglied
Hi
ich würde wahnsinnig gerne diesen Mode7 Effekt umsetzen, war aber bisher zu dumm... :/

BS_fzero2_launch.jpg


Durch google bin ich auf dieses Tutorial gestoßen, dass ich aber ehrlichgesagt nicht verstehe.. hatte in der Schule bisher noch nix von Vektoren oder Matrizen..
Tonc: Mode 7 Part 1

Ich habe aber auch irgendwo gelesen, dass das sogar ohne Matrizen, sondern nur mit Trigonometrie möglich sein soll. Hat sich jemand bisher schon damit beschäftigt und kann mir helfen?

Dankee :)
 

Marco13

Top Contributor
Nur als Zwischenfrage: Hat es einen Grund, warum du das ("SO") machen willst, und nicht sowas wie Java3D oder JOGL verwendest?
 

Steev

Bekanntes Mitglied
Wahrscheinlich, weil es mehr Spaß macht alles zu Fuß zu programmieren ;-)
 

mantax

Mitglied
Ja, richtig! Ich denke wirklich, dass es mir mehr Spass machen würde.. ich suche mir generell Projekte die ne Nummer zu groß sind, damit ich ne Herausforderung habe und noch was dazulerne ;) Außerdem würde ichs einfach gerne in 2d umsetzten, weil das mein Steckenpferd ist :p
 

Steev

Bekanntes Mitglied
Ich würde erst einmal ganz einfach anfangen und probieren, zum Beispiel einen Würfel dreidimensional anzuzeigen. Das braucht ja nur eine "Gitterbox" zu sein.
Wenn du das geschaft hast, dann hast du schon mal das Grundprinzip verstanden. Mit diesem Wissen müsstest du dann schon mal einfache Szenen hinbekommen. Dann würde ich probieren einzelne Punkte in drei Dimensionen darzustellen.

Ich hatte da mal ein Tutorial, aber ich finde es leider garade nicht mehr...
 

mantax

Mitglied
Ich denk mal das Ziel wird es sein ein Bild perspektivisch zu verzerren, sodass es am Ende sowas ergibt oder?
Java:
Skizze: ____
       /     \
      /       \
     /_________\

Dazu habich mir folgendes gedacht:
Java:
foreach(Bildzeile int i) {
  In x-Achsenrichtung Bildzeile stauchen. umso größer i, desto weniger stauchen
  In y-Achsenrichtung Bildzeile strecken. umso größer i, desto mehr strecken
}

und dann werd ich mir noch überlegen müssen wie ich das Ganze gescheit um die (3d) y-Achse rotieren kann und natürlich zusehen, dass man nicht wie in der Skizze die ganze Karte sehen kann, sonder nur einen kleinen Ausschnitt, eben wie in dem F-Zero Screen oben.

Ist das euerer Meinung nach der richtige Ansatz? Gibt es bestimme Zahlenwerte, die ich als Faktoren für die Stauchungen/Streckungen verwenden muss, damit sich eine realitische Perspektive ergibt?

Bin dankbar für jeden Hinweis! :D
 

Marco13

Top Contributor
Hm .... wo ist der Unterschied zwischen 2D und 3D? Also, am Ende ist (noch, meistens) soweiso alles 2D - nämlich auf dem Bildschirm (3D wird es erst wieder ein Stück hinter der Netzhaut :D ). Einfach ein Bild Zeilenweise zu malen, und die Zeilen nach oben hin schmaler zu machen wird vermutlich keinen ... akzeptablen Effekt bringen - Ich hatte den Artikel nur überflogen, und das sah schon nach 3D aus ...
 

mantax

Mitglied
Hmm ich werd mich mal dran versuchen und gucken obs nicht vllt doch annehmbar endet :D
Bin eben noch über diese Seite gestolpert Lou's Pseudo 3d Page
Und wenn ichs auf den ersten Blick richtig verstanden habe, wird da in etwa die Methode von oben erklärt und ausgebaut.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben