2D Perspektive
Übersicht

![]() |
GoodjeeBetreff: 2D Perspektive |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jaja, ich habe neulich mal wieder Supernintendo gespielt, daei bin ich auf das Spiel SmashTennis gestoßen und war fasziniert.
Jetzt fragge ich mich: wie mache ich so eine Perspektive mit "D, wie kann ich allpositionen umrechnen usw..... Hier mal ein Screenshot: ![]() ![]() |
||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
Klip |
![]() Antworten mit Zitat ![]() |
---|---|---|
Entweder, du berechnest die Tiefe durch die Y-Koordinate (je höher die Grafik ist, desto kleiner skalierst du sie), oder aber du simulierst eine Z-Achse (so würde ich es bei einem third-person-Rennspiel in 2D, z.B. HangOn, machen).
Ich persönlich würde es über die erste Möglichkeit regeln. |
||
![]() |
Geeecko |
![]() Antworten mit Zitat ![]() |
---|---|---|
über sowas habe ich noch gar nicht nachgedacht.
Aber wenn du einen 3D Modeller hast, kannst du die moddele in 3d machen. es gibt ein tut wo du 3d moddele 2d machen kannst. suche ihn mal, wenn ich ihn finde edite ich. kannst ja mal googlen |
||
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
klar kannst du das 3d machen aber du brauchst mehr zeit um die dinger zu modellieren, als dass du brauchen würdest wenn du sie zeichnest... | ||
![]() |
Iguan |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Klip: das mit der "Y-koordinate als Z-Koordinate" geht wohl nicht so gut...
wenn nähmlich der Spieler den Ball in einem hohen Bogen zum Gegner spielt, dann nimmt die Y-Koordinate stark zu, obwohl der Ball noch nicht weit (in Z-Richtung) geflogen ist. Eigentlich müsste dann der Ball auch grösser werden, da er ja näher beim Betrachter ist(Kamera aus Vogelperspektive). Ich hoffe ihr versteht was ich meine... ![]() |
||
ke^kx |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich denke das die Tiefe auf diesen Bildern hauptsächlich durch die Schatten gefakt sind, denn mir scheint die Figur hinten genausogroß wie die vorne. Mit dem Ball muss man dass dann ausprobieren, ob es überhaupt Sinn macht dessen Größe aufwendig zu verändern. So sehr fällt das schon nicht auf, denke ich.
Jiriki |
||
http://i3u8.blogspot.com
Asus Striker II Intel Core2Quad Q9300 @ 2,5 GHz (aber nur zwei Kerne aktiv aufgrund der Instabilität -.-) Geforce 9800 GTX 2GB RAM |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Denke auch nicht, das bei der minimalen Tiefe eine Skalierung nötig ist. Was aber notwendig ist, ist das man die objekte mit hohem Y zuerst zeichnet, weil sonst die Verdeckungen nicht stimmen.
Allerdings brauchts die Umrechnung für Y zu pseudo Z trotzdem ... weil man sonst den Ball nicht richtig berechnen kann ... |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
jaja, und das ist ja meine frage: wie rechnet man sowas am geschicktesten um? | ||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
zB X und Z -Achse ist die Spielfeldposition. Der Schatten des Balles liefert genau die X/Z -Achse wieder. Die Höhe des Balles ist der Abstand vom Ballschatten und des Balles selber. Wenn Spielball eine Höhe im Bereich von zB Y>20 And Y<40 (in Pixel) dann, kann dieser vom Schläger getroffen werden... | ||
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
also müsste ich den ball an der x position des schattens malen und die y position wäre die zposition des schattens plus die hähe des balls??? | ||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
x-pressive |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das man die Figuren im "Hintergrund" kleiner skaliert, ist gar nicht notwendig, wird jedenfalls bei den meisten Spielen in dieser Perspektive gar nicht gemacht. Ist sicher ein nettes "Schmankerl", aber nicht notwendig bei kleinen Distanzen.
Für alle Objekte, die sich auf der selben horizontalen Ebene bewegen (in dem Fall die Figuren auf dem Spielfeld), reicht eigentlich schon ein Vergleich der Y-Position. Je grösser Y, desto näher steht die Figur dem Betrachter. Figuren, mit einer niedrigeren Y-Koordinate verschwinden also hinter Figuren mit einer höheren (werden also zuerst gezeichnet). Erst, wenn ein Objekt diese flache Ebene verlässt (in dem Fall also der Ball) muss man die "virtuelle" Höhe auch mit einbeziehen. Ist aber eigentlich auch ganz einfach: die virtuelle Höhenposition des Balls speicherst du in einer Variable. Ist der Ball "höher" als die Körpergrösse deiner Spielfiguren, zeichnest du ihn über den Figuren, egal welche Y-Koordinate der Ball gerade hat, denn er befindet sich dann ja ÜBER den Figuren. Befindet der Ball sich unter der Kopflinie der Figuren, zeichnest du ihn hinter einer Figur, wenn die Y-Position des Balls kleiner ist, als die jeweilige Figur. Wenn ich keinen Denkfehler habe, müsste das doch eigentlich schon genügen. |
||
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zusätzlich mit ql:HandleImage kann man den Bezugspunkt eines Bildes auf die Füsse der Spieler verschieben. Dadurch fällt eine Komplizierte Umrechnung mit dem Ball (vor oder hinter einem Spieler). Da man da wieder nur die Schattenposition in den 'Z-Order' packen kann. Mit dem zeichnen des Ballschattens wird dann nachträglich auch der Ball eingezeichnet... | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group