Ŀ
 Name:    DATA FILE VIEWER                (C) RenderStar Technology BV. 
Ĵ
 Author:  Laurens J. Lapre                Version:   3.0   1994-01-31 
Ĵ
 RenderStar Technology BV, Keizersgracht 448                              
 1016 GD Amsterdam, the Netherlands                                       
 Fax (+31) 20 622 4939                                                    
Ĵ
 Email:   2:283/203.8 fidonet  'Lj Lapre' PCGnet   ljlapre@hacktic.nl  



Disclaimer :
 
This software is free and may be freely distributed, but is copyrighted by 
the company RenderStar Technology BV. This software is provided as is 
without any guarantees. The author and company assume no liability for 
damages, direct or consequential, which may result from the use of this 
software. The 'lviewer.exe' file may not be used as part of any commercial 
package without the explicit written consent of the author or company.


General :
 
This program is meant to be used together with the LPARSER program. It can 
read and display to the screen the default output.VOL files generated by 
the lparser.exe. Use it like this :

lparser lsys00
lviewer output

It can also be used to quick preview the ascii based RAW and RAY files. The 
ARE-24 POL and the 3D Studio 3DS binary files can also be viewed directly.

You will get some information about the loaded object and it will bring you 
into a standard VGA 640x480 16 color screen. Here you can rotate the object, 
zoom in/out and pan. For key usage see the Keys section. The lviewer can 
handle very large models. It has a simple hidden polygon solver. Forms with a 
lot of small polygons will 'hide' better. So try running the lparser with 
'-x ball' and try the other additional base objects.

The keys can be operated directly. You don't have to wait for the wire-frame 
redraw to finish in the main window but the side windows will have to be 
drawn once during startup. The 'speed' with which you can move through the 
model thus depends on the setting of your keybord repeat and the speed of 
your graphics board.

When you enter the view screen you will see a box surrounding the object and 
some additional elements like a cross and XYZ-axis. The additional 3 side 
views are drawn from the viewpoint of possitive z-axis, x-axis and y-axis 
respectively. When moving around through the model these views will help you 
orient yourself. 

The current up direction in the main viewer will be the lightblue line in 
the side views. The right direction will be darkblue, the front direction 
green. The small yellow ball is where you next location will be if you move 
the camera forward. The red circle is where you are at now. A 'reminder' of 
all this can be found in the bottom left of the main view window.

The lviewer.exe is a protected mode program using the royalty free Rational 
dos-extender (dos4gw.exe) supplied with Watcom. It needs a 386/387 or 486 
with 4meg ram.

Standard VGA screen grabbers can be used to grab the image from the screen.


Execute like this :
 
lviewer [options] [name]

examples :

lviewer output 		(takes .vol as default extension)
lviewer plant.vol
lviewer are24.pol
lviewer trice.raw
lviewer fract002.ray
lviewer bird.3ds


Formats can be :
 
- LPARSER/RenderStar output file with the VOL extension. 
	Described in the RenderStar Technical documentation.

- ARE-24/RenderStar temporary output file with the POL extension. 
	Generated as part of an ARE-24 rendering in AutoCad-12/ADS.

- 3D Studio/AutoDesk binary format with the .3DS extension.

- FracTint *.RAY files when saved in RAW format. One coordiante per line 
	format.	Select 3=RAW format and set BRIEF to YES. Format is like :

		x1 y1 z1
		x2 y2 z2
		x3 y3 z3

		x1 y1 z1
		x2 y2 z2
		x3 y3 z3
		etc.

- RAW formated ascii file. One triangle per line format.
	Format can be like :

		x1 y1 z1 x2 y2 z2 x3 y3 z3
		x1 y1 z1 x2 y2 z2 x3 y3 z3
		etc.

	Or like :

		NAME1
		x1 y1 z1 x2 y2 z2 x3 y3 z3
		x1 y1 z1 x2 y2 z2 x3 y3 z3
		NAME2
		x1 y1 z1 x2 y2 z2 x3 y3 z3
		etc.

	Each time a name identifier is found the color number will be 
	increased. Y and Z coordinates can be swapped with the -y option.


Options :
 
-y 	  	use the Y-axis as up vector for RAW files

Normally the Z-axis is treated as up vector. (This is always the case with 
VOL/POL/3DS files). With this option RAW files can be read in, which use the 
Y-axis as up vector.

-s 	  	run at 1024x768x16 SVGA mode
-v 	  	run at  800x600x16 SVGA mode

These modes will not be supported on all SVGA's. In this case use the default 
VGA 640x480x16 mode.

-c        	use color in side views

Normally the side views are drawn grey to allow you to see the position 
feedback elements more clearly. Setting this option will draw the side views 
in color. This is usefull for 'moving' through .RAY files.

-f        	come up with main view

The main view will be drawn directly when starting up. The side views will 
be skipped.


Keys 		General :
 
[Page Up/Down] 	These keys will allow you to zoom in and out with the cross 
as center. The zoom is in 2d. The camera doesn't change it's location or 
orientation in space. You will see the brown cone in the side views adjust at 
the same time. What's inside the cone is visible on the main window.

[Insert] 	Will scramble the drawing order of the data. This is usefull 
when viewing bigger models. It will also turn off hidden polygon. Will only 
work if there is still enough memory left free.

[Delete] 	This will do a quick hidden polygon based on the painters 
algorithm. It makes the form more visible but the solution is not perfect. 
Will only work if there is still enough memory left free.

[Home] 		This will bring up the starting configuration again in case 
you get 'lost' and want to start afresh. It will also reset all viewing 
parameters and toggles to their default start up value.

[F1] 		This will write information about the model (bounding box) 
and specifics of the current camera to the file 'info.txt' in the current 
directory.

[F2] 		This will write the current viewport in RenderStar rc1 format 
in the file 'snapshot.rc1'.

[Escape] 	Exit and back to DOS.


Keys 		Toggles :
 
[Z] 		This will toggle the Z-lock. If it's on the Z-axis will 
always stay vertical and camera twist won't work. When the Z-lock it's off 
you have full rotational control. The Z-axis will be drawn in yellow when 
the Z-lock is active. By default the Z-lock is on.

[P] 		This will toggle between drawing in polygons (default) and 
drawing only one vertex per polygon. This can be usefull when working with 
FracTint RAY files.

[C] 		This will toggle between geometry and geometry with 
additional viewing elements. Default is with additional viewing elements.

[Q] 		This key in the lviewer allows you to cycle the main view 
through all possible viewer setups. 


Keys 		Changing model orientation :
 
[Cursor keys] 	Rotate the model in the direction of the arrows around the 
center of the model. The up/down keys will rotate the model round the 
horizontal direction. The left/right keys will rotate the model around the 
vertical direction. 


Keys 		Changing camera orientation :
 
[Cntrl keys] 	This rotates the camera round the observer in the directions 
of the arrows. The up/down keys will rotate the camera round the horizontal 
direction. The left/right keys will rotate the camera around the vertical 
direction. 

[Alt keys] 	Twist (roll) the camera counter-clockwise or clockwise.


Keys 		Changing camera location :
 
[Numpad keys] 	Move the camera in the direction of the arrows. The up/down 
keys will move the camera along the vertical direction along the light blue 
line in the side views. The left/right keys will move the camera across the 
horizon in the direction of the dark blue line.

[Numpad + -] 	Move the camera forward into the model or backward from the 
model along the green line. The yellow ball is you next forward location.

[Numpad * /] 	Increment and decrement the stepsize of the camera movement. 
The position of the yellow ball will reflect the current stepsize


Thanks to :
 
C.J.van der Mark [2:283/203.11 fidonet, 9:580/203.11 PCGnet] for LV2POVID, 
testing all versions and feedback.

Steve Anger for his 3DS reader/parser from 3ds2pov.

BBS Bennekom [2:283/203 fidonet, 9:580/203 PCGnet] for acting as go-between.
 

