Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mi Jul 02, 2025 21:27

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: glRotate rotiert um obere linke Ecke
BeitragVerfasst: So Okt 06, 2013 13:26 
Offline
DGL Member

Registriert: Di Dez 13, 2011 19:14
Beiträge: 166
Wohnort: Hamburg / Mölln
Programmiersprache: D
Hallo zusammen.
Eine frage: Ich rotiere gerade ine TileMap mit
Code:
  1. glRotatef(25, 0, 0, 1f);

Das klappt auch, aber es rotiert um die obere linke Ecke.
Hier ein vorher-nachher Bild:
Bild
Bild

Muss ich bei jeder Rotation auch ein korrespondierendes glTranslate(...) machen, um die Rotation um die obere linke Ecke auszugleichen? Wenn ja, wie berechne ich, um wie viele Pixel ich verschieben muss? Oder geht das insgesamt auch anders?
Danke.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: So Okt 06, 2013 15:28 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Apr 13, 2011 22:05
Beiträge: 218
Programmiersprache: Lazarus/FPC
Stell dir eine Art Zeichenpinsel vor mit dem du das Objekt malst. Der ist grundsätzlich in der oberen linken Ecke, wie dein Beispiel schön demonstriert.
Jetzt musst du überlegen, WO ist der Rotationspunkt vom Bild. Das wäre die Bildschirmmitte, um diesen Punke dreht sich alles wenn du die map rotieren willst.
Also machst du folgendes, du bewegst den Zeichenpinsel in die Mitte der Zeichenfläche, rotierst dort, und gehst wieder mit dem Pinsel retour:

ungefähr so:

Code:
  1. gltranslatef(bildbreite / 2, bildbreite / 2, 0);
  2. glRotatef(25, 0, 0, 1f);
  3. gltranslatef(-bildbreite / 2, -bildbreite / 2, 0);

_________________
Ich teile manchmal heimlich durch Null. - Alber Einstein


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Okt 09, 2013 10:34 
Offline
DGL Member

Registriert: Di Dez 13, 2011 19:14
Beiträge: 166
Wohnort: Hamburg / Mölln
Programmiersprache: D
Dachte ich's mir doch. Danke, dann mache ich das eben so. :)


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Okt 09, 2013 14:17 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Schau dir auch nochmal Tutorial_Matrix2 bzw. die Bilder dort an.

PS: Nettes Bild. Wann gibts Infos zum Projekt?

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Okt 09, 2013 15:13 
Offline
DGL Member

Registriert: Di Dez 13, 2011 19:14
Beiträge: 166
Wohnort: Hamburg / Mölln
Programmiersprache: D
Flash hat geschrieben:
Schau dir auch nochmal Tutorial_Matrix2 bzw. die Bilder dort an.

PS: Nettes Bild. Wann gibts Infos zum Projekt?

Ist quasi schon oben, wird aber noch gerade gefixt, habe noch einige Fragen an euch ;). Werde aber bis Ende der Woche mal den Link posten. Hier am besten direkt.
Es sei aber soviel gesagt, dass es kein Spiel ist sondern eine Art Framework das lediglich OpenGL und SDL kapselt. Damit kann man dann letztlich Spiele entwerfen.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Okt 09, 2013 20:00 
Offline
Compliance Officer
Benutzeravatar

Registriert: So Aug 08, 2010 08:37
Beiträge: 460
Programmiersprache: C / C++ / Lua
:O Konkurrenz!

_________________
offizieller DGL Compliance Beauftragter
Never run a changing system! (oder so)


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Okt 09, 2013 20:27 
Offline
DGL Member

Registriert: Di Dez 13, 2011 19:14
Beiträge: 166
Wohnort: Hamburg / Mölln
Programmiersprache: D
end hat geschrieben:
:O Konkurrenz!

Kommt drauf an. Für welche Sprache? ;)


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Okt 09, 2013 21:16 
Offline
Compliance Officer
Benutzeravatar

Registriert: So Aug 08, 2010 08:37
Beiträge: 460
Programmiersprache: C / C++ / Lua
Delphi

_________________
offizieller DGL Compliance Beauftragter
Never run a changing system! (oder so)


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Okt 09, 2013 21:25 
Offline
DGL Member

Registriert: Di Dez 13, 2011 19:14
Beiträge: 166
Wohnort: Hamburg / Mölln
Programmiersprache: D
end hat geschrieben:
Delphi

D
Sollten uns nicht in die Quere kommen :)


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 3 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
[ Time : 0.009s | 15 Queries | GZIP : On ]