<vnscene name="ExampleScene">
  <item ref="cube" prefab="prefabs/SimpleSpinningCubePrefab" />
  
  <events>
    <!-- Set the default values -->
    <position item="cube" x="0" y="0" z="0" />

    <set property="cube->material->color" value="COLOR_BLACK" type="struct Color" />
    <set property="cube->material->color.a" value="0" type="uint8_t" />
    

    <!-- Fade out the black overlay -->
    <set property="cube->material->color.a" to="0" duration="1" curve="easeOut" type="uint8_t" />
    
    <!-- Example Text, also showing how in future we can support multiple languages -->
    <text character="eth">
      <string lang="en">Hi, I'm Ethereality.</string>
    </text>
    
    <!-- Fade in craig -->
    <marker name="craigCool" />

    <set property="cube->material->color.a" to="255" duration="1" curve="easeOut" type="uint8_t" />
    <text character="craig">
      <string lang="en">Hi, I'm Craig.</string>
    </text>

    <!--
      Because each event stops things happening until it's complete, let's
      assume we want to do two things at once, say move and fade out a character
      at the same time. This will make craig exit screen left.
    -->
    <parallel>
      <set property="cube->material->color.a" to="0" duration="1" curve="easeOut" type="uint8_t" />
      <position item="cube" x="-2" duration="1" curve="easeOut" />
    </parallel>

    <!-- Now Craig is gone, so sad, let's now fade the screen out and present some choices -->
    <set property="cube->material->color.a" to="255" duration="1" curve="easeOut" type="uint8_t" />

    <!-- Here I am creating a marker -->
    <goto-marker name="craigCool" />
  </events>
</vnscene>