Seite 1 von 1

Braucht man 3D-Routinen um eine isometrische Darstellung am PC zu erzeugen?

Verfasst: Mi Nov 03, 2021 2:09 pm
von Orioner
Braucht man 3D-Routinen um eine isometrische Darstellung am PC zu erzeugen, oder geht es auch mit 2D? Das heißt, geht es mit context = canvas.getContext("2d"), oder muss es context = canvas.getContext("3d") sein (bezogen auf JavaScript)?

Re: Braucht man 3D-Routinen um eine isometrische Darstellung am PC zu erzeugen?

Verfasst: Mi Nov 03, 2021 4:34 pm
von Xin
Die Frage ist nicht pauschal beantwortbar.
Naja, schlussendlich musst Du nur wissen, wo Deine 2D-Koordinaten liegen. Das lässt sich isometrisch ausrechnen und dann malst Du halt. Die isometrische Darstellung ist am Ende ja zweidimensional und gut.

Ich kann Dir nicht sagen, wie das in Java-Script aussieht.
Um eine Bitmap zu bemalen, ist das - mit den entsprechenden Kenntnissen, die man im Abitur mitbekommen könnte - recht einfach zu lösen. Oder man wirft die Koordinaten und die Perspektive in die Grafikkarte und sagt "mach Du". Das würde ich unter "3d" verstehen. Die rechnet den gleichen Mist aus, aber halt schneller, weil sie dafür optimiert ist.
Am Ende kommen hier also auch 2D-Koordinaten raus, die in eine Bitmap eingefügt werden. Nur schneller.

Also bleibt am Ende die Frage: Was genau sind 3D-Routinen? :-D
Um die 2D-Koordinaten auszurechnen wirst Du die aus 3D-Koordinaten herleiten müssen, also 3D-Mathematik verwenden müssten, also Routinen, die 3D beherrschen.

Re: Braucht man 3D-Routinen um eine isometrische Darstellung am PC zu erzeugen?

Verfasst: Mi Nov 03, 2021 4:45 pm
von nufan
Ich verlinke den thematisch ähnlichen Thread mal hier:
https://www.proggen.org/forum/viewtopic.php?f=49&t=7485

Re: Braucht man 3D-Routinen um eine isometrische Darstellung am PC zu erzeugen?

Verfasst: Mi Nov 03, 2021 5:17 pm
von Orioner
Danke für eure beiden Einwürfe.

Mir ist klar, das meine Formulierung etwas schwammig war, einfach weil ich es nicht klarer ausdrücken konnte. Hier ein hoffentlich etwas genauerer Versuch, was ich unter 3D-Routinen verstehe: Die Frage hat 2 Aspekte (oder 3, wenn man das Engine-Thema des verlinkten Artikels mit einbezieht). Zum einen, dass die Szene/Karte vom 3D-Renderer gezeichnet wird, wie Xin ja auch schon vermutetet. Zum anderen meine ich, dass zu zeichnende Objekte als 3D-Modelle vorliegen (und als solche behandelt werden müssen).
Meine Frage zielte somit auch auf die Frage ab, ob 3D-Modelle verwendet werden sollten. Ich glaube, mit Sprites zu arbeiten und diese mit 2D-Routinen zu zeichnen ist einfacher und ressourcenschonender. Aber ich weiß nicht, ob das die Kriterien sein sollten.

Danke für die Verlinkung, nufan. Jetzt sehe ich, dass ich so eine ähnliche Frage schon einmal gestellt habe. Ich komme mit dem Thema einfach nicht klar. :mrgreen: