The Scene File

Video Vector builds a 3D world via a single text file. Within it, you define the video properties, the camera and the collection of objects, as well as globally and locally defined functions and definitions. The file format is designed to be very concise and easy for the parser to process. As such it is also extremely cryptic with many aspects being defined by a single character. This is a full document of the file format and conventions so you can build a Video Vector scene.

Basic Scene File Structure

  ## video details
% (video_width) (video_height) : (duration_secs) * (fps)

  ## camera details
& _ (position_xyz) ^ (look_at_xyz) v (fov_degrees)

  ## background color
~ (color)

  ## global definitions
? (def) = (global_definition) 

  ## object details
[ (object_name)
    + (parent_object_name)
      
      ## object local definitions
    ? (def) = (local_definition)

      ## object visibility
    ! (visibility)

      ## keyframes
    @ (time_sec): _ (position_xyz) / (rotation_xyz) | (scale_xyz)
    @ (time_sec): _ (position_xyz) / (rotation_xyz) | (scale_xyz)
    @ ...

      ## vertices
    . (position_xyz) #vertex 0
    . (position_xyz) #vertex 1
    . ...

      ## lines
    - (vertex_a vertex_b) c (color) m (magnitude) w (line_width)
    - (va vb)
    - ...

      ## faces
    > (va vb vc) c (color) m (magnitude)
    > (va vb vc) 
    > ...
]

[ (object_2_name)
   ...
]