==============================================================
GLView version 3.01 10.12.96
3D OpenGL / Direct 3D Viewer for Windows NT 3.51-4.0 / 95
Copyright (C) 1994-1996 Holger Grahn
All Rights Reserved
==============================================================

For further information or to place an order please contact:

DISTRIBUTION USA:


USA:

EMD Enterprises
73 East Forrest Avenue
Suite 20
Shrewsbury, PA 17361
USA

Sales: (800) 8989-EMD
Support: (717) 235-4423
FAX: (717) 227-9746

email:  
Internet:   sales@emdent.com
            support@emdent.com
CompuServe: 74777,171   

WWW-SITE:   http://www.glview.com
Main EMD Site:  http://www.emdent.com

CompuServe Support Forum:   GO GLVIEW


DISTRIBUTION for Germany:

MKC SOFTWARE
Hasselbusch 71
24558 Henstedt- Ulzburg
Germany

Fax : +49-4193-969420
Email: sales@mkcsoft.com
Compuserve: 101326.2466@compuserve.com
WWW: http://www.mkcsoft.com




README.TXT

Evaluation and Registration
===========================
This is not free software. You are hereby licensed to use this software 
for evaluation purposes without charge for a period of 30 days. 
The demonstration version will expire after the evaluation period.
If you use this software after the 30 day evaluation period a registration
fee is required. See license.txt and order.txt for more information.


System Requirements
===================
Open GL Version
    - Microsoft WINDOWS NT 3.51 / 4.0
    - OpenGL compatible Display.
    - wininet.dll + urlcache.dll Internet DLL (supplied)

        or 

    - Microsoft Windows 95
    - OpenGL librarys (opengl32.dll, glu32.dll) for Windows 95
    - wininet.dll + urlcache.dll Internet DLL (supplied)

Direct 3D Version
    - Microsoft Windows 95
	- Direct X2 or Direct X3 Run-time  (includes Direct 3D)
    - wininet.dll + urlcache.dll Internet DLL (supplied)

		or 

    - Microsoft WINDOWS NT 4.0
	- Direct X 2 Windows NT Beta Run-time (on August 96 MSDN Win32T SDK CD)
    - wininet.dll + urlcache.dll Internet DLL (supplied)
	 (Windows 3.5 or 3.51 does *not* support Direct X)



Installation 
============
Installation of Demo Version from ZIP file (glview.zip):
Unzip the GLVIEW.zip file to a new directory on the hardisc. A program like WinZip 6.0 supporting 
long file names is recommended.

For automatic unzipping of gzipped files copy GNU gzip.exe in a directory of the path.

For Windows95 copy the OpenGL librarys into the Windows system directory or into the GLView directory.

Installation with installation program :
Start setup.exe from the first installation disk or from the DISK1 directory
of the CD-Rom distribution

The Direct X 3 Runtime can be downloaded from 
http://www.microsoft.com/mediadev/sdks/isdk.htm
	as 
http://www.microsoft.com/gamesdev/gsdk/directx.zip



Startup
=======

    glview.exe

Open GL Specific:
=================
Starts glview with a default OpenGL pixel format mode (Double-buffer, RGB)

    glview.exe /x

Starts GLView without GL-initialization, first action should be to setup Pixelformat using menu Options->
Pixel Format -> Set.

GLView automatically use OpenGL acellerator hardware like graphics boards equipped with a 3DLabs
GLint chip.

Direct X:
=========
The Direct X driver can be choosen using the Options->Direct 3D Dialog.
The driver settings will be changed on program exit.
GLView can be flipped to fullscreen using the Options->Fullscreen Menu command.
Fullscreen mode can be terminated by pressing <ESCAPE> once or by popping up the
Options menu again using ALT-O.



A 3D file or a WWW-VRML-url can be specified on the commandline.

Please create and configure a network caching directory in WWW->Options->cache directory on a filesystem
supporting long filenames.
Note that you can remove any contents from this directory, after loading a bunch of scenes.
GLView will not free files from the cache automatically.

For viewing HTML URLs the path to your WWW Browser must also be configured.

You can manually associate GLView with 3D file extensions (e.g. wrl, 3dv) using 
the "Options->Register file types" command.

For slow machines turn on the following options in the Config->options dialog:
    "degrade during move" & degrade style "bounding boxes"
    initial window size x 320 y 240 (or larger)

