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

Aktuelle Zeit: Mi Jul 09, 2025 11:56

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: Texturen wiederholen
BeitragVerfasst: Mi Feb 21, 2007 16:59 
Offline
DGL Member

Registriert: Sa Feb 10, 2007 15:45
Beiträge: 32
Hallo!

Das ist jetzt vielleicht ne ziemlich dumme frage, aber wie krieg ichs hin, dass eine Textur auf einer Fläche nicht nur einmal gezeichnet wird, sondern öfter?
Wie so ne Tapete, du muss ich ja net ein Bild mit 1000x1000 Pixel verwenden, sondern es würde ja auch reichen das Muster zu nehmen und über die ganze Fläche wiederholen zu lassen.

Danke im Voraus!

Simon


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Feb 21, 2007 17:09 
Offline
DGL Member
Benutzeravatar

Registriert: Di Sep 06, 2005 18:34
Beiträge: 362
Wohnort: Hamburg
Hi ...

das geht wenn du größere Texturkoordinaten verwendest.
Wenn du in dem bereich von 0 bis 1 arbeitest, wird die textur einmal über das ganze primitiv gezogen. wenn du z.b. im bereich 0 bis 3 arbeitest wird sie 3 mal drüber gezogen etc.

Gruß
Shai

_________________
Der Mensch hat neben dem Trieb der Fortpflanzung und dem zu essen und zu trinken zwei Leidenschaften: Krach zu machen und nicht zuzuhören. (Kurt Tucholsky)
Schwabbeldiwapp, hier kommt die Grütze. (Der Quästor)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Feb 21, 2007 17:57 
Offline
DGL Member

Registriert: Sa Feb 10, 2007 15:45
Beiträge: 32
Ich weiß nicht, was ich falsch mach, aber mit

Code:
  1.  
  2.     glEnable(GL_TEXTURE_2D);
  3.     fTapete[0].Bind;
  4.     glBegin(GL_QUADS);
  5.         glTexCoord2d(0, 0);             glVertex3d(0, 0, 0);
  6.         glTexCoord2d(0, 20);                glVertex3d(20, 0, 0);
  7.         glTexCoord2d(10, 20);               glVertex3d(20, 10, 0);
  8.         glTexCoord2d(10, 0);                glVertex3d(0, 10, 0);
  9.     glEnd(GL_QUADS);
  10.  


malt er mir das Bild einmal unten links in die ecke und verschmiert die Ränder nach oben und rechts.

Was mach ich denn da falsch???


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Feb 21, 2007 18:06 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Wenn du eine Textur mehrfach zeichnen möchtest musst du einen anderen Warpmodus benutzen. Standarmäßig stehen die bei der glBitmap auf GL_CLAMP_TO_EDGE. Damit werden die nicht über deren Rand hinaus gezeichnet.

Code:
  1. fTapete[0].SetWrap(GL_REPEAT, GL_REPEAT);

Wann du das setzt ist relativ egal. Wenn du es nicht mehr veränderst bietet es sich an das vor dem GenTexture aufzurüfen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Feb 21, 2007 18:20 
Offline
DGL Member

Registriert: Sa Feb 10, 2007 15:45
Beiträge: 32
Dankeschön!


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 6 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.007s | 16 Queries | GZIP : On ]