Aktuelle Zeit: 14.05.2024, 23:39

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: 3 Dimensionales 2D Sprite
BeitragVerfasst: 28.05.2007, 15:06 
Offline

Registriert: 28.05.2007, 14:48
Beiträge: 18
Hi alle zusammen! Ich möchte ein 2D Sprite rotiert/scaliert etc auf den Bildschirm zeichen, aber dass geht mit Draw2DImage ja nicht (wenngleich ich mich frage warum nicht, schließlich gehts ja wenn man direkt DX benutzt). Deshalb will ich jetzt einfach aus zwei Dreicken ein rechteck zusammensetzen und da die textur draufmachen. Mein Problem ist jetzt aber dass ich noch nicht wirklich weiß wie das ganze mit 3D etc funktioniert. Ich möchte am ende einfach ne Klasse oder so ähnlich haben, der ich dan einfach sage: "Zeiche Bild an Bilschirmposition x y mit rotation a um den punkt xy" oder so ähnlich, ohne mich nochmal gesondert um die dritte dimension kümmern zu müssen. Kurz gesagt, ich habe keine ahnung wie ich dass machen soll. Ich habe es zwar schon hingekriegt die beiden dreicke mit texture zu zeichen, aber sobald ich versuche die zu rotieren oder an ne bildschirmposition zu kriegen geht alles durcheinander :lol: Könnte mir jemand detailiert erklären wie ich was machen muss?
PS: Ich benutze Irrlicht NET CP


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 28.05.2007, 15:16 
Offline
Moderator

Registriert: 25.02.2007, 14:35
Beiträge: 323
Wohnort: Münster
also, du könntest dir mal Billboard verwenden.. das ist ein 3D-Objekt, welches sich immer in Richtung der Kamera dreht.

Da du aber nichts mit 3D zu tun haben möchtest (anscheinend), musst du wohl eine Matrix verwenden.
Guck dazu diesen Thread an: http://www.irrlicht3d.de/forum2/viewtopic.php?f=1&t=172


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 28.05.2007, 15:55 
Offline

Registriert: 28.05.2007, 14:48
Beiträge: 18
Billboard wäre in sofern schlecht, als dass ich dass dingen ja nicht rotieren kann. Und diese Matrix scheine ich mit den Wrapper nicht benutzen zu können (oder ich suche an der falschen stelle, dass wäre doch wenn in der Material Klasse, oder?) Deshalb müßte ich das halt so machen wie ich geschrieben habe, weiß aber nicht wie dass geht :-) Es gibt ja schon alleine min Vier möglichkeiten das ding zu skalieren (größe, skalierung, z position und kamera z position)...


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 28.05.2007, 16:14 
Offline
Moderator

Registriert: 25.02.2007, 14:35
Beiträge: 323
Wohnort: Münster
Ok, ich weiß nicht wie das bei den Wrappern aussieht, ich glaube, es ist erst seit Version 1.2 oder 1.3 so... KA


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 30.05.2007, 14:39 
Offline

Registriert: 28.05.2007, 14:48
Beiträge: 18
Ich bin grad über dass hier gestoßen: http://wiki.delphigl.com/index.php/Tutorial_2D
Ist zwar OpenGL aber es gaht ja um das Prinzip. Nun wollte ich fragen ob sich Irrlicht genauso verhält, also dass man ne Orthogonale Projectionsmatrix mit der auflösung 800x600 erstellen kann?


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 30.05.2007, 14:50 
Offline
Moderator
Benutzeravatar

Registriert: 15.04.2007, 20:20
Beiträge: 505
Wohnort: Reelsen
So etwas ähnliches habe ich schon mal mit Irrlicht gemacht, der Code dürfte hier irgendwo im Forum liegen (habe ihn aber nicht gefunden, bei den Codeschnipseln gibts dafür eine leistungsstärkere (aber imho auch kompliziertere) Variante als SceneNode).

EDIT:
Das hier meine ich, das ist einfacher als der SceneNode: viewtopic.php?f=1&t=93&p=1088&hilit=#p1088
Falls du das aber zusammen mit einer 3D-Welt benutzen willst, geht das nicht (wie in dem Beispiel von dir), die Kamera musst du selber erstellen.

_________________
Meine Gameengine :)
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 01.06.2007, 22:27 
Offline

Registriert: 28.05.2007, 14:48
Beiträge: 18
Scheint nützlich zu sein, allerdings kann ich kein c++ und habe leichte probleme den Code zu verstehen. Könnte hier vieleicht jemand den Code in c# (oder vb.net) umschreiben? Und gegebenen falls dass ich dass selbst hinkriegen sollte: Muss ich noch was anderes Beachten damit der Code läuft (Camera, etc)?
EDIT: Ok, ich brauch definitiv ne Camera, aber wie muss ich die einstellen?
EDIT2: Code versteh ich soweit, aber was machen diese beiden zeilen:
Code:
int left = (!mirrorx)?(0) : (1);
int top = (!mirrory)?(0) : (1);


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 01.06.2007, 22:57 
Offline
Moderator
Benutzeravatar

Registriert: 15.04.2007, 20:20
Beiträge: 505
Wohnort: Reelsen
Ooops, hab [berlesen, dass du .NET benutyt...

int left = (!mirrorx)?(0) : (1);
int top = (!mirrory)?(0) : (1);

ist dasselbe wie

wenn mirrorx gleich 0, dann ist left gleich 0, sonst ist left gleich 1.
wenn mirrory gleich 0, dann ist top gleich 0, sonst ist top gleich 1.

Versuche gerade, mein Kezboardlazout wieder yu korrigieren, sonst g'be es sch;neren Code ;)

EDIT
kA, was du bei der Kamera genau beachten musst, ich glaube, ich habe, als ich den Code geschrieben habe, die Kamera an der Ursprungsstelle gelassen, kA, ist schon l'nger her, dass ich den Code geschrieben hab.
Yumindest gibt es probleme, wenn die Kamera bewegt oder gedreht wird, siehe anderer Thread...

_________________
Meine Gameengine :)
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 02.06.2007, 13:16 
Offline

Registriert: 28.05.2007, 14:48
Beiträge: 18
ähm.. sind mirrorx/y nicht booleans? Oder muss ich 0 = false und 1 = true denken?


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 02.06.2007, 13:18 
Offline
Moderator
Benutzeravatar

Registriert: 15.04.2007, 20:20
Beiträge: 505
Wohnort: Reelsen
Joa... sry, klar.
Allerdings ist in C/C++ true = 1 und false = 0 ;)

_________________
Meine Gameengine :)
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 02.06.2007, 13:21 
Offline

Registriert: 28.05.2007, 14:48
Beiträge: 18
So richtig?
wenn mirrorx gleich false, dann ist left gleich 0, sonst ist left gleich 1.
?


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 3 Dimensionales 2D Sprite
BeitragVerfasst: 02.06.2007, 13:23 
Offline
Moderator
Benutzeravatar

Registriert: 15.04.2007, 20:20
Beiträge: 505
Wohnort: Reelsen
Müsste stimmen.

_________________
Meine Gameengine :)
Bild


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de