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

Aktuelle Zeit: Di Mai 21, 2024 18:13

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



Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Textur-Matrix gelöst
BeitragVerfasst: Do Nov 20, 2014 20:36 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 12, 2013 07:45
Beiträge: 61
Programmiersprache: Turbo Delphi 2006
Hallo,

ich hatte letztens die Idee auf einem Körper die Textur zu drehen. Dazu hatte ich das als Vorlage genommen:

Code:
  1. procedure drawTexturedQuad;
  2. begin
  3.   glBegin(GL_QUADS);
  4.     glTexCoord(0,0); glVertex3f(-1, 1,0);
  5.     glTexCoord(0,1); glVertex3f(-1,-1,0);
  6.     glTexCoord(1,1); glVertex3f( 1,-1,0);
  7.     glTexCoord(1,0); glVertex3f( 1, 1,0);
  8.   glEnd;
  9. end;
  10.  
  11. begin
  12.   glMatrixMode(GL_MODELVIEW);
  13.   glBindTexture(GL_TEXTURE_2D, texID);
  14.   glTranslatef(-2,0,0);
  15.   drawTexturedQuad;
  16.  
  17.   glMatrixMode(GL_TEXTURE);
  18.   glRotatef(20,0,0,1);
  19.  
  20.   glMatrixMode(GL_MODELVIEW);
  21.   glTranslatef(4,0,0);
  22.   drawTexturedQuad;
  23. end;


Leider wurden alle Texturen dadurch gedreht. Das sah dann auch ohne Drogen etwas psychedelisch aus.

Kann man auch einzelne Texturen beeinflussen - oder habe da total was verbockt?
Das was ich damit erreichen wollte hat sich zwar erledigt aber es interessiert mich schon.


Zuletzt geändert von Twist am So Nov 23, 2014 14:45, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Textur-Matrix
BeitragVerfasst: Do Nov 20, 2014 21:24 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,

die Textur-Coordinaten die letztendlich für das positionieren der Textur genutzt werden, werden immer mit der Textur-Matrix manipuliert. Default-Einstellung ist die Einheits-Matrix, also werden die Coords nicht geändert. Wenn du die Texture Matrix jetzt mit glRotate drehst, dann zählt das natrürlich auch wieder für alle Zeichen-Aufrufe. Du musst also wieder die Einheits-Matrix mit glLoadIdentity laden, oder die alte Matrix vor'm glRotate mit glPushMatrix auf dem Stack sichern und nach deiner Zeichen-Operation mit glPopMatrix wieder vom Stack holen. Das funktioniert also genau so wie man das schon von der ModelView-Matrix kennt. Jede Matrix hat ihren eigenen Stack, heißt glPushMatrix und glPopMatrix sind abhängig vom eingestellten MatrixMode.

MfG Bergmann.

_________________
Aktuelle Projekte: BumpMapGenerator, Massive Universe Online
Auf meiner Homepage gibt auch noch paar Projekte und Infos von mir.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Textur-Matrix
BeitragVerfasst: Fr Nov 21, 2014 20:15 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 12, 2013 07:45
Beiträge: 61
Programmiersprache: Turbo Delphi 2006
Hallo,

danke für die Antwort. Push und Pop hatte ich benutzt aber ich werde es noch mal mit glLoadIdentity testen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Textur-Matrix
BeitragVerfasst: Fr Nov 21, 2014 23:34 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,

Push und Pop ist eigentlich auch der richtigere Weg. Damit kann man mehrere Matrix-Manipulationen ausführen. glLoadIdentity läd immer die Einheits-Matrix und macht somit alle Änderungen rückgängig. Wie hast du Push und Pop denn aufgerufen? Vlt war da bei der Reihenfolge noch etwas falsch...

MfG Bergmann.

_________________
Aktuelle Projekte: BumpMapGenerator, Massive Universe Online
Auf meiner Homepage gibt auch noch paar Projekte und Infos von mir.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Textur-Matrix
BeitragVerfasst: So Nov 23, 2014 14:45 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 12, 2013 07:45
Beiträge: 61
Programmiersprache: Turbo Delphi 2006
Zitat:
Vlt war da bei der Reihenfolge noch etwas falsch...


Das denke ich auch. Mir reicht die Aussage, daß man die Texturmatrix für einzelne Texturen beeinflussen kann.


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 17 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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]