diff options
| author | Tofu Buzzard <no-email> | 2011-02-14 19:29:59 -0800 |
|---|---|---|
| committer | Tofu Buzzard <no-email> | 2011-02-14 19:29:59 -0800 |
| commit | b6eaa84f379e236eaa76adc9962d91b91df72b7f (patch) | |
| tree | a6491b27a0f3d5ddbe1064c1d8b1c33e14b396eb /indra/newview/lldrawpoolalpha.cpp | |
| parent | ef49d3f30b0ed18ae31147ff10d19e63034ceab9 (diff) | |
| parent | 681d64de0261235cbafe6b9b082344241b6fbf54 (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); } |
