Tell me more ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

My draw method can be simplified as follows:

        // [Background Effects]
        DrawBackground(gameTime);

        // [Deferred Rendering]
        deferredRendering.Draw(gameTime);

        // [Forward Rendering]
        DrawForwardScene(gameTime);

        // [Debug Rendering]
        DrawDebug();

        // [Transparent Rendering]
        DrawTransparent(gameTime);

The transparent rendering requires a background texture which is the accumulate render result from the previous rendering methods (i.e. the scene so far before transparent objects)

Deferred rendering requires enabling and disabling its own render targets so I currently have a separate final output render target for that method.

If I want to gather the final render from the previous 4 rendering methods what would be the best way to approach it?

I thought about using COLOR4 output (so it doesn't interfere with deferred rendering) and setting one render target for all render methods but I'm not certain about that approach.

Any other approach would probably require combining the final rendered texture from each draw method. This is what I am uncertain about.

Would it be a case of:

    // SET render target      

    // [Background Effects]
    DrawBackground(gameTime);

    // UNSET render target

    // Pass render target TEXTURE to next render method

If so, how do I combine the textured passed with the current output for the render method?

Is there a tried and tested method for automating this render target passing approach?

share|improve this question

Know someone who can answer? Share a link to this question via email, Google+, Twitter, or Facebook.

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.