diff options
author | Dave Parks <davep@lindenlab.com> | 2010-11-24 03:36:41 -0600 |
---|---|---|
committer | Dave Parks <davep@lindenlab.com> | 2010-11-24 03:36:41 -0600 |
commit | 894dd833f7351ead340047bd5d6f9950a5cecbeb (patch) | |
tree | 10e6539c2d3cdafc2b74238063d0293d774e92c5 /indra/newview/llviewerwindow.cpp | |
parent | 2915715ec4a9bb7978c4a0db0afc26b73ab8b2fb (diff) |
Depth of Field whenever "Lighting and Shadows" is enabled and global-illumination is not (experimental).
Diffstat (limited to 'indra/newview/llviewerwindow.cpp')
-rw-r--r-- | indra/newview/llviewerwindow.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 972c9c255e..20d9f49a3e 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -3549,6 +3549,8 @@ LLViewerObject* LLViewerWindow::cursorIntersect(S32 mouse_x, S32 mouse_y, F32 de LLVector3 mouse_world_start = mouse_point_global; LLVector3 mouse_world_end = mouse_point_global + mouse_direction_global * depth; + //gDebugRaycastIntersection = mouse_world_end; + if (start) { *start = mouse_world_start; @@ -3570,8 +3572,7 @@ LLViewerObject* LLViewerWindow::cursorIntersect(S32 mouse_x, S32 mouse_y, F32 de { found = this_object; } - } - + } else // is a world object { if (this_object->lineSegmentIntersect(mouse_world_start, mouse_world_end, this_face, pick_transparent, @@ -3579,21 +3580,22 @@ LLViewerObject* LLViewerWindow::cursorIntersect(S32 mouse_x, S32 mouse_y, F32 de { found = this_object; } - } - } - + } + } else // check ALL objects - { + { found = gPipeline.lineSegmentIntersectInHUD(mouse_hud_start, mouse_hud_end, pick_transparent, face_hit, intersection, uv, normal, binormal); if (!found) // if not found in HUD, look in world: - - { + { found = gPipeline.lineSegmentIntersectInWorld(mouse_world_start, mouse_world_end, pick_transparent, face_hit, intersection, uv, normal, binormal); + if (found) + { + gDebugRaycastIntersection = *intersection; } - + } } return found; |