If the cursor is a busy symbol, the texture icon can still be depressed to turn off
texture mapping. The escape key will first disable animation, and secondly texture mapping.

Support questions regarding the hardware support of Matrox graphics cards should
be send to Matrox directly, once Windows 95 drivers are available from Matrox 
GLView can be adapted to properly use the right pixelformts.




GLView is availabe as
=====================
- commercial software on 3.5" disks + manual + more examples. 

- customized redistribution executable versions for hard or software vendors

- Sourcecode

- GLView classes as a class library
  supporting a highlevel MFC GLView View class and lowerlevel 
  graphical object, attributes and operation classes
  for integration in other applications

GLView has been licensed by Siemens Nixdorf AG for bundling with Celsius Pentium Pro OpenGL Workstations.


Credits
=======

This software is based in part on the work of the Independent JPEG Group.

Portions of this software are based in part on the VRMLScript Interpreter
written by Silicon Graphics, Inc., Mountain View, California, USA.



Fileformats
===========
GLView supports VRML 2.0,
GLView fully supports VRML 1.0 files with several extensions. (Please see VRML section.)

GLView supports also a own fileformat with extension 3dv.
A short description of this file format is supplied in file readme.txt.

Geo format files (like supplied with Intel 3DR) are supported for import and export.

POV object scripts containing smooth_triangles can be exported and 
support for DXF-Input has been implemented.  

Single rgb,dib,bmp,gif,tga or jpeg image files are read in as a single textured, rotatable polygon.

Raw files, containing a triangle per line can be imported and exported. 
On import the triangles are automatically converted to a smooth object.

STL files, containing triangles with facet normals can be exported. 

A VRML file can be saved, any comments in the original file are lost. Please use info
nodes for persistent annotations.

Single object VRML Files (extension wrl) can be exported after the TOOLS->Combine command has been used. 
GLView will then write a IndexedFaceSet with
coordinate, vertex normal, vertex color (as Material) and vertex parameter (TextureCoordinate2)
information. If a triangulated face set is needed, use the Tools->Triangulate command for
conversion.

Support for import of Wavefront obj files with polygons (f) has been integrated.

Texture files can be a 24 Bit rgb or dib/bmp images.
Additional formats are JPEG,GIF,TARGA.

GLView can render an arbitrary scene to a screen resolution independent BMP file.


On Import there is no check for valid fileformats.

WCVT2POV A good Windows 3D File converter program (including 3DS ==> VRML) can be found on:
    http://www.europa.com/~keithr/




Files
=====
GLVIEW.EXE      executable
GLVIEW.HLP      help file
readme.txt      readme file
order.txt       Order form
licencse.txt    License agreement
whatsnew.txt    History
GLViewNodes.html    GLView VRML extensions
file_id.diz     description
*.3dv           GLView native format 3D Data sets
*.geo           3D Data sets
*.rgb           SGI rgb texture image 
*.dib,*.bmp     texture image files, can also be used as "3d" data-set
*.gif,*.tga,*.jpg          "
*.ppm	        		   "
*.3dm           Material file
*.obj           Wavefront data files
*.stl           STL triangle format
*.raw           RAW 3D-Triangle format
*.wrl           VRML 3D Scene description 
*.vrml            "
*.iv            SGI OpenInventor files, GLView only support the ascii version
*.ext.gz        gzip compressed files, for automatic unzipping gzip.exe must be in the path.
*.vrl,*.url     a small text file containing a reference to a WWW url (normally a VRML file)
                format currently incompatible with Windows 95 Internet Explorer URL files.



VRML
====
GLView supports VRML 2.0 and VRML 1.0 with several extensions.

GLView can directly acess WWW VRML files without using a WWW Browser.

For using GLView with a WWW Browser, add GLView as a helper application.

Example for Netscape:

Inside Netscape : 
Select the "Options/Preferences" menu item.
Select the "Helper Applications" item in the pulldown.
Click the "New Type" button.
In the Configure New Mime type dialog enter:
    For Mime Type:  x-world
    For Mime Subtype:   x-vrml
In the "Extensions" field enter: wrl,wrl.gz,vrml,wrz

In the "Action" group box click "Launch Application"
In the text entry field enter the full GLView path.

Another option is to save a link to a VRML location inside Netscape 
to the clipboard using 
    Right Mouse Button -> "Copy this link location".

In GLView in the "WWW->Open URL-> url field" or in the url tool bar the 
link can be pasted with <Control> v. GLView is than able to resolve relative
WWWInline nodes to the URL for browsers other than Netscape.

Some WWW references for VRML files are built into GLView. The supplied
url files (vrl extension) are pointing to some interesting, medium complex VRML files. 

If the mouse is dragged over the scenes, GLView searches for Hot-Links (WWWAnchor Nodes).
If a hot-link is displayed, a double-click with the left mouse button will execute the link.
Possible actions are : Jumping to a new camera position, jumping to a new VRML scene, or
spawning the WEB-Browser program specified in the WWW->Options dialog.

VRML 2.0 specific notes
=======================

TouchSensors are currently treated like Anchors, if the mouse moves above a detected
touchable object, the status line displays "touch". A double click will activate
the touch sensor. All touch sensor at the same node level are activated.


Supported Nodes
===============

+ supported
- not supported
- D3D not supported in D3D Version
* partly 

Grouping nodes
 Anchor 		+
 Billboard 		*
 Collision 		-
 Group 			+
 Transform 		+

Special Groups
 Inline 		+
 LOD 			+
 Switch 		+

Common Nodes
 AudioClip 		-
 DirectionalLight +		(- D3D)
 PointLight 	  +		(- D3D)
 Script 		  +
 Shape 			  +
 Sound 			  -
 SpotLight 		  +		(- D3D)
 WorldInfo 		  +

Sensors

  CylinderSensor  -
  PlaneSensor 	  -
  ProximitySensor +
  SphereSensor 	  -
  TimeSensor 	  +
  TouchSensor 	  +
  VisibilitySensor -

 Geometry

  Box 			  +
  Cone 			  +
  Cylinder 		  +
  ElevationGrid   +
  Extrusion 	  +*
  IndexedFaceSet  +
  IndexedLineSet  +
  PointSet 		  -
  Sphere 		  +
  Text 			  +*

 Geometric Properties

  Color 		  +
  Coordinate 	  +
  Normal 		  +
  TextureCoordinate + 
 
 Appearance

  Appearance 		+
  FontStyle 		+	
						attributes like leftToRight or topToBottom are ignored

  ImageTexture 		+	
						all GLView texture formats supported 
						
  Material 			+
  MovieTexture 		-
  PixelTexture 		+	(- D3D)
  TextureTransform 	+

 Interpolators 

  ColorInterpolator  +	  (RGB mode)
  CoordinateInterpolator +
  NormalInterpolator 	-
  OrientationInterpolator + 
  PositionInterpolator	+ 		
  ScalarInterpolator 	+

Bindable Nodes

  Background 			+ (including background textures + color gradients) (D3D single skyColor only)
  Fog 					-
  NavigationInfo 		+
  Viewpoint				+


Script Node
===========
The script language is vrmlscript, a language similar to JavaScript.
The interpreter is based on the SGI sample vrmlscript interpreter and has
several limitations according to the full VRML Script reference.
Basic scripting works fine, more advanced features like accessing the browser object
or other nodes or objects are currently not supported.
Only the protocol "vrmlscript:" is recognized.


PROTO and EXTERNPROTO are implemented,
If possible GLView tries to share nodes between several Proto instances.

PROTOS can contains scripts or other PROTOS.

The Direct 3D Version currently does not support triangulation of non convex polygons.
This has effects on some IndexedFaceSets or Text Nodes.
Also the Direct 3D Version currently lacks support for color per face.  
ColorPerVertex is supported using the Direct 3D RGB-Emulation driver. GLView treats objects
with color per vertex as unlit.

The Tree Editor allows browsing of VRML 2 graphcs including inspecting of
ROUTE, Scripts and Proto nodes.
At the top-level all Protos and Routes of the scene are shown.
Nodes must be double clicked to view fields with non default values, to see all fields
the menu function Node->Expand all fields must be used.

After Tree Editor changes a new VRML 2.0 file could be written.
The write out of PROTO instances, PROTOS and script is currently not correct,
and needs manual editing of the resulting ascii file.

Specific Route information:

A script function is executed as soon the script node receives an eventIn.
An existing eventsProcessed will not be called, but an initialized or shutdown
script function. An eventOut from a script functions will be send imideately on assignment
to the eventOut field, and not at the end of the script funtion.

In the current implementation TouchSensors touchTime event is fully supported, the other
eventOut fields not.




VRML 1.0 specific notes
=======================
The VRML file format specification can be found on
    http://www.wired.com

Good WWW starting points are :
    http://sdsc.edu/vrml/worlds.html
    http://www.ocnus.com/models/

GLView defaults to Gouraud-Shading for VRML scenes. Initial texture mode and texture loading 
depends on "WWW->Options->texture loading"

Note, some files with extension wrl are not VRML 1.0 files, because they
contain other custom nodes or some unsupported Open Inventor nodes. 
GLView supports a bunch of Inventor nodes like QuadMesh, TriangleStrip, FaceSet, BaseColor,
Label ....
Other unsupported nodes are ignored or are causing the reading to stop.

Inventor files can be converted to VRML using a tool like IvToVrml. A related tool
on SGI Workstations is ivQuick which optimizes Inventor scenes and ivcat which translates binary
IV files to the ascii version, which GLView may be able to read.

Some GLView wrl files will not render on other VRML browsers, because of custom GLView nodes.

For material bindings "per vertex indexed" "per face"  "per face indexed" the diffuse (or base color)
channel (if of the material is used. If the emissive color channel supplies more values than the diffuse
channel, the emissive colors are used for the local colors. Scenes based on emissive materials can be
rendered using "Render->non lighted".

Material 0 ist set as a default for the primitive.

Extensions:
for GLView node extensions please see file GLViewNodes.txt


VRML Tree Editor
================
Using the "Tools->Tree Editor" command the VRML scene tree can be examined and/or edited.
Double-Clicking on a icon displays lower level information.
Nodes can be dragged and dropped around, or can be cut/copied/pasted using the edit menu.
Nodes can be pasted in from file or written to file.

GLView automatically resolves DEF/USE references and duplicate node names.
Paste pastes a link to the node referenced by a copy. Its equivalent to writing
USE node in a VRML ascii file.

A full copy, with all DEF/USE references local can be achieved by writing the node to a
temporary file. This file can be pasted into the tree using the "Node->Read" command.

Unknown nodes with proper field definitions can be edited as well.

Single value fields can be edited using the Field->Edit command.


Current Limitations:
No Edit of SFBitmask, SFImage fields, 
No Loop Detection on Drag and Drop and Cut & Paste,
If you produce structures like a->b->a GLView will hang.

After node renaming or auto node naming the names of other displayed DEF/USE reference node are not
updated automatically, use View->Refresh instead.


To be done :
===========

Png textures

sorted transparency

GLView supports emissive only materials, but currently dosnt disable lighting automatically.
Use render "Mode->non lighted" as workaround.

Homespace builder files containg materials using only the emissive channel, the diffuse color
is black. This is no problem, the best way to view them is render->non lighted. Only the
bounding-box / wireframe displaymode will then render the edges in black, but black is also
the default window background color, so the workaround is to change the background color to
something different from black.


Not planned
===========
VRML files with Macintosh end of line (\r) character

Support for the crease angle in ShapeHints, GLView will smooth all edges between
faces with some shared vertex information. 
Workaround :
     Turn on flat-shading for scenes depending on this value.

Flat shading can be force in VRML files by using a PER_FACE normal binding in VRML 1.0
or by adding 
    vertexPerNormal FALSE
to the Nodes supporting this field in VRML 2.0.



Direct 3D Version
=================
This is a first beta with Direct 3D support.
Not all features are implemented or could not be implemented on top of Direct 3d.

Polygons must currently be concave, no is triangualation currently supported.
No support for per face color. 
Color per vertex is supported in the Direct 3D RGB Emualtion driver. 
Lighting is ignored on a object with color per vertex.
Morphing works best with objects up to 2048 vertices (the limitation of the size of 
Direct 3d execute buffers.)

Window resizing is slow, because all Direct 3D objects has to be recreated.

GLView VRML Image is currently not supported.

Currently there is only one head light, support for VRML light sources will be added.


OpenGL Version
==============

If you enable 16 Bit z-buffer, rendering could look a bit strange.
Workaround: Enter an higher number into Camera-Viewpoints->znear (e.g. from 0.0001 to 1.0)

Matrox Graphics boards can do OpenGL acceleration only in some display modes and with a 16 Bit
Z-buffer and the right amount of Memory installed.

Try to enable a 16-Zbuffer by enabling "Options->Config->16 Bit z-buffer" and restart GLView.
Verify that "Options->GL Info" shows the Matrox driver instead of the Microsoft driver.
If this is not working  try to run GLView with the /x parameter and choose a GL Pixelformat via 
Options->Pixelformat->set depthBits 16 + double-buffer. 

For some data files backface culling must be disabled via Rendering->Options->backface cull.  
For DXF, RAW and GEO files this is done automatically. 
If the picture is still very dark (e.g. with RAW or GEO files) flip the computed normals  
of the object using Rendering->Options->flip normals 

Not all custom texture parameter functions available in the dialog Texture->Parameters are fully
implemented.

Rendering with fog enabled seems to be strange, because for a object in the center fog is applied on 
both sides in front and in the back of the viewer. This seems to be an OpenGL problem. 

Some 2D DXF primitives are not converted or not converted correctly and objects with a EKS 
transformation are not transformed correctly. In order to do operations on a DXF-File after import, the 
dataset stored in a display tree must be converted to one single object using the Tools->Combine 
command. 
DXF-Files with optimal import result should contain 3d meshes, 3d polyface meshes (options or the 
polyline entity) or 3d face primitives. 
DXF files can currently not be saved as VRML with Layer and object information preserved.
But they can be saved as one large IndexedFaceSet primitive with local colors applied.

If VRML scene lights are enabled, scenes are often to bright. (e.g. WCVT2POV put *several*
point lights in the scene.) The options are to darken all lights by a factor or to disable
VRML scene lights. This can be done using the WWW->Options dialog.

If the WALK speed seems to be strange, adapt it to the scene by change the value 
"Camera->Viewpoints->distance" or "Camera->Viewpoints->speed".

For authors I recommend to explicitely specify focalDistance nearDistance and farDistance for
supplied VRML camera nodes.

The default setting for Walk and pan is "locked to ground plane", movement is parallel to
the ground plane. If you want to walk directly in the viewing direction disable check 
"Camera->Relative Move".   If the scene has a camera with something like a 45 degree look 
on some scene you will need to check this option, if you want to approach the object.


Quick Tour
==========
Start the program
drag around with the mouse 
(this is camera->rotate mode)


    camera->reset 

will bring back the default view


Rendering
=========
try render menu:
    "render->wireframe"         or toolbar button
    "render->flat"                    "
    "render->gouraud"                 "
    "render->vertices"
    "render->bounding box"

..
now once again

    render>wireframe
    & render->lighted   you get a lighted wireframe display

Go back to
    
    "render->gouraud" 

mode.

Material
========

try the Material menu

    material->load  

choose a predefined material from the list box

    material ->edit
    click with the mouse in the diffuse entry field,
    now press EDIT to edit the diffuse color using the Windows color dialog box
    choose a color , Exit & Apply

To change the background color use
    material->Background


Texture Mapping
===============

To load a texture use

    material->Load texture

choose a texture e.g. brick.rgb

To change OpenGL texture mapping parameters

    material->Texture Options

Enter into the "scale" edit field:

    3 3 3 <Enter>

The texture uvw parameters are scaled by (3,3,3) resulting in a smaller texture image.

    0.3 0.3 0.3 <Enter>

will make the texture larger.

Close the dialog using <Escape> or "Close".  

Try the filtering options only if you have time or a hardware acellerator

Switch off texture mapping using 
    Render->textured    or toolbar button


Special effects
===============

Deforming
=========
On a Standard 3DV model (e.g. ronny the default data set)
Say 
    Tools->deform->sphere
    enable the check boxes for enable and drag + Press "Apply"

    drag around with the mouse, the model should deform to a imaginery sphere.
    Use shift + drag to drag in the z-direction

    If you do no see an effect, change the radius edit field to higher numbers (negative
    numbers (e.g. -0.9 )are also working, the points on the surface are moving away from
    the sphere).



Morphing
========
On a standard objecttype data sets (e.g. ronny.3dv, cow.3dv, ...)
Open
    Tools->Morph
    "OK"

The vertices of the object are dynamically interpolated into a sphere.

Open 
    Tools->Morph
again to change morph options.

Use the t0 t1 sliders to select an interestinng sub-range of the animation.
Choose a different Morph Type like 
    "Cylinder", "Box", "Cone" ...
    + press "Apply"


Note that the default alignment axis of the morph is the z-Axis == up, 
but standard objects are aligned y-axis up.

As an example on how to apply a custom morph axis, see the Morphed*.wrl
GLView VRML examples.

You can stop the animation by toggling the play toolbar button.

Its possible to save the intermediate shapes to VRML or 3DV.
Intermediates Shapes of the deform process, are currently not available for save.

Advanced:
Some types for image warping is also possible using the morph node. Creating
a VRML file with a fine meshed surface. E.g. by using GLView->File->New Object
create a fine tesselated plane, apply your texture and include a morph node.
Example HeidiMorph.wrl




To create a spinning logo :
==========================

    "File->NewFontLogo"


    enter the logo text.

    "ok"

a 3D logo should now come up.

Press "Camera->Spin" to let the logo spinning.

If you want it textured check the "Texture Parameters" check box in the dialog, and load
a texture like brick.rgb with Material->LoadTexture

Its possible to create some funny symbols by using addtional TrueType fonts from
CorelDraw or similar programs, and using symbol fonts like windings.

Try also to use different fonts, or font styles like Bold, Italic.

To create some symbols for custom vrml files, choose a wingdings fonts and lookup a
character code e.g. by using the Windows->Accessories->Character Map program.




To create an 3D Landscape from Image
====================================
Press "File->New Object"
select "Heightfield from Image"
select bitmap image as source for landscape.

Use Tools->Tree editor to change height scaling.



Basic navigation:
================
For a "one object" data file or any scene after Camera->Reset has been applied
use Camera->Orbit mode
    Mouse Movements orbits or spins the viewer around the object
    Control + horizontal movement zooms
    Shift + horizontal movement rolls , 

    Cursor keys are also orbiting around the object
    Page Up+Down are zooming

    If the mouse is still pressed but no longer moved, the last orbit is 
    repeated automatically. Movement is always relative to the point where the mouse
    first was pressed.


For a "scene" data file like a room or house etc.
use Camera->Walk mode
    vertical mouse movements are moving in and out the scene
    horizontal mouse movements are turning the view direction to the left or right
    Shift + vertical mouse movements are turning the view direction to up or downt
    Control +  mouse movements are moving left/right up/down

    Cursor keys are also moving in/out / moving left/right 
    <Control>Cursor keys are also turning up/down turning left/right
    <Shift> Cursor keys are also orbiting around the current camera target
    Page Up+Down are moving up/down


All mouse movements are repeated after a while, movement is relative to the starting point, 
where the mouse first was pressed.


Internet Access
===============
If you have direct Internet access, GLView can load Internet VRML + Texture files.

Choose an Internet VRML url to open:
    a) choose or enter a url using WWW->Open Url
    b) drag a GLView vrl/url file from the file manager into the GLView Window
    c) find a VRML (wrl extension) link in your Web-Browser
        copy the link. (Netscape->Right Mouse Button->Copy this link location)
       + paste it into the url bar location field

The "Stop" Button will be enabled, the logo animation will start. After a while 
a Receiving message ... will appear. Once the file is completely retreived, GLView
will display. During Retreival you can continue, walking the current scene.
To abort network operation press the stop button. It might take a while, until
the actual operation will be finished.
GLView will place all retreived files into the GLView cache directory.
You need to manually clean up this directory.



Performance tips
================
General :
use a small window size (a default (small) size can be specified in Options->Config)
use a small dataset
use a graphics card with fast pixel transfer.

make sure Rendering -> Options -> Backface culling is checked (might be disabled by GLVIEW)
(for VRML files a ShapeHints node in the file will have precedence )

For DXF-Files use the Tools->Combine command

Texture-mapping is quite fast in non-lighted mode : select Render->Non lighted
If accepatable disable Texture Options->perspective correction

Use wireframe, or lighted vertices modes for complex data set to adjust camera,
than switch to gouraud or enable "Options->Config->degrade during move" with 
style set to bounding box.

Enable "Render->Style->Vertex->Drawstyle" only for data sets with few vertices.

Try to check options->build_tristrips before loading a file.

Try to disable VRML scene lights using the www->options dialog and/or 
try the Tools->Combine command,eventually with checking Options->Config->build triangle strips
before.

Textures image files could be prescaled to a power of two, and should not be to large.
eg. 128*128 might be enough.

If a scene is to slow with texture mapping enabled, quick disable texture mapping using
the <escape> key.



How to find more data
=====================
Internet: there are different sites with 3D data-sets,
    see also the VRML references above.

Very good 3D Models can be found and purchased from Viewpoint Data Labs.

Compuserve Forums:
    COMANIM: some DXF / Viewpoint datasets
    GRAPHDEV: RAW /OBJ/DXF + Tools for creating raw files e.g. BlobSculptor

for size reasons the evaluation version contains only a few small to modest size models.



3DV-Fileformat
==============
3dv files are containing one object
The 3 object types of main interest are 

    - Shell     a polyhedral object
    - ShellIndexed a polyhedral object with more level of inderection and group information
    - Mesh      a quadrilateral Grid surface

All lists and objects are enclosed with { and }.

The basic information in each object is the vertex field,
simply a list of 3d points.
Optional fields with similar structure are
    vertex_parameters : u,v,w  texture coordinates (parameters)
    vertex_normals  :  a normal for each vertex, used for smooth shading
    vertex_colors   : a r,g,b color value for each vertex
        
for the Shell and ShellIndexed primitives the faces field describes the
list of faces (or the individual polygons).
the format for a face is

0:  vertexcnt of face
1..n:   vertex number, (starting with 0)

All face are now concatenated together.
.E.g a tringle face using vertex 0,1,2 would be stored as
        3 0 1 2
.

A face with vertex cnt of 2 describes a single edge,
A face with vertex cnt 0 or 1 is ignored,
but all vertics still can be made visible by using the "Vertices" Renderstyle.
A face can have following faces with a negative vertexcnt, this indicates a hole face.
If such a file is imported you need to call "Tools->Triangulate" to display the object
properly.

For faces the optional fields
    face_normal : a normal for each face, used for flat shading
    face_color  : a r,g,b color value for each face 
            (vertex colors have precedence if enabled)



Example of cube, with a color assigned to each face
; 3DV Version 1.0 Object
 shell {
    vertex {( -0.5 -0.5 -0.5)( 0.5 -0.5 -0.5) ( -0.5 0.5 -0.5) ( 0.5 0.5 -0.5) 
   ( -0.5 -0.5 0.5) ( 0.5 -0.5 0.5) ( -0.5 0.5 0.5) ( 0.5 0.5 0.5)}
    faces {
    4 0 2 3 1   ; first face
    4 1 3 7 5   ; second face ...
    4 5 7 6 4
    4 6 2 0 4
    4 2 6 7 3
    4 0 1 5 4}
    face_colors {( 1 1 0)( 0.5 1 0.4) ( 0 1 1) ( 1 0.647059 0) 
   ( 0 0 0) ( 0 0 1)}}


The vertex indices in the facelist of a Shell are indexing directly into
the vertex* arrays.

For the ShellIndex object these facelist indices are refering into the
verts field.
The verts are a array of logical vertices.
The structure of a vert is
    index into vertex table
    index into vertex normal table
    index into vertex color table
    index into vertex parameter table

This level of indirection allows to have at a common xyz location verts with
different normal/parameter values.


A Mesh needs no explicit face infomation, because all face are forming a grid.

Example :

; 3DV Version 1.0 Object

 mesh {
    rows  10
    cols  20
   vertex { (x y z) ... 10*20 times }
}   

The corresponding C like declaration would be
struct Point {
    float x,y,z;
}
int rows=10;
iint cols=20;
Point mesh[rows*cols];



RAW fileformat
==============
each line describes a triangle with explicit coordinates

x1 y1 z1 x2 y2 z2 x3 y3 z3

GEO fileformat
==============
Header :
#of verts #of faces scalefactor(1)
Vertex table :  length # of verts 
    x y z                   <== coordinate of vert i
Face table : length # of faces 
    facelength vertexindices for faced  


Note: vertex indices in face table are starting from 1


facetn facent


