This wiki is archived and useful information is being migrated to the main bzflag.org website

Difference between revisions of "DrawInfo"

From BZFlagWiki
Jump to: navigation, search
(mesh links)
m
Line 1: Line 1:
DrawInfo allows clients to render the [[Mesh|mesh]] object more efficiently through LODs (Levels of Detail).  Many associate drawinfo with the ability to create moving objects in a map.   
+
DrawInfo allows clients to render the [[mesh]] object more efficiently through LODs (Levels of Detail).  Many associate drawinfo with the ability to create moving objects in a map.   
 
==Code==
 
==Code==
 
The code must be added to the mesh object.
 
The code must be added to the mesh object.
Line 39: Line 39:
 
decorative=disables drawInfo in older clients
 
decorative=disables drawInfo in older clients
 
angvel=causes the mesh object to spin at the given rate in degrees per second
 
angvel=causes the mesh object to spin at the given rate in degrees per second
extents=
+
extents=''description''
sphere=
+
sphere=''description''
 
vertex=if defined within the drawInfo section, the vertices, normals, and texcoords will be used instead of those defined in the mesh
 
vertex=if defined within the drawInfo section, the vertices, normals, and texcoords will be used instead of those defined in the mesh
 
corner=(required)a point defined by a vertex, normal, and a texcoord
 
corner=(required)a point defined by a vertex, normal, and a texcoord
Line 46: Line 46:
 
lengthPerPixel=(required)distance from which the points will be rendered, 0 is close, .3 is about as far away as is needed  
 
lengthPerPixel=(required)distance from which the points will be rendered, 0 is close, .3 is about as far away as is needed  
 
matref=(required)material to use for the faces that follow it.
 
matref=(required)material to use for the faces that follow it.
points=
+
points=''description''
lines=
+
lines=''description''
lineloop=
+
lineloop=''description''
linestrip=
+
linestrip=''description''
 
tris=index numbers of corners that create triangles
 
tris=index numbers of corners that create triangles
 
tristrip=series of points that form a chain of triangles.
 
tristrip=series of points that form a chain of triangles.
Line 59: Line 59:
  
 
==Appearance==
 
==Appearance==
DrawInfo is only applied to existing [[Mesh|mesh]] objects.  If you look closely in Louman's Mystic Valley, shrubbery and trees will change in appearance slightly when viewed from about 200 units away.
+
DrawInfo is only applied to existing [[mesh]] objects.  If you look closely in Louman's Mystic Valley, shrubbery and trees will change in appearance slightly when viewed from about 200 units away.
  
 
==Editor Support==
 
==Editor Support==
Line 65: Line 65:
  
 
==History==
 
==History==
DrawInfo was only recently added (by trepan) and is rarely used for anything other than experimental and proof-of-concept maps.    Notable exceptions to this are: Louman's Mystic Valley, and Louman's Churchyard.
+
DrawInfo was only recently added (by trepan) and is rarely used for anything other than experimental and proof-of-concept maps.    Notable exceptions to this are Louman's "Mystic Valley" and "Churchyard" maps.

Revision as of 08:18, 17 September 2007

DrawInfo allows clients to render the mesh object more efficiently through LODs (Levels of Detail). Many associate drawinfo with the ability to create moving objects in a map.

Code

The code must be added to the mesh object.

 drawInfo
   dlist		      # display list for all material sets
   decorative		      # older clients with not see this mesh
   angvel <degrees/sec>       # rotation about initial Z axis
   extents <minX> <minY> <minZ> <maxX> <maxY> <maxZ>
   sphere <x> <y> <z> <radiusSquared>
   corner <v> <n> <t>	      (repeatable)
   vertex 0.0 0.0 0.0	      (repeatable)
   normal 0.0 0.0 0.0	      (repeatable)
   texcoord 0.0 0.0	      (repeatable)
   lod			      (repeatable)
     lengthPerPixel <value>
     matref <name>	      (repeatable)
       dlist		      # display list for this material set
       sphere <x> <y> <z> <radiusSquared>
       points	 0	      (repeatable)
       lines	 0 1	      (repeatable)
       lineloop  0 1	      (repeatable)
       linestrip 0 1	      (repeatable)
       tris	 0 1 2	      (repeatable)
       tristrip  0 1 2	      (repeatable)
       trifan	 0 1 2	      (repeatable)
       quads	 0 1 2 3      (repeatable)
       quadstrip 0 1 2 3      (repeatable)
       polygon	 0 1 2	      (repeatable)
     end  # matref
   end	  # lod
 end	  # drawInfo

Valid parameters for drawinfo are:

dlist (recommended) requests that the client use display lists to render the object
decorative disables drawInfo in older clients
angvel causes the mesh object to spin at the given rate in degrees per second
extents description
sphere description
vertex if defined within the drawInfo section, the vertices, normals, and texcoords will be used instead of those defined in the mesh
corner (required)a point defined by a vertex, normal, and a texcoord
lod (required)sections that determines which faces/points will be rendered from specific distances (lengthPerPixel)
lengthPerPixel (required)distance from which the points will be rendered, 0 is close, .3 is about as far away as is needed
matref (required)material to use for the faces that follow it.
points description
lines description
lineloop description
linestrip description
tris index numbers of corners that create triangles
tristrip series of points that form a chain of triangles.
trifan a series of points that create triangles that fan out from a single point. That point, usually in the center, is placed first in the series. Trifans are used only in pyramid and cone-shaped meshes.
quads points that create 4-sided mesh planes
quadstrip series of points that create a chain of 4-sided planes. Similarly to tristrips, the series zig-zags between the points, starting in the counter-clockwise direction.
polygon same as quads except for planes of more than 4 sides.


Appearance

DrawInfo is only applied to existing mesh objects. If you look closely in Louman's Mystic Valley, shrubbery and trees will change in appearance slightly when viewed from about 200 units away.

Editor Support

There is currently no support for drawInfo except for hand-editing

History

DrawInfo was only recently added (by trepan) and is rarely used for anything other than experimental and proof-of-concept maps. Notable exceptions to this are Louman's "Mystic Valley" and "Churchyard" maps.