ich versuche gerade nochmal Color Picking zum laufen zu bringen, allerdings bekomme ich die falschen Werte zurück.
Es scheint als ob ich die Werte bekomme die ich auch sehe, nicht die codierten.
Wenn ich glUseProgram(0); aus der Selekt funktion auskommentiere dann geht alles aber dann seh ich ja die codierten Werte. Ich häng alle nötigen Code-Schnipsel an vieleicht kann mir ja jemand helfen.
Anmerkung: Der Sel_Mode verhindert ein Error (Der Vorgang ist Ungültig) wenn der shader nicht gebunden ist aber trotzdem werte übergeben werden sollen.
Wenn ich glUseProgram(0); aus der Selekt funktion auskommentiere dann geht alles aber dann seh ich ja die codierten Werte.
Das zu zweimal rendern musst weiß du aber, oder? Einmal für die Selektion und einmal damit du was siehst. Ich finde es merkwürdig, dass du für die Selektion scheinbar in den normalen Framebuffer renderst und nicht etwa in einen FBO. Vielleicht fehlt aber auch nur der entsprechende Teil des Quellcodes.
Also mein Tipp wäre das dein normales Rendering aus irgendeinem Grund kaputt ist. Wäre es beispielsweise möglich das alles was du normal renderst einfach nur schwarz ist? Z.B. weil die Textur die der Color-Picking-Shader benutzt noch gebunden ist. Einfach mal die clearColor auf irgendwas nicht-schwarzes drehen.
Edit: Noch ne Idee: Der Z-Buffer wird in Render nicht gelöscht! Wenn du das zweite mal renderst verhindert der Z-Buffer das irgendwas passiert, die Z-Werte sind ja identisch. Bau da mal ein
Code:
glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT or GL_STENCIL_BUFFER_BIT);
Mitglieder in diesem Forum: 0 Mitglieder und 4 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.