-- Cube Model plugin --

PURPOSE:
To display 3D models (in .obj file format) inside of the transparent cube. 


ABOUT:
This plugin can display still/animated models. Some sample models are provided
in the sample folder. You might have to change the scale/position to see the
models properly.

Animated models are just a series of numbered files. Click on the first file
and set type to "animation" and the plugin should find the numbered pattern,
searching from right to left in the filenames.

Materials and face orderings are only loaded for the 1st file in an animation
(this is how 3D modelling programs should output data anyway).



SUPPORTED commands:
This plugin supports most of the specification for .obj files and associated
.mtl files. The commands that are not supported are probably too obscure to
actually be generated by any 3D modelling program (except maybe some of the
mapping commands).


List of supported commands for .obj files:

  v # # #
defines a vertex.
where arguments are taken in as floats.

  vt # #
defines a texture coordinate.
(only UV coordinates supported)

  vn # # #
defines a normal.
where arguments are taken in as floats.

  f #
  f #/#
  f #//#
  f #/#/#
defines a face.
where arguments are signed integers (negative are supported)

  fo
treated same as f

  p #
displays a point (equivalent to f with 1 argument)

  l # #
displays a line (equivalent to f with 2 arguments)

  mtllib # # # ...
arguments are filenames for material files to load
(can be either absolute or relative to the directory with the obj file) 

  usemtl #
argument is a string that points to a material in a loaded .mtl file via the mtllib command





List of commands supported/not supported for .mtl files:

  newmtl #
defines a new material
Subsequent commands will now define the properties of this material
default values that are assigned if not specified:
Ns 100
Ni 1
Ka 0.2 0.2 0.2
Kd 0.8 0.8 0.8
Ks 1.0 1.0 1.0
d 1
illum 2


  Ns #
shininess

  Ni #
optical depth (read in, but doesn't do anything at the moment)

  Ka # # #
ambient color

  Kd # # #
diffuse color

  Ks # # #
specular color

  d (or Tr)
transparency for material (affects ambient, diffuse, specular)

  illum #
0 (no lighting)
1 (lighting on, ambient on, diffuse on, no specular component of material)
2 (lighting on, ambient on, diffuse on, specular on)

  Map_Ka #
map a file as a texture instead of the ambient color and transparency
(currently reads in texture, but does not apply - use map_Kd instead)

  Map_Kd #
map a file as a texture instead of the diffuse color and transparency

  Map_Ks #
map a file as a texture instead of the specular color and transparency
(currently reads in texture, but does not apply - use map_Kd instead)

  Map_d #
map a black and white file to the transparency setting for texture maps

  Map_bump #
? (I have no idea what this is supposed to do, so it's not supported)
