-----------------------------------------------------------------------------
                            Power Render 2.3
                             Trial Version

                                June 16, 1997
                       Copyright 1997 Egerter Software

-----------------------------------------------------------------------------


Contact Info:
Egerter Software
94 Andover Drive
London Ontario
N6J 3X2   CANADA

WEB:   http://www.egerter.com
EMAIL: egerter@egerter.com


-----------------------------------------------------------------------------

Table of Contents
-----------------

1.1 DOS Installation instructions
1.2 Using Glide 2.1 or Glide 2.3 under DOS
1.3 Compiling Examples and Utilities under DOS
2.1 Windows Installation Notes
2.2 Other Notes for the Windows Version
3.1 Using the Utilities
4.1 Documentation
5.1 Release Notes
6.1 Registered Users
7.1 Source Code Pricing
8.1 Employment


1.1 DOS Installation instructions
---------------------------------

You need Watcom C/C++ 10.6 or later, and WGT 5.1 installed.
WGT 5.1 also has a trial version available from our web site
(http://www.egerter.com).  

Most people will probably have problems with undefined symbols because
they didn't set up the include and library paths correctly.  I put the
WGT include path in my autoexec.bat (set include=...), and modified
the wlsystem.lnk file so it finds the libraries without specifying the path.
The makefiles included with this package require that you do this as well.

For example, the dos4g section of my wlsystem.lnk file located in the
watcom\binw directory looks like this:

system begin at_dos4g
    option osname='DOS/4G'
    libpath %WATCOM%\lib386
    libpath %WATCOM%\lib386\dos
    libpath c:\wgt5\lib
    op stub=wstub.exe
    format os2 le
end

If you are experiencing errors such as "undefined symbol int386" then
you have Watcom installed incorrectly.  Look in your autoexec.bat file
and make sure the Watcom NT include and path variables come after the
regular directories.  The problem is the compiler finds the NT include
files and executables first, and tries to use them to compile DOS programs.


To make your own program, create a new directory under examples and
copy one of the example makefiles.  Modify the file so it uses the filename
of your C file.  Projects with multiple source files will need modification
to the prex.mk file.


1.2 Using Glide 2.1 or Glide 2.3 under DOS
------------------------------------------
Both versions of Glide are supported.  To switch between them, run
the glide23.bat or glide21.bat file in the \pr\lib directory, and change
the define in the makefiles.


1.3 Compiling Examples and Utilities under DOS
----------------------------------------------
The makefiles need a few modifications before you can compile the examples.
The files that need to be changed are \pr\pr.mk and \pr\prex.mk.
pr.mk is used to build the utilities, and prex.mk is used for the examples.

The following variables should be changed in both makefiles:
version = RETAIL or DEBUG
hardware = 3DFX or NONE
glide_rel = GLIDE23 or GLIDE21 (only used if hardware = 3DFX)
INSTALL_DIR = d:\pr (the base directory where Power Render is installed)
GLIDE21_DIR   = E:\glide2 (the base directory where Glide 2.1 is installed)
GLIDE23_DIR   = D:\glide23 (the base directory where Glide 2.3 is installed) 

You can then compile all of the utilities by running the build.bat file
from the \pr\util directory.

Each of the examples is compiled by typing wmake in each example directory.



2.1 Windows Installation Notes
------------------------------
You need the latest Glide drivers installed (2.3 or 2.31), and DirectX 3
or later for DirectInput.

Here are the important directories for the Win32 version(s):
\pr\winbin    - Contains all of the compiled utilities
\pr\winclude\ - Contains the include files needed for Win32 support
\pr\winex\    - Contains projects to build the examples
\pr\winlib\   - Contains the libraries
\pr\winutil\  - Contains projects to build the utilities

The same source code files are used for both DOS and Windows versions.
These are located in \pr\examples\ and \pr\util\.

The projects and workspaces have been built with MSVC 5.0.  I have put
all of the utilities and examples into two workspaces so you can do
a batch build on them.

If you need to build the projects and/or workspaces yourself, follow
these steps from the Development Environment:

- Create a workspace if needed

- Click on File/New
- Choose Win32 application under the Projects Tab
- Enter the name and location of the new project
- Click on OK


- Click on Project/Settings
- Click the C/C++ options tab
- Add __MSC__  to the preprocessor definitions
- Add __3DFX__ to the preprocessor definitions
- Add MSGLIDE  to the preprocessor definitions
- Add /Zp1 to the project options
- Click on OK
(You will have to repease these steps for both retail and debug configurations)

- Click on Tools/Options
- Click on the Directories tab
- Add e:\pr\winclude\msglide if not listed
- Add e:\dx3\sdk\inc if not listed (DX3 is needed for input routines)
- Add e:\dx3\sdk\samples\inc if not listed
- Add e:\glide23\glide\src\sst1\include if not listed
  (Change drive and directories depending on where you installed Glide and
   the DirectX SDK)

- In the project workspace, click on the FileView tab
- Right click on the project name and click on add files to project.
  Add the C files you want to compile
- Continue adding the following files:

  The Power Render libraries from pr\winlib\msglide
    (pr.lib, fxguir.lib) and
    (prsound.lib, terrain.lib if needed)

  The Glide libraries from \glide23\glide\lib\win32
   (fxmisc.lib, fxpci.lib, glide2x.lib, texus.lib)

  The DirectInput Libraries from dx3\sdk\lib
    (dinput.lib, dxguid.lib)

  The Windows Multimedia library from \program files\devstudio\vc\lib
    (winmm.lib) 

  winutil.c from \pr\winex\util


The examples must be run from their subdirectory under \pr\examples\.
If they are run from another directory, the data files will not be
found and the program will crash.  To set the output file
go to Project/Settings/Link.  To set the working directory, go to
Project/Settings/Debug.

If the examples or utilities crash, make sure they can find the data
files required to run them, and you have compiled them using the
/Zp1 compiler option.


2.2 Other Notes for the Windows Version
---------------------------------------
DirectInput is used by the utilities and examples.  Both mouse and keyboard
are used, but the mouse is automatically initialized by the winutil module.
You should not attempt to use the minit command again in your program.

Keyboard input has two different modes.  After calling installkbd, each
key is either up or down.  These states can be obtained from the kbdon
array, and the keyboard defines are found in the \pr\winclude\msglide\prdef.h
file.  This mode is used for realtime situations where you need to read
input every frame.

After uninstallkbd is called, all keyboard input is put into a queue
and can be read using the PR_kbhit and PR_getch commands (found in winutil.c).
This mode is used for reading strings from the user.  

Not all of the utilities have been compiled for Win32.  These include
maketab, dumppro, pic2wmp, and sprmip.  The compiled versions of these
utilities are provided in the \pr\bin directory.

The first example has not been compiled for Win32 because it was specifically
for 320x200 VGA mode.


The PRSOUND library will use DirectSound for mixing if installed.



3.1 Using the Utilities
-----------------------
** Important Fact #1 **
The utilities are designed to be run from a directory other than where
the executable exists.  You MUST add either \pr\bin or \pr\winbin to your
path statement in your autoexec.bat file, depending on if you are using
the DOS or Windows version.  You must reboot for this change to take
effect.  After doing this, you can run any of the utilities from any
directory on your system.  This means you can make a directory, put all
your objects and textures in it, and work on them without worrying about
where the utilities are located.  You MUST NOT type any directory before
the utility name when you run it.
ie do not type "c:\pr\bin\texskin duck.pro"
Some of the utilities need data files that exist in the current directory
and they will not be found if you do this.


** Important Fact #2 **
You must have the guidata.prl file in the same directory as your program,
if you are using the graphical user interface functions such as mouse
routines.  This file contains the graphical data needed for the GUI
library and startup screen.


4.1 Documentation
-----------------
Our documentation is in the Microsoft Word format.  If you do not have
Microsoft Word, you can download a separate Word Viewer application.
See http://www.microsoft.com/word/Internet/Viewer/default.htm
for more information.


5.1 Release Notes
-----------------
- The general documentation is not complete.  For now you can study the
  examples and experiment with the utilities.
- Some kind of texture caching system has to be developed for large games.
- Object hierarchy is now supported.  3D Studio hierarchy is not working
  completely yet, so a patch will be available soon.
  You can create your own hierarchy by setting the parent, children,
  and next pointers within the segment structures, and setting the
  segment's FLAG_SUBSEG flag to indicate it is a child segment and will
  be rendered through recursion.
- Keyframe animation is working for linear movements and rotations.
  A patch will be made available in the future for nonlinear keys.
  Only single layer LWO objects made of triangles are supported.
  An example animation can be found in \pr\objects\robot
  See the PRVIEW source code and PR_AnimateEntity function which is
  currently undocumented for example animation code.
- Phong only works with 3Dfx.
- Voodoo Rush cards and 3D in a windows may work with some modification to
  the winutil.c file.  I will have some examples for this after I get a
  Rush card.

- Known bugs:
  - Holes in terrain rendering


6.1 Registered Users
--------------------
If you have already bought a previous version of Power Render, you will
be contacted about how to patch your current version.  If you haven't
received an email then leave me a reminder and I'll send you the patch.


The examples/utilities are now compiled with Glide 2.3, which means you
must have the Glide 2.3 runtime drivers installed.  See 3Dfx's web
site for these drivers.
(specifically you need glide2x.ovl in the \windows directory)


7.1 Source Code Pricing
-----------------------
The order form does not mention that source code licenses are also available.
The cost is $6000 US with no royalties after that.  The package includes:
1. The regular registered package #1
2. Full Power Render Source Code
3. WGT 5.1 Source code
4. WGT95 Source code

SEAL source code must be purchased separately.  Voice and email (preferred)
support is available.



8.1 Employment
--------------
On a final note...  I will be looking for a full time job in a game
programming company in the spring/summer of 1997.  I've done enough
freelancing and want to get into an environment where I can create
great games. If you're looking for someone, let me know and I'll send
you my resume.




