Download

Two render textures should be exactly the same, but one draws much darker than the other

So I have these two render textures.

http://himekosutori.com/wp-content/uploads/2019/01/QuestTransparent.jpg

One shows up much darker than the other. They are being rendered from objects of the same GFxMoviePlayer class loading the same .swf file. I’m logging the alpha of the symbol in each movie player and the alpha inside the movie is the same. I am drawing them to the canvas using the same draw color. Both render textures have the same clear color. But one shows up much darker than the other. [Edit: I’m also making sure I’m drawing each texture only once.]

If I draw multiple copies of Quest 1 elsewhere on the screen, it is still lighter than any copies of Quest 2. If I add quest 1 and then wait a few seconds and add quest 2, quest 1 is light and quest 2 is dark.

I get similar results whether I draw that to the screen using any of



PlayerHUD.Canvas.DrawTexture(QuestRenderer.RenderTexture, 1.0);
PlayerHUD.Canvas.DrawTile(QuestRenderer.RenderTexture, 512, 64, 0, 0, 512, 64,,,BLEND_AlphaComposite);
PlayerHUD.Canvas.DrawTile(QuestRenderer.RenderTexture, 512, 64, 0, 0, 512, 64,,,BLEND_Translucent );


When I draw them using



PlayerHUD.Canvas.DrawTile(QuestRenderer.RenderTexture, 512, 64, 0, 0, 512, 64,,,BLEND_Opaque);


http://himekosutori.com/wp-content/uploads/2019/01/QuestOpaque.jpg

They both look the same, but of course I lose the transparency.

Any idea why one might be more transparent than the other? How do I test it and fix it?

Figured it out. In the GFxMoviePlayer class, I added this to default properties:



RenderTextureMode=RTM_Alpha