I would like some insight about how to place an image with an alpha, and a certain amount of opacity, on the top of everything that is rendered. What's the cheapest way to do that?
I use C++ with a programmable OpenGL pipeline.
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It only takes a minute to sign up.Sign up to join this community
After you've rendered your normal bits and pieces:
One way is with overlays. It should be fast/cheap enough.
UPDATE: As Lars Viklund's comment explanations go, these overlays do not refer to the older concept that predates the programmable pipeline. The older way to add overlays (or underlays for that matter of fact) had to do with creating special render context planes like described here.
Depending on what your current pipeline is, it could be really easy to add it in a post process step.
Assuming you already have a post-process chain where you can render to a certain target to apply some extra processing to your scene, adding the watermark could be a post-process where you just render your final scene texture and then add your watermark texture. Obviously you can "factorize" this step into other if you don't want to add a new step and even come up with fancy effects for your watermark. Also with this method it could be extremely simple to remove your watermark step later.