CHANGES

Changes from T3DLIB40 to T3DLIB41 - 12/12/93
-------------------------------------------
o OOOPS!  My new method of automatically updating the Revision number caused
  Enforcer Hits.  YOUCH!  So I fixed it.  :-)  Fast turnaround, eh?  How
  embarrassing!

Changes from T3DLIB39 to T3DLIB40 - 12/11/93
-------------------------------------------
o Recompiled everything under SAS/C 6.50.  What a compiler!  I like it.  :-)
o Bug in MBB fixed - center and size were wrong.
o Bug in write.c fixed - printed wrong revision number.  :-)
o Bug in Staging file support fixed - DECELeration keyword recognized.
o Changed output format of numbers in TTDDD files. Now round to nearest thousandth
o Real3D output not added yet because PC and Amiga Real3D formats are different.
o Added 020_FPU version of executables
o set_texture_path and set_brush_path modified to alter *entire* file pathname
  instead of just the root volume name.

Changes from T3DLIB38 to T3DLIB39 - 2/13/93
-------------------------------------------
o Bug in Rayshade, VORT, and POV output... thought objects were lights.  Fixed.
o Added "TexIt" to registered release...  Applies textures to objects.
  No source code will be provided for TexIt, sorry.

Changes from T3DLIB37 to T3DLIB38 - 1/31/93
-------------------------------------------
o I added a date to the CHANGES listing.  (So you can now tell what I was doing
  instead of watching SuperBowl '93.  :-)
o I made a change to the method of Shareware release.  See the README.R38 file.
o DOCUMENTATION!!!  Wheee!!!  See the ".doc" files provided with the executables.
o Made the entire suite compile under SAS/C 6.2 without errors or warnings.
o New program: bumpit - uses algorithmic noise (courtesy of Charles Congdon...
  Thanks, Charles!) to procedurally disturb the points on an object.
o New program: spherize - conforms the points of an object to a unit sphere.
o New program: mbb - Calculates and prints the Minimum Bounding Box of an object.
o New program: set_texture_path - changes root path assignment for all textures.
o New program: set_brush_path - changes root path assignment for all brushes and
  stencils (stencils are an old Turbo Silver thingy).

Changes from T3DLIB36 to T3DLIB37
---------------------------------
o Not everybody liked or understood the concept of "filters" so I have,
  where possible, made the conversion programs accept command-line arguments,
  instead of forcing people to use pipes or redirect the stdin and stdout of
  the filter.
o I also made it so that all programs, when given the "-help" flag, print
  usage information.
- Support for LightWave3D object files has been started, but not finished.
o Support for the undocumented "TXT2" chunk has been added.  This is the
  Imagine 2.0 "texture" chunk that includes parameters, texture axis
  information, a boolean for "Apply to Children", and subgroup restrictions.
* Support for Staging files.  F/X aren't supported yet, possibly others.
  Reads/writes text *and* IFF "staging" files, in the same manner as TTDDD/TDDD
  files.

Changes from T3DLIB35 to T3DLIB36
---------------------------------
o Minor update that fixes a T3DLIB bug that was tickled by "igensurf"...
  If the first line had a valid TTDDD command on it, readwrite croaked.
  Two lines fixed it.  Sorry about that.

Changes from T3DLIB34 to T3DLIB35
---------------------------------
o Thanks to Scott Ellis, Amiga executables are provided in the files:
  T3DLIB35_68000exe.lha  (68000, non-FPU version)
  T3DLIB35_68030exe.lha  (68030, FPU version)
  Note that these were compiled with SAS/C, and so they do not have that bogus
  restriction of running only under version 2.04 of the operating system like
  the R33 version of the executables had!
  Yahoo!  Thanks, Scott!
o So as to reduce the amount of confusion, I went ahead and bumped the revision
  number, because the README file changed, as did the Makefile.Amiga.

Changes from TTDDDLIB33 to T3DLIB34
-------------------------------------
o Added support for AutoCAD's DXF files (without having AutoCAD).  If someone
  wishes to send me DXF examples that include "Layers" for use in assigning
  different levels in an object's hierarchy, I will attempt to implement that
  too.
o Added support for POV-Ray 1.0.  The input file format is rather restrictive,
  in my humble opinion (specifically regarding describing complex object
  hierarchies and applying textures to unions of shapes), which forced me to
  color ("texture") each triangle individually instead of applying a texture
  to a child object and overriding it on a triangle-basis if need be.
  Drew Wells, leader of the POV-Ray project, says that a future version will
  address my concerns.  Anyway, all this means that the POV files will be
  quite large for a medium- to high-complexity object.
o I added more documentation to the README.R34 file, describing uses of this
  package.  Yes, better and more complete documentation must still be written.
o Essence 1.0 has already shipped.  :-)  (Just thought I would throw this in
  here even though it has nothing to do with T3DLIB.  :-)
o I changed the names of the archives to T3DLIB, which is much easier to say.
  :-)
o I removed the "ext2int" program, which was simply a link to "readwrite"
  anyway.

Changes from TTDDDLIB31 to TTDDDLIB33 (ooops, forgot to update this at 32)
-------------------------------------
o First, the "readwrite" filter (aka ext2int) can now output Imagine object
  files directly (in the TDDD format) when given the "-tddd" option (or "-t" for
  short).  Also, for some time now it has already had the ability to read either
  TDDD *or* TTDDD files without you having to specify which is which.

o This release supports a number of new Imagine 2.0 TDDD "chunks", including
  the following:

        SPC1 - Specular default
        PRP1 - Object properties
        EFLG - Edge flag
        FGRP - Face subgrouping

Changes from TTDDDLIB29 to TTDDDLIB31 (yep, no release 30)
-------------------------------------
o Fixed a bug in writetddd that caused incorrect reading of real numbers
  such as "-.5" with no digits before the decimal point.  Thanks, Paul,
  for pointing this out!  Also added exponential notation support in case
  some program decided to generate them.

Changes from TTDDDLIB28 to TTDDDLIB29
-------------------------------------
o I have decided to include "writetddd" with the distribution so that it
  will be much more useful to even those people who do not register for
  this shareware (the majority, I'm afraid).  Now you can pipe the output
  of any of the programs that create TTDDD file through "writetddd" and
  get Imagine-compatible objects.

Changes from TTDDDLIB27 to TTDDDLIB28
-------------------------------------
o Ooops.  I forgot to include "merge.c" in the archive.

Changes from TTDDDLIB26 to TTDDDLIB27
-------------------------------------
o Speed-up and bug fix (which caused it to hang) in "merge.c"

Changes from TTDDDLIB25 to TTDDDLIB26
-------------------------------------
o Added "merge_World()" function in "merge.c"
  This routine optimizes points and edges in an object hierarchy
  by removing duplicates.
o Added the "-m" flag to "ext2int" to optionally "merge" the object
  before outputing.

Changes from TTDDDLIB24 to TTDDDLIB25
-------------------------------------
o Bug fix in read.c and readtddd.c
  read.c was calling an external "malloc_arrays()" such that its static
  variables "defclst", etc. were not being used.

