InitialObjectDescriptor { objectDescriptorID 1 audioProfileLevelIndication 255 visualProfileLevelIndication 254 sceneProfileLevelIndication 1 graphicsProfileLevelIndication 1 ODProfileLevelIndication 1 esDescr [ ES_Descriptor { ES_ID 1 decConfigDescr DecoderConfigDescriptor { streamType 3 decSpecificInfo BIFSConfig { isCommandStream true pixelMetric true pixelWidth 600 pixelHeight 400 } } } ] } PROTO GEOMETRY_PROTO [ exposedField SFVec2f translation 0 0 exposedField SFVec2f scale 1 1 exposedField SFColor Color 1 1 1 exposedField SFBool filled TRUE exposedField SFFloat transparency 0 exposedField SFColor lineColor 0 0 0 exposedField SFFloat lineWidth 0 exposedField SFTime start 0 exposedField SFNode obj NULL ] { DEF TR Transform2D { scale IS scale translation IS translation children [ Shape { geometry IS obj appearance Appearance { material Material2D { emissiveColor IS Color filled IS filled transparency IS transparency lineProps LineProperties { lineColor IS lineColor width IS lineWidth } } } } DEF TS TimeSensor { cycleInterval 4 loop TRUE startTime IS start } ] } DEF SI ScalarInterpolator { key [0 0.5 1] keyValue [0 1.5708 0] } ROUTE TS.fraction_changed TO SI.set_fraction ROUTE SI.value_changed TO TR.rotationAngle } OrderedGroup { children [ Background2D { backColor 1 1 1 } WorldInfo { info ["The animation start time is part of proto interface" "Second object appears at 2 sec and starts moving at 4 sec(2+2)" "If objects rotations are not in sync the player is broken" "" "GPAC Regression Tests" "(C) 2002-2004 GPAC Team"] title "Proto SFTime Test" } DEF ROOT Transform2D { children [ GEOMETRY_PROTO { translation -120 0 Color 0 1 1 obj Rectangle { size 200 100 } } ] } ] } AT 2000 { APPEND TO ROOT.children GEOMETRY_PROTO { translation 120 0 Color 1 0 1 transparency 0.75 lineColor 1 0 0 lineWidth 2 start 2 obj Rectangle { size 200 100 } } }