home *** CD-ROM | disk | FTP | other *** search
- 3DS2POV Version 1.7 May/93
- Copyright (c) 1993 by Steve Anger and Jeff Bowermaster
-
- This program reads a 3D Studio .3DS file and writes a POV-Ray, Vivid or
- Polyray raytracer scene file. Nested bounding shapes are automatically
- generated for POV-Ray to greatly reduce the rendering time. It writes the
- camera and light positions, but unfortunately it doesn't handle the textures
- automatically, (although we haven't given up). They currently default to a
- white shiny plastic, and you must go in manually and adjust them to what you
- need.
-
-
- Hardware requirements:
-
- The 3ds2pov.exe executable requires a minimum of a 386 or a 486 with a
- math co-processor. At least 2MB RAM is recommended. It is compatible with
- most 386 memory managers but will not run under a DPMI server (Windows, OS/2).
-
-
- Syntax: 3ds2pov inputfile[.3ds] [outputfile] [options]
-
- Options:
- -snnn - Generates smooth triangles. The boundaries between triangles
- are only smoothed if the angle between the triangles is less
- that nnn degrees. -s0 will not smooth any triangles while
- -s180 will smooth all triangles. Values from -s45 to -s90
- usually work well. If unspecified smoothing defaults to -s60.
-
- -l<filename> - Specifies a file containing texture declarations for common
- 3DS materials. Up to 10 libraries can be specified.
-
- -a<filename> - Use animation information in specified .vue file.
-
- -fnnn - Generate frame nnn of animation (must be used with -a
- parameter).
-
- -x<object> - Exclude this object from the conversion. If the object name
- contains any spaces it must be enclosed in double quotes.
- e.g. -x"BEACH BALL"
-
- -u - Do not add nested bounds to output (unbounded).
-
- -v - Turn on verbose status messages.
-
- -op - Output to POV-Ray 1.0 format (default)
- -op2 - Output to POV-Ray 2.0 format (2.0 is unreleased as yet)
- -ov - Output to Vivid 2.0 format
- -ol - Output to poLyray format
- -or - Output to Raw triangle format.
-
-
- Use:
- 3ds2pov birdshow -l3ds.inc
-
- assumes the input file is birdshow.3ds and outputs to birdshow.pov and
- birdshow.inc in the current directory. The file birdshow.pov will contain
- the camera, light sources, and list of materials used (basically everything
- you may want to edit) and birdshow.inc contains the triangle mesh data.
-
- Predefined materials in 3ds.inc will be automatically used if the names
- match (case is important), otherwise materials default to white shiny
- plastic. For a start, simply modify the material colors in the main file
- for each material to an appropriate color and take it from there. The file
- 3ds.inc is only included as an example. You'll likely want to build up a
- more complete texture library.
-
-
- Smoothing:
-
- 3ds2pov doesn't yet use 3D Studio's smoothing group information and instead
- does it's own smoothing. The amount of smoothing applied is controlled by
- the -s parameter and specifies the maximum angle that will be smoothed. The
- default of -s60 usually works for most scenes but you may find that some
- scenes require more or less smoothing. This parameter works just like the
- Auto Smooth option in 3DS.
-
-
- Animation:
-
- The animation information is exported from 3ds via a .vue file that can
- be created in the 3DS keyframer (Render/Setup/Make .VUE). By specifying the
- name of the .vue file and a frame number 3ds2pov will generate a scene file
- for that specific frame.
-
- e.g. 3ds2pov robot -arobot.vue -f5
-
- The option -arobot.vue tells it to get the animation information from file
- robot.vue and option -f5 tells it to render frame #5. To generate a whole
- animation you can create a batch file that runs 3ds2pov and the raytracer
- for each frame in the animation. The program 3dsani is included to make the
- generation of this file a little easier.
-
- Syntax: 3dsani inputfile [options]
-
- Options:
- -a<filename> - Specifies the name of the 3ds animation (.vue) file.
- If unspecified defaults to inputfile.vue.
-
- -t<filename> - Specifies the name of the template (.tpl) file.
- If unspecified defaults to inputfile.tpl.
-
- -o<filename> - Specifies the name of the output (.bat) file.
- If unspecified defaults to inputfile.bat.
-
- -snnn - Start animation at frame nnn. If unspecified the start frame
- is taken from the .vue file.
-
- -ennn - End animation at frame nnn. If unspecified the end frame is
- taken from the .vue file.
-
- -pnnn - Render every nnn'th frame. If unspecified defaults to 1.
-
-
- Example:
- 3dsani robot -tani1.tpl
-
- generates a batch file named robot.bat that will execute 3ds2pov and povray
- once for each frame of the animation. The beginning and ending frame numbers
- are determined from the file robot.vue. The format of the batch file is
- determined from the template file ani1.tpl. Basically the template file is
- duplicated once for each frame but with all occurrences of the characters $
- and # replaced by the file name and frame number respectively. Several
- sample template files are included which can be tailored to your specific
- needs.
-
-
- Environment Variable:
-
- If you find that you're often using the same command options over and over
- again you can set up your default command line options in the 3DS2POV
- environment variable. e.g. If you generally use Vivid as your renderer you
- may want to add the following line to your autoexec.bat:
-
- set 3DS2POV=-ov
-
- Commands specified in the environment variable will be overridden by those
- specified on the command line.
-
-
- Known Bugs/Problems:
-
- Orthogonal/user viewports, and camera roll are not implemented yet.
-
- Solid background colors work with POV-Ray and Polyray but not with Vivid.
-
- Fog works with POV-Ray but not with Polyray or Vivid.
-
- Gradient and image mapped backgrounds are not implemented.
-
- The camera field-of-view conversion isn't perfect. The rendered FOV will be
- close to the original but it won't be exact.
-
- There is a known problem with the version of POV-Ray 1.0 that was shipped with
- the Image Lab book that prevents smooth triangles from rendering. If you have
- this version you can download the latest version from CompuServe or a local
- BBS (look for POVIBM.ZIP).
-
-
- Revision History:
-
- 05/7/93
- Ver. 1.7 Directly reads .3DS files instead of the slow/bulky .ASC files.
- Added support for 3DS 2.01 .vue files and fixed some bugs with
- the .vue file parsing. Added morphing. Added support for the
- Polyray raytracer. Textures now move with animated objects.
- Default switches can be set in the 3DS2POV environment variable.
-
- 12/14/92
- Ver. 1.6 Animation support added. Added support for Vivid output.
- Identifiers that begin with a digit are now prefixed with
- the letter 'N' rather than an underscore (for compatibility
- with Vivid). Fog works (I think).
-
- 10/18/92
- Ver. 1.5b Correctly handles spotlight hotspot parameter. Multiple texture
- libraries can be specified. A bug that occasionally resulted in
- a zero length include file fixed.
-
- 08/06/92
- Ver. 1.5 Fixed bug with spotlight falloff parameter.
-
- 07/27/92
- Ver. 1.4 Modified for POV-Ray 1.0 output format. Uses 1.0's new box
- primitive for bounding. Bounding ellipsoids are no longer used.
- Added support for spotlights.
-
- 06/04/92
- Ver. 1.3 Modified the parser to handle 3D Studio 2.0 ascii dump files as
- well as 1.0. Added limited support for automatic texture handling.
-
- 05/03/92
- Ver. 1.2 Added the octree bounding code from txt2pov. The parser is now a
- little more bullet proof and should be able to handle minor
- changes in the format of the ascii dump file.
-
- 11/08/91
- Ver. 1.1c Fixed the bug I inadvertently added to the txt output in v1.1b.
- Added texture names to the txt output. These are used by v1.3 of
- txt2pov (formerly txt2dkb). The 32 bit version no longer requires
- removal of 386 memory managers. SA
-
- 10/15/91
- Ver. 1.1b Minor source code modifications to allow program to compile with
- GNU C 32 bit compiler. Note: The 32 bit version (3ds2dkbx.exe)
- requires a 386 /w 387 or a 486 to run. 2M or more RAM is
- recommended. Any 386 memory managers (386^Max/QEMM, etc) must be
- removed before the 32 bit version will run. SA
-
- 9/03/91
- Ver. 1.1 RIGHT <1.33 0.0 0.0 > in VIEW_POINT produces much better circles.
- COLOR for the light sources moved outside the TEXTURE block (oops.
- I'm still learning...) Jeff
-
- 8/24/91
- Ver. 1.0 Original release, DKB, simple TurboC parser by Jeff.
- Very slow by itself, workable when used in conjunction with
- Steve's optimizing bounder. (TXT2DKB).
-
- Addresses:
- Steve Anger, Guelph, ON, Canada
- CIS: 70714,3113
- Internet: 70714.3113@compuserve.com
-
- Jeff Bowermaster, Greensboro, NC
- CIS: 72040,2117
- Internet: bowerman@garfield.ncat.edu
-
- ADEnet Boards i.e.:TGA: (510)524-2780
-