Hallo alle zusammen.
Auch von mir erstmal ein grosses Lob an das DGL Team, die sich so viel mühe machen uns open gl nahe zu brigen. Ihr macht das gut und immer weiter so.
Ich bin im moment bei den texturen hängengeblieben. Ich habe vor wie Phobeus meine Textur zu verändern. Die Textur hat aber nicht nur wie bei Phobeus eine breite sondern auch eine höhe, aber das sollte kein Problem sein. Ich möchte diese nun immer um ein viertel verschieben. erst 4 zur Seite und dann ein viertel runter und wieder 4 zur seite. wenn ich so unten angekommen bn soll die textur wieder ganz von oben rechts anfangen. Bei mir passiert nur leider gar nichts. Aber hier erst mal der code:
Zitat:
glMatrixMode(GL_MODELVIEW);
glLoadIdentity;
glenable(texture_2d); //folgend sollen sich die werte je nach bedingungserfüllug um 0.25 verändern
if w<0.75 then begin w:=w+0.25 end else if w>0.75 then begin w:=0; h:=h+0.25; end else if h>0.75 then begin h:=0; w:=w+0.25; end;
//folgend wird der quad mit textur gezeichnet, welche sich jeweils um w oder h verschieben soll
Registriert: Di Dez 27, 2005 12:44 Beiträge: 393 Wohnort: Berlin
Programmiersprache: Java, C++, Groovy
hallo,
bei dir fehlt noch der Fall w=0.75.
Ist h <= 0.75, bleibt w bei 0.75 hängen und w und h verändern sich nicht mehr, d.h. du hast dann eine 'stehende' Textur.
das wird dann wahrscheinlich schon das problem sein.
Ich probier es direckt aus.
Danke jetzt schon mal
mfg trouff
SO. Es fktniert tatsächlich wer hätte das gedacht.
Nur finde ich, dass es etwas komisch aussieht, da sich ein blitzartiger schnitt durch alle/die textur zieht. Sie ist natürlich im Orginal nicht vorhanden.
Registriert: Sa Nov 13, 2004 11:00 Beiträge: 229 Wohnort: Steinhude
ich würde mal spontan vermuten, dass das damit zusammenhängt, dass du, wenn du beim zeichnen deines quads, wenn du bei einem vertex im vergleich zu dem vorgehenden die x-Koordinate änderst für die Textur die y-Koordinate änderst und umgekehrt.
Ich vermute mal, dass u.a. er diese zwei Zeilen meint:
Zitat:
glTexCoord2f(w,h); glVertex3f(-1, -1, 0);
glTexCoord2f(w,h+0.25); glVertex3f(1, -1, 0);
Hier wird von Vertex1 zu Vertex2 X verändert(-1 -> 1), Y und Z bleiben gleich. Die Texturkoordinaten werden aber in h-Richtung geändert (h ->h+.25), was ja der Y-Komponente der Textur auf dem resultierenden Quad entspricht.
_________________ Manchmal sehen Dinge, die wie Dinge aussehen wollen, mehr wie Dinge aus, als Dinge.
<Esmerelda Wetterwax>
Es kann vorkommen, dass die Nachkommen trotz Abkommen mit ihrem Einkommen nicht auskommen und umkommen.
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Nun die Werte haben aber überhaupt nix miteinander zu tun. Du kannst die Textur auch kopfüber gespiegelt oder wie auch immer auf dein Quad mappen. Da gibts ja keine regeln für.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Mitglieder in diesem Forum: 0 Mitglieder und 16 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.