hallo,
ich habe ein problem mit der programmierung von farbverläufen in opengl. ich verwende dafür 1-dimensionale texturen, die ich einmal mit diskreten farben fülle und ein anderes mal mit einem kontinuierlichen farbverlauf. mit der anzeige des diskreten farbverlauf funktioniert alles gut. probleme macht mir der kontinuierliche (interpolierte) farbverlauf...
wie in den anhängen zu erkennen, wird der bereich bei den knoten 453, 1438 und 494 eigentlich rot dargestellt (diskrete abbildung mit konturbändern). bei dem kontinuierlichen farbverlauf tritt allerdings ein fehler auf, so dass ich in diesem bereich auf einmal einen gelben fleck habe bzw. bei dem knoten 1438 was rotes zu sehen ist. das textur-mapping scheint da nicht hinzuhauen und ich weiß nicht woran das liegt. die prozent-werte für die textur an den knoten sind:
453
percent= 0.85867550196691866
1438
percent= 0.65452281903301945
494
percent= 0.84740735684076285
mit diesen werten bestimme ich beim zeichnen des punktes die farbe der jeweiligen pixel:
double nodeCoords[3] = {x, y, z};
glTexCoord1d(percent);
glVertex3dv(nodeCoords);
mein farbverlauf ist bei 0.0 blau, in der mitte gelb/grün und bei 1.0 rot.
weiß vielleicht jemand, woran das liegt, dass ich diesen gelben fleck an der stelle bekomme?
schonmal vielen dank.
gruß. kerstin.[/code]
Problem mit 1D-Textur in OpenGL
Problem mit 1D-Textur in OpenGL
- Dateianhänge
-
- kontinuierlicher Farbverlauf
- interpolation_tex1d.png (27.92 KiB) 3103 mal betrachtet
-
- diskreter Farbverlauf
- interpolation_tex1d_discrete.png (8.36 KiB) 3103 mal betrachtet