94 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<HTML>
 | 
						|
<HEAD>
 | 
						|
<TITLE>PVVMUD - scene file format</TITLE>
 | 
						|
<LINK REL=STYLESHEET HREF="/pvvmud/pvvmud.css"  TYPE="text/css">
 | 
						|
</HEAD>
 | 
						|
<BODY>
 | 
						|
<H1>Scene file format</H1>
 | 
						|
<PRE>
 | 
						|
Status          : suggestion
 | 
						|
Implementations : none
 | 
						|
RCS info        : $Id: scenefileformat.html,v 2.2 1999/10/15 12:47:24 andersr Exp $
 | 
						|
</PRE>
 | 
						|
<P>This file format descibe a static scene of 3d objects. Using
 | 
						|
keyframes to generate simple animations of transformations.
 | 
						|
Allows to include other scenes files as nodes.</P>
 | 
						|
 | 
						|
<H3>Missing items</H3>
 | 
						|
<UL>
 | 
						|
  <LI>Fog!
 | 
						|
  <LI>LOD! Don't know if this is the correct way of doing it?
 | 
						|
</UL>
 | 
						|
 | 
						|
<H2>Logical file structure</H2>
 | 
						|
<TABLE>
 | 
						|
<TR><TH></TH><TH></TH></TR>
 | 
						|
<TR><TD VALIGN=top><A NAME="SCENEFILE">scene file</TD><TD>= Scene head + Assembly list 
 | 
						|
<TR><TD VALIGN=top><A NAME="SCENEHEAD">Scene head</TD><TD>= (Version)
 | 
						|
<TR><TD VALIGN=top><A NAME="ASSEMBLYLIST">Assembly list</TD><TD>= { Assembly }
 | 
						|
<TR><TD VALIGN=top><A NAME="ASSEMBLY">Assembly</TD><TD>= (Name)+ (Visibility range) + [ Tranformation |
 | 
						|
    Animation list ] + (Visual) + (Light) + (Child) 
 | 
						|
<TR><TD VALIGN=top><A NAME="VISIBILITYRANGE">Visibility range</TD><TD>= (Min range) + (Max range)
 | 
						|
<TR><TD VALIGN=top><A NAME="ANIMATIONLIST">Animation list</TD><TD>= {Animation}
 | 
						|
<TR><TD VALIGN=top><A NAME="ANIMATION">Animation</TD><TD>= (Name) +
 | 
						|
    Length + Repeat + {KeyFrame}
 | 
						|
<TR><TD VALIGN=top><A NAME="KEYFRAME">KeyFrame</TD><TD>= (Time) + Transformation
 | 
						|
<TR><TD VALIGN=top><A NAME="TRANSFORMATION">Transformation</TD><TD>=	
 | 
						|
    (Translation) + (Rotation) 
 | 
						|
<TR><TD VALIGN=top><A NAME="ROTATION">Rotation</TD><TD>= * Rotation = rotx roty rotz; *
 | 
						|
<TR><TD VALIGN=top><A NAME="TRANSLATION">Translation</TD><TD>= * Translation = xx yy zz ; * 
 | 
						|
<TR><TD VALIGN=top><A NAME="VISUAL">Visual</TD><TD>= [ Geometry | Scene ]
 | 
						|
<TR><TD VALIGN=top><A NAME="LIGHT">Light</TD><TD>= * Don't know how this look yet *
 | 
						|
<TR><TD VALIGN=top><A NAME="CHILD">Child</TD><TD>= Assembly list
 | 
						|
<TR><TD VALIGN=top><A NAME="GEOMETRY">Geometry</TD><TD>= * Geometry = "Geofile"; *
 | 
						|
<TR><TD VALIGN=top><A NAME="SCENE">Scene</TD><TD>= * Scene = "Scenefile"; *
 | 
						|
<TR><TD VALIGN=top><A NAME="NAME">Name</TD><TD>= * Name that identify element *
 | 
						|
</TABLE>
 | 
						|
 | 
						|
<H2>Example:</H2>
 | 
						|
<PRE>
 | 
						|
Scene(Version=1)
 | 
						|
 | 
						|
Assembly {
 | 
						|
  Visual {
 | 
						|
    Geometry = "Terrain";
 | 
						|
  }
 | 
						|
}
 | 
						|
Assembly {
 | 
						|
  Transformation {
 | 
						|
    Translation = 200.0 100.0 0.0;
 | 
						|
    Rotation = 45.0 0.0 0.0;
 | 
						|
  }
 | 
						|
  Visual {
 | 
						|
    Geometry = "Tree";
 | 
						|
  }
 | 
						|
  Assembly(Name = "Bird nest";Max=10.0) {
 | 
						|
    Transformation {
 | 
						|
      Translation = 0.7 0.3 9.0;
 | 
						|
    }
 | 
						|
    Visual {
 | 
						|
      Scene = "Bird_Nest";
 | 
						|
    }
 | 
						|
  }
 | 
						|
  Assembly ( Name = "Moving branch" ) {
 | 
						|
    Animation ( Name = "default"; Time = 20; Repeat = TRUE ) {
 | 
						|
      KeyFrame ( Time = 0 ){
 | 
						|
        Rotation = 0.0 0.0 0.0;
 | 
						|
      }
 | 
						|
      KeyFrame ( Time = 5 ){
 | 
						|
        Rotation = 5.0 0.0 0.0;
 | 
						|
      }
 | 
						|
      KeyFrame {
 | 
						|
        Rotation = 0.0 0.0 0.0;
 | 
						|
      }
 | 
						|
    }
 | 
						|
    Visual {
 | 
						|
      Geometry = "Branch";
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
</PRE>
 | 
						|
 | 
						|
</BODY>
 | 
						|
</HTML>
 |