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 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 } ] } DEF SI ScalarInterpolator { key [0 0.5 1] keyValue [0 1.76 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 embedded in proto body" "Animation shall begin at node creation time" "if objects rotations are 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 lineColor 1 0 0 obj Rectangle { size 200 100 } } }