diff options
| author | Tofu Buzzard <no-email> | 2011-02-14 19:29:31 -0800 |
|---|---|---|
| committer | Tofu Buzzard <no-email> | 2011-02-14 19:29:31 -0800 |
| commit | 681d64de0261235cbafe6b9b082344241b6fbf54 (patch) | |
| tree | 662ec45b1d0eb9960a57d9abac3422c2f89103ed /indra/newview/lldrawpoolalpha.cpp | |
| parent | 9b13145314be9b599f06dd9ea26b58b05d4694df (diff) | |
| parent | cf728ab09ec12c73e95b8e2304a3b69c9460182e (diff) | |
merge
Diffstat (limited to 'indra/newview/lldrawpoolalpha.cpp')
| -rw-r--r-- | indra/newview/lldrawpoolalpha.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp index 2519d0297c..7f1740e29f 100644 --- a/indra/newview/lldrawpoolalpha.cpp +++ b/indra/newview/lldrawpoolalpha.cpp @@ -103,7 +103,14 @@ void LLDrawPoolAlpha::renderDeferred(S32 pass) S32 LLDrawPoolAlpha::getNumPostDeferredPasses() { - return 2; + if (LLPipeline::sImpostorRender) + { //skip depth buffer filling pass when rendering impostors + return 1; + } + else + { + return 2; + } } void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass) @@ -137,8 +144,13 @@ void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass) void LLDrawPoolAlpha::endPostDeferredPass(S32 pass) { - gPipeline.mDeferredDepth.flush(); - gPipeline.mScreen.bindTarget(); + + if (pass == 1) + { + gPipeline.mDeferredDepth.flush(); + gPipeline.mScreen.bindTarget(); + } + deferred_render = FALSE; endRenderPass(pass); } |
