Dies ist mit meinem letzten question verwandt. Um dieses Bild:Image Blending Problem beim Rendern auf Textur
http://img252.imageshack.us/img252/623/picture8z.png
ich einen weißen Hintergrund zeichnen (color =
(1, 1, 1, 1)
).I Render-to-Textur, die beiden oberen linken Quadrate mit color =
(1, 0, 0, .8)
und Vermischungsfunktion(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)
und dann mit Farbe, die Textur zeichnen =(1, 1, 1, 1)
und Vermischungsfunktion(GL_ONE, GL_ONE_MINUS_SRC_ALPHA)
.Ich zeichne das untere rechte Quadrat mit Farbe =
(1, 0, 0, .8)
und Mischfunktion(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)
.
Durch meine Berechnung, die Render-to-Textur Quadrate
.8 * (1, 0, 0, .8) + (1 - .8) * (0, 0, 0, 0) = (.8, 0, 0, .64)
und so nach, dass die Textur auf dem weißen Hintergrund zeichnen, sollten sie Farbe haben Farbe sollte
(.8, 0, 0, .64) + (1 - .8) * (1, 1, 1, 1) = (1, .2, .2, .84)
und das untere rechte Quadrat sollte die Farbe haben
.8 * (1, 0, 0, .8) + (1 - .8) * (1, 1, 1, 1) = (1, .2, .2, .84)
das sollte gleich aussehen! Ist meine Argumentation falsch? Ist meine Berechnung falsch?
In jedem Fall ist mein Ziel, einige meiner Szene zu cachen. Wie rendere ich die Textur und zeichne diese Textur so, dass sie der Inline-Szene entspricht?