Added osg::FrameStamp::set/getSimulationTime().

Added setting of osg_SimulationTime and osg_DeltaSimulationTime to the uniforms set by SceneView

Added frame(double simulationTime) and advance(double simulationTime) parameters to
osgViewer::SimpleViewer, Vewer and CompositeViewer.

Updated various examples and Nodes to use SimulationTime where appropriate.
This commit is contained in:
Robert Osfield
2007-01-25 12:02:51 +00:00
parent 13dd5acb63
commit 7232a831da
48 changed files with 321 additions and 138 deletions

View File

@@ -45,6 +45,14 @@ BEGIN_OBJECT_REFLECTOR(osg::FrameStamp)
__double__getReferenceTime,
"",
"");
I_Method1(void, setSimulationTime, IN, double, refTime,
__void__setSimulationTime__double,
"",
"");
I_Method0(double, getSimulationTime,
__double__getSimulationTime,
"",
"");
I_Method1(void, setCalendarTime, IN, const tm &, calendarTime,
__void__setCalendarTime__C5_tm_R1,
"",
@@ -62,5 +70,8 @@ BEGIN_OBJECT_REFLECTOR(osg::FrameStamp)
I_SimpleProperty(double, ReferenceTime,
__double__getReferenceTime,
__void__setReferenceTime__double);
I_SimpleProperty(double, SimulationTime,
__double__getSimulationTime,
__void__setSimulationTime__double);
END_REFLECTOR

View File

@@ -56,6 +56,8 @@ BEGIN_ENUM_REFLECTOR(osgUtil::SceneView::ActiveUniforms)
I_EnumLabel(osgUtil::SceneView::FRAME_NUMBER_UNIFORM);
I_EnumLabel(osgUtil::SceneView::FRAME_TIME_UNIFORM);
I_EnumLabel(osgUtil::SceneView::DELTA_FRAME_TIME_UNIFORM);
I_EnumLabel(osgUtil::SceneView::SIMULATION_TIME_UNIFORM);
I_EnumLabel(osgUtil::SceneView::DELTA_SIMULATION_TIME_UNIFORM);
I_EnumLabel(osgUtil::SceneView::VIEW_MATRIX_UNIFORM);
I_EnumLabel(osgUtil::SceneView::VIEW_MATRIX_INVERSE_UNIFORM);
I_EnumLabel(osgUtil::SceneView::DEFAULT_UNIFORMS);

View File

@@ -151,14 +151,14 @@ BEGIN_OBJECT_REFLECTOR(osgViewer::CompositeViewer)
__int__run,
"Execute a main frame loop. ",
"Equivialant to while (!viewer.done()) viewer.frame(); Also calls realize() if the viewer is not already realized, and installs trackball manipulator if one is not already assigned.");
I_Method0(void, frame,
__void__frame,
"Render a complete new frame. ",
"Calls advance(), eventTraversal(), updateTraversal(), renderingTraversals(). ");
I_Method0(void, advance,
__void__advance,
"",
"");
I_MethodWithDefaults1(void, frame, IN, double, simulationTime, USE_REFERENCE_TIME,
__void__frame__double,
"Render a complete new frame. ",
"Calls advance(), eventTraversal(), updateTraversal(), renderingTraversals(). ");
I_MethodWithDefaults1(void, advance, IN, double, simulationTime, USE_REFERENCE_TIME,
__void__advance__double,
"",
"");
I_Method0(void, eventTraversal,
__void__eventTraversal,
"",

View File

@@ -89,14 +89,14 @@ BEGIN_OBJECT_REFLECTOR(osgViewer::SimpleViewer)
__C5_EventHandlers_R1__getEventHandlers,
"",
"");
I_Method0(void, frame,
__void__frame,
"Render a complete new frame. ",
"Calls frameAdvance(), frameEventTraversal(), frameUpateTraversal(), frameCullTraversal() and frameDrawTraversal(). Note, no internal makeCurrent() is issued before, or swap buffers called after frame(), these operations are the responsibility of the calling code. ");
I_Method0(void, advance,
__void__advance,
"",
"");
I_MethodWithDefaults1(void, frame, IN, double, simulationTime, USE_REFERENCE_TIME,
__void__frame__double,
"Render a complete new frame. ",
"Calls frameAdvance(), frameEventTraversal(), frameUpateTraversal(), frameCullTraversal() and frameDrawTraversal(). Note, no internal makeCurrent() is issued before, or swap buffers called after frame(), these operations are the responsibility of the calling code. ");
I_MethodWithDefaults1(void, advance, IN, double, simulationTime, USE_REFERENCE_TIME,
__void__advance__double,
"",
"");
I_Method0(void, eventTraversal,
__void__eventTraversal,
"",

View File

@@ -124,14 +124,14 @@ BEGIN_OBJECT_REFLECTOR(osgViewer::Viewer)
__int__run,
"Execute a main frame loop. ",
"Equivialant to while (!viewer.done()) viewer.frame(); Also calls realize() if the viewer is not already realized, and installs trackball manipulator if one is not already assigned.");
I_Method0(void, frame,
__void__frame,
"Render a complete new frame. ",
"Calls advance(), eventTraversal(), updateTraversal(), renderingTraversals(). ");
I_Method0(void, advance,
__void__advance,
"",
"");
I_MethodWithDefaults1(void, frame, IN, double, simulationTime, USE_REFERENCE_TIME,
__void__frame__double,
"Render a complete new frame. ",
"Calls advance(), eventTraversal(), updateTraversal(), renderingTraversals(). ");
I_MethodWithDefaults1(void, advance, IN, double, simulationTime, USE_REFERENCE_TIME,
__void__advance__double,
"",
"");
I_Method0(void, eventTraversal,
__void__eventTraversal,
"",