Commit 50f8f292 authored by Mike Kremer's avatar Mike Kremer

Activated multipass rendering: The traverse function executing the draw action...

Activated multipass rendering: The traverse function executing the draw action of the scene graph will now be called multiple times in order to render in multiple passes. The number of rendering passes will be determined by a mutlipass information action that is called before the drawing action.

git-svn-id: http://www.openflipper.org/svnrepo/OpenFlipper/branches/Free@7801 383ad7c9-94d9-4d36-a494-682f7c89f535
parent 4cbfd7c2
......@@ -605,12 +605,12 @@ void glViewer::drawScene_mono()
}
ACG::SceneGraph::DrawAction action( properties_.drawMode() , false);
ACG::SceneGraph::traverse(sceneGraphRoot_, action, *glstate_, properties_.drawMode() );
ACG::SceneGraph::traverse_multipass(sceneGraphRoot_, action, *glstate_, properties_.drawMode() );
if( blending_ )
{
ACG::SceneGraph::DrawAction action(properties_.drawMode(), true);
ACG::SceneGraph::traverse(sceneGraphRoot_, action, *glstate_, properties_.drawMode());
ACG::SceneGraph::traverse_multipass(sceneGraphRoot_, action, *glstate_, properties_.drawMode());
}
if (oM)
......@@ -698,7 +698,7 @@ void glViewer::drawScene_mono()
// do the picking
glstate_->pick_init (true);
ACG::SceneGraph::PickAction action(*glstate_, properties_.renderPickingMode(), properties_.drawMode());
ACG::SceneGraph::traverse(sceneGraphRoot_, action,*glstate_);
ACG::SceneGraph::traverse_multipass(sceneGraphRoot_, action,*glstate_);
glEnable(GL_LIGHTING);
glEnable(GL_BLEND);
......
......@@ -184,7 +184,7 @@ int glViewer::pickColor( ACG::SceneGraph::PickTarget _pickTarget,
// do the picking
ACG::SceneGraph::PickAction action(properties_.glState(), _pickTarget, properties_.drawMode());
ACG::SceneGraph::traverse(sceneGraphRoot_, action,properties_.glState() );
ACG::SceneGraph::traverse_multipass(sceneGraphRoot_, action,properties_.glState() );
// restore GL state
glMatrixMode( GL_PROJECTION );
......@@ -446,7 +446,7 @@ bool glViewer::pickGL( ACG::SceneGraph::PickTarget _pickTarget,
// do the picking
ACG::SceneGraph::PickAction action(properties_.glState(), _pickTarget, properties_.drawMode());
ACG::SceneGraph::traverse(sceneGraphRoot_, action, properties_.glState());
ACG::SceneGraph::traverse_multipass(sceneGraphRoot_, action, properties_.glState());
int hits = glRenderMode(GL_RENDER);
// restore GL state
......@@ -579,7 +579,7 @@ bool glViewer::pick_region( ACG::SceneGraph::PickTarget _pickTarg
// do the picking
ACG::SceneGraph::PickAction action(properties_.glState(), _pickTarget, properties_.drawMode());
ACG::SceneGraph::traverse(sceneGraphRoot_, action,properties_.glState());
ACG::SceneGraph::traverse_multipass(sceneGraphRoot_, action,properties_.glState());
// restore GL state
glMatrixMode( GL_PROJECTION );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment