home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 491.lha / OFF2TTDDD / OFF2TTDDD.doc < prev    next >
Encoding:
Text File  |  1991-04-06  |  9.7 KB  |  263 lines

  1.                             OFF2TTDDD
  2.  
  3.           A program to perform conversion of 3D Objects
  4.          between DEC's OFF and Glenn Lewis' TTDDD format
  5.          for use with Impulse's Turbo Silver and Imagine
  6.  
  7.                  Copyright © 1990 Udo Schuermann
  8.                       Freely Distributable
  9.  
  10.                            20-Dec-1990
  11.  
  12.  
  13. Legal Stuff
  14. ~~~~~~~~~~~
  15. OFF2TTDDD, although owned by Udo Schuermann, may be distributed
  16. freely.  No fee may be charged for the software itself and only a
  17. nominal and reasonable charge may be applied to cover the cost of
  18. materials and the effort to transfer the software, including
  19. shipping.
  20.   Permission is granted explicitly (but not exclusively) to Fred
  21. Fish to distribute OFF2TTDDD as part of his AmigaLibDisk
  22. collection.
  23.  
  24.  
  25. Shareware
  26. ~~~~~~~~~
  27. Shareware is a software distribution concept that can bring good
  28. software to a wide range of users for a fair and acceptable price
  29. because you don't have to pay for fancy boxes, printing fees,
  30. shipping and distribution costs, dealer overheads, and advertising
  31. expenses.  Of course, you don't get copy protection either, but
  32. that is a cross you'll have to bear <grin!>
  33.   Shareware, although distributed freely, is not free software. 
  34. Using the software without paying for it is still stealing it, but
  35. you do get to try the software for a while before deciding if you
  36. want to keep it (and pay for it) or throw it out.
  37.   OFF2TTDDD is shareware:  If you make use of this program you
  38. should send me (the author) a $10 (US) registration fee.  If YOU
  39. don't support your shareware authors, then who will??? 
  40.  
  41.  
  42. What is OFF2TTDDD?
  43. ~~~~~~~~~~~~~~~~~~
  44. OFF2TTDDD converts, as the name implies, three dimensional objects
  45. from DEC's OFF format to the Textual Three Dimensional Data
  46. Description used by Glenn Lewis' TTDDD program.
  47.   The TTDDD program may then be used to translate OFF2TTDDD's
  48. output to the binary format that is used by Impulse's Turbo Silver
  49. and Imagine raytracing and animation software.
  50.  
  51.  
  52. What is DEC's OFF format?
  53. ~~~~~~~~~~~~~~~~~~~~~~~~~
  54. The OFF format developed at DEC by the WSE group defines both ASCII
  55. and binary methods for storing three dimensional objects in a
  56. portable manner.  OFF2TTDDD uses only the ASCII version of such
  57. objects.
  58.  
  59. What is TTDDD format?
  60. ~~~~~~~~~~~~~~~~~~~~~
  61. TTDDD is a Textual version of Impulse's TDDD (Three Dimensional
  62. Data Description).  TTDDD describes objects (and scenes) in a human
  63. readable form, specifying points, edges, and faces (triangles) of
  64. objects as well as the attributes of individual faces.  TTDDD
  65. provides for an easy way to create objects algorithmically using a
  66. custom program that outputs a TTDDD file.  It also serves as an
  67. ideal method for OFF2TTDDD to convert objects without duplicating
  68. what TTDDD already does so well.
  69.  
  70.  
  71. So, what good will this OFF2TTDDD do me?
  72. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  73. It is far more efficient to build upon the efforts of others, than
  74. to reinvent what hordes of others have already made available.  If
  75. you require 3D objects in your modelling, animation, and/or ray-
  76. tracing work, you may find just the object you were looking for
  77. already created by someone else.
  78.   Such is the goal of DEC's decwrl archive, which stores dozens of
  79. 3D objects in a format that is widely transferrable and is not tied
  80. to a particular application.  To obtain more information about the
  81. decwrl archive, send an email message to the following internet
  82. address:
  83.  
  84.   object-archive-server@decwrl.dec.com
  85.  
  86. Make sure that your Subject: line contains only the word
  87.  
  88.   help
  89.  
  90. The archive is automated and will, provided it can figure out what
  91. you want, return a message with information to you.
  92.  
  93.  
  94. Where can I run OFF2TTDDD?
  95. ~~~~~~~~~~~~~~~~~~~~~~~~~~
  96. At this time, I have a release only for the Amiga computer.  Since
  97. TDDD is specific to Impulse's software, which runs only on Amigas,
  98. I expect little problem with that.
  99.  
  100.  
  101. What do I need to convert objects with OFF2TTDDD?
  102. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  103. For starters, you'll need an Amiga computer with at least 250K of
  104. contiguous free RAM (more or less).  OFF2TTDDD requires this much
  105. because it allocates some large data structures in order to load
  106. objects, optimize duplicate edges, and create the TTDDD file.  The
  107. "big" version of OFF2TTDDD will require almost 850K.
  108.   It will probably help if you have an OFF file to convert (they're
  109. usually named with a .geom (geometry) and .pcol (polygon colors)
  110. extensions and can be obtained from the decwrl archive.  Read above
  111. on how to obtain OFF files.
  112.  
  113.  
  114. Enough!  How do I run this thing?
  115. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  116. OFF2TTDDD expects its input from the console and writes its output
  117. to the console unless you either redirect input and/or output, or
  118. specify on the command line where input comes from and where output
  119. is to go to:
  120.  
  121. Usage: OFF2TTDDD [ -i input ] [ -o output ] [ -e ] [ -f ] [ -l ]
  122.  
  123.   -i   specify the input file.
  124.  
  125.   -e   perform edge optimization.  Edge optimization can cut down
  126.        an object's size by merging duplicate edges into one.  This
  127.        will also speed up Silver's or Imagine's processing speed. 
  128.        The optimization phase, however, can be very time
  129.        consuming, especially with large objects.  Use the -l
  130.        option to issue life signs.
  131.  
  132.   -o   specify the output to create a new file but not overwrite
  133.        existing files.  To force overwriting of existing files,
  134.        specify the -f parameter.
  135.  
  136.   -f   force overwriting of existing files.
  137.  
  138.   -l   show life signs while edge optimization is being performed.
  139.  
  140.  
  141. Examples: off2ttddd -icube -ocube.ttddd -e -l
  142.           Reads cube.geom and cube.pcol and produces cube.ttddd
  143.           with edges optimization.  In addition, the program will
  144.           show signs of life while it is optimizing edges.
  145.  
  146.           off2ttddd -ocube.ttddd -i cube
  147.           Same thing, but it does not remove duplicate edges.  Note
  148.           here that the -i may be separated from its filename
  149.           parameter by a blank, and that the order of the input and
  150.           output parameters can be reversed.
  151.  
  152.           off2ttddd <cube.geom >cube.ttddd
  153.           Reads only cube.geom because input comes from the
  154.           console.  All the object's polygons will become the
  155.           default color, brightest white.  Output once again goes
  156.           to the file cube.ttddd.  No edge optimation is performed.
  157.  
  158.           off2ttddd >cube.ttddd -i cube
  159.           Reads both cube.geom and cube.pcol and outputs to
  160.           cube.ttddd.  Again, no edge optimization is performed.
  161.  
  162.           cat cube.geom cube.pcol | off2ttddd >cube.ttddd -e
  163.           This example may not work for you, depending on your
  164.           shell program.  What this does is concatenates (cat) the
  165.           input files cube.geom and cube.pcol pipes these into the
  166.           input stream of OFF2TTDDD, which will produce cube.ttddd.
  167.  
  168. Limitations
  169. ~~~~~~~~~~~
  170. OFF2TTDDD was compiled using SAS/C 5.10 under Workbench 1.3 to run
  171. on any Amiga computer.
  172.   Two versions are distributed, one capable of reading 10,000
  173. points, 10,000 edges, and process 4,000 faces and their
  174. corresponding color attributes, and another able to handle 15,000
  175. points, 20,000 edges, and 10,000 faces.  If you require a version
  176. that is capable of more than that, please contact me and I'll try
  177. to accommodate you.
  178.   Filter and reflectivity are not implemented because I have not
  179. dug for them in the OFF documents as yet.
  180.  
  181.  
  182. Bugs
  183. ~~~~
  184. There is a problem with the optimization algorithm, which in a
  185. few cases, screws up.  If WriteTDDD (Glenn Lewis') complains, or
  186. if the object looks all screwed up, it may be optimization.
  187.     In a few cases, I have found that the problems seems to
  188. lie with the "OFF" object itself.  I am still trying to figure
  189. that one out, but all these objects are huge and make a hand-trace
  190. extremely tiring :-(
  191.     I want some of these objects very badly (which is why I
  192. wrote OFF2TTDDD in the first place) so you can expect me to
  193. continue looking for a solution to these problems.
  194.     For now, stay away from the optimization if it causes you
  195. problems.
  196.  
  197.  
  198. Source Code
  199. ~~~~~~~~~~~
  200. If you wish to get the source from me please make this clear when
  201. you register.  The source is not freely distributable because I'd
  202. like to continue having some control over it.  If you fix bugs or
  203. add features, let me know, please!  My preferred form of mailing,
  204. distributing, and bug collection is the internet.  I hate snail
  205. mail.
  206.     The source code is SAS/C 5.10 and should compile on most
  207. any system, since it's not Amiga specific, and I'm not using weird
  208. features.
  209.  
  210.  
  211. Miscellaneous
  212. ~~~~~~~~~~~~~
  213. OFF2TTDDD is my first Amiga program to be released widely, and I
  214. hope it will serve you well.  I have every intention to improve it
  215. especially based on feedback and (gasp!) bug reports.
  216.  
  217. If you use OFF2TTDDD, please register it with me.  This will
  218. provide me with feedback and encouragement to write more software
  219. for the Amiga.  
  220.  
  221. Mail your feedback and (hopefully) your $10 (US) to:
  222.  
  223.                Udo Schuermann
  224.                11235 Oakleaf Drive, Apt. 1520
  225.                Silver Spring, Maryland 20901 (USA)
  226.  
  227. I can also be reached via email on the internet as:
  228.  
  229.                walrus@wam.umd.edu
  230.  
  231.                     ._.
  232.                     ( )
  233.  
  234.  
  235. Thanks
  236. ~~~~~~
  237. I'd like to thank the following people who, each in their own
  238. capacity have inspired or helped me produce OFF2TTDDD:
  239.  
  240.   Randi J. Rost
  241.   Digital Equipment Corporation
  242.   Workstation Systems Engineering
  243.  
  244.   for the OFF document that I obtained from the decwrl archive
  245.   which provided me with just about enough information to get
  246.   OFF2TTDDD off the ground.
  247.  
  248.  
  249.   Glenn M. Lewis
  250.  
  251.   for the TTDDD program, which provided me with an easy gateway
  252.   into the Turbo Silver and Imagine object formats.  Without his
  253.   program I probably would never have had the incentive to even
  254.   start OFF2TTDDD.
  255.  
  256.  
  257.   Helge E. Rasmussen
  258.  
  259.   for pointing me at the decwrl archive which opened up so many
  260.   possibilities and got me started.
  261.  
  262. #EOT
  263.