| Autor |
Beitrag |
Andreas Pfau
      
Beiträge: 997
|
Verfasst: Sa 11.01.03 15:34
Hallo Leute,
weiß einer von euch, wozu ich mit glTexCoord() bis zu 4 Koordinaten definieren kann? was machen die anderen 2 (bei einer 2D-Textur)? Hat das was mit Cubemaps zutun? Wenn ja, wie geht das?
|
|
Raphael O.
      
Beiträge: 1596
VS 2013
|
Verfasst: Sa 11.01.03 19:12
die vier Koordinaten sind dafür da, um festzulegen, welcher ausschnitt der textur angezeigt wird... wobei 1 immer maximal ist
wenn du Fragen zu OpenGl hast bist du allgemein im Forum von [url] www.delphigl.com[/url] besser aufgehoben
Fiji-Fighter
|
|
Andreas Pfau 
      
Beiträge: 997
|
Verfasst: Sa 11.01.03 21:51
Die Seite kenn' ich. Tolle Seite, aber da werden leider auch nur die ersten 2 Parameter behandlet (horizontale und vertikale Position).
Aber was kann ich mit den beiden anderen Parametern angeben? Eine Textur ist doch maximal 2-dimansional, waozu also 4 Dimensionen angeben? Was ist das???
|
|
Raphael O.
      
Beiträge: 1596
VS 2013
|
Verfasst: Mo 13.01.03 13:39
ich meinte das Forum da...
da wird dir sicherlich schneller geholfen...
Na ja...
mal ein Beispiel: du willst z.B aus einer Textur, nur die Mitte auf dein Quad "kleben"...
dann sind die vier Werte z.B.
Quelltext 1: 2: 3: 4: 5: 6:
| glBegin(GL_QUADS); glTexCoord2f(0.2,0.2); glVertex3f(-1,-1,0); glTexCoord2f(0.2,0.8); glVertex3f(-1,1,0); glTexCoord2f(0.8,0.8); glVertex3f(1,1,0); glTexCoord2f(0.8,0.2); glVertex3f(1,-1,0); glEnd; |
dann hättest du auf deinem Quadrat nur ein mittleres Stück von der Textur, das du in der Mitte "herausgeschnitten hast"...
jetzt klar??
sonst frag nochmal nach
Fiji-Fighter
P.S. hier der direkte Link auf das Tut in dem alles wahrscheinlich besser noch mal erklärt wird: www.phobeus.de/hosti...on4&head=lesson4
|
|
OregonGhost
      
Beiträge: 215
|
Verfasst: Mo 13.01.03 14:15
@Fiji-Fighter:
Die Frage lautet, wozu die VIER Texturkoordinaten sind, in deinem Beispiel zeigst du wieder nur ZWEI.
In Direct3D gibt es Volume-Texturen, das heißt da sind drei Koordinaten schon mal angebracht. Ich weiß allerdings nicht, wofür man vier Koordinaten brauchen könnte...
_________________ Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
|
|
Andreas Pfau 
      
Beiträge: 997
|
Verfasst: Mo 13.01.03 17:11
@Fiji-Fighter, das wusste ich schon. Aber egal.
Danke @Oregonghost, Du hast es verstanden.
Also, halten wir fest: es könnten Volume-Korrdinaten sein wie in D3D. Weiß jemenad, was man damit machen kann?
|
|
Raphael O.
      
Beiträge: 1596
VS 2013
|
Verfasst: Mo 13.01.03 17:46
Ach so!!
ich dachte er wollte wissen warum man vier Koordinaten angibt anstatt nur zwei wie es z.B. bei Rectangle ist wo man nur oben links und unten rechts angibt...
Na ja auch egal...
Fiji-Fighter
|
|
OregonGhost
      
Beiträge: 215
|
Verfasst: Mi 15.01.03 19:59
Ich glaube, es ist einfach so, dass Texturen bis zu vier Dimensionen haben können. Die kann man sich zwar nicht mehr anschaulich vorstellen, aber man kann gut damit arbeiten. Beispiel: Wenn man eine dreidimensionale Textur verwendet, wo auf einer Würfelfläche eine reine Grastextur ist, und auf der gegenüberliegenden Seite eine reine Erdtextur, und dazwischen sind halt gemischte Texturen, dann kann man über eine Texturkoordinaten angeben, wieviel Erde bzw. Gras man haben will. Ich hab' dazu folgenden Text gefunden:
| Microsoft DirectX9 SDK hat folgendes geschrieben: |
Note With the exception of cubic-environment maps and volume textures, rasterizers cannot address textures by using any more than two elements. Applications can supply up to three elements for a texture coordinate, but only if the texture is a cube map, a volume texture, or the D3DTTFF_PROJECTED texture transform flag is used. The D3DTTFF_PROJECTED flag causes the rasterizer to divide the first two elements by the third (or n) element. For more information, see Texture Coordinate Transformations. |
Tja... Mach dir also über vier Koordinaten keine Gedanken ;c)
_________________ Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
|
|
Andreas Pfau 
      
Beiträge: 997
|
Verfasst: Mi 15.01.03 20:12
Aha, die 4. Koordinate ist also für "Otto Normalverbraucher" ohne Bedeutung. Aber wie nutze ich dann die 3. Koordinate, d.h. wie erstelle ich mit mit OpenGL eine Cube-Textur?
|
|
OregonGhost
      
Beiträge: 215
|
Verfasst: Do 16.01.03 18:55
Ich weiß nicht, ob OpenGL schon Cube- oder Volume-Texturen unterstützt, es ist möglich, dass dies erst ab OpenGL 2.0 der Fall ist. An meinen bisherigen Antworten siehst du aber vielleicht, dass eher D3D mein Spezialgebiet ist.
Schau mal auf nehe.gamedev.net, www.gamedev.net oder www.gamasutra.com, vielleicht steht da was dazu.
_________________ Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
|
|
Andreas Pfau 
      
Beiträge: 997
|
Verfasst: Do 16.01.03 20:48
Danke, @Oregonghost, NeHe ist 'ne tolle Seite! Ich schau mir das mal durch.
|
|