home *** CD-ROM | disk | FTP | other *** search
/ Der Mediaplex Sampler - Die 6 von Plex / 6_v_plex.zip / 6_v_plex / DISK2 / MULTI_04 / 3DSDKB.ZIP / 3DS2DKB.DOC < prev    next >
Text File  |  1991-09-03  |  5KB  |  117 lines

  1. 3SD2DKB
  2. Version 1.1
  3. (c) Jeff Bowermaster
  4. Greensboro, NC
  5.  
  6. 9/03/91
  7. Ver. 1.1 Changes:  RIGHT <-1.33 0.0 0.0 > in VIEW_POINT produces
  8.                    much better circles
  9.  
  10.                    COLOR for the light sources moved outside the
  11.                    TEXTURE block (oops.  I'm still learning...)
  12.  
  13. 8/24/91
  14. Ver. 1.0
  15.  
  16. This program reads the ASCII save file from the 3D Editor in 3D
  17. Studio and writes a DKB raytracer Data file consisting of smooth
  18. triangles for really good looking reflections.  It also writes
  19. the camera and light positions.  Unfortunately, it doesn't handle
  20. colors and textures automatically, (although I'm working on it.) 
  21. They all default to a white shiny plastic, and you must go in
  22. manually and adjust them to what they were.
  23.  
  24. Syntax:  
  25.             3DS2DKB \path\infile[.asc] [outfile][.dat] [/i]
  26.  
  27. I went a little overboard on the filename parser.  Long story
  28. short, when you save ASCII, put the extension .ASC on the file. 
  29. Put 3DS2DKB in your \DKB directory (or where ever you run DKB
  30. from).  Then, for example,
  31.  
  32.             C:\DKB-> 3DS2DKB \3ds\birdshow
  33.  
  34. assumes the input file is birdshow.asc in the \3ds  directory and
  35. outputs birdshow.dat in the current directory (\dkb).  It also
  36. creates a file birdshow.inc that contains a list of the materials
  37. found, all defined as white shiny plastic that gets INCLUDEd at
  38. the beginning of birdshow.dat.  You can go into the materials
  39. editor in 3DS and read the RGB values, GIF specs, shinyness, and
  40. with appropriate parameters change the white plastic into the
  41. materials in your original 3DS file.  (For example, divide the
  42. RGB values by 255 to get the 0->1 that DKB wants).  I've included
  43. an example (birdshow.inc) that as we speak is rendering
  44. birdshow.dat.  I wrote in one option (/i) that allows the
  45. materials to be included in the data file rather than 2 files. 
  46. For simple objects it's convenient to have just one file to deal
  47. with.  For complex objects, finding all the definitions scattered
  48. in the DAT file can be a pain, and it seemed reasonable just to
  49. make a separate file to deal with all of them.  
  50.  
  51. Specifics:
  52.  
  53. This program is a parser and a processor.  The first part reads
  54. the lines in the ASCII file and does appropriate things with the
  55. information.  It creates two arrays and fills them with the
  56. vertex list and the face list.  It processes these into two more
  57. arrays, the face normals and the vertex normals.  It then prints
  58. out a list of smooth triangles as composite objects bounded by
  59. boxes defined by the min and max of x, y and z.  A fifth array
  60. holds the material list for the faces.  The head in birdshow had
  61. 2 different materials in one object and rather than fight it I
  62. just incorporated it.  Material names are fused with underscores
  63. and are listed in the .inc file.
  64.  
  65. Operation:
  66.  
  67. Be warned these files can take a LONG time to render (several
  68. days).  There is sometimes a very long wait from the time you
  69. start the program to the time you see anything on the screen. (I
  70. don't have a clue.)   I suspect you'll need DKBPRO since the data
  71. files can be VERY large (1-2 Meg).  I've had problems sticking
  72. objects together with snap on and getting vectors (that is,
  73. triangles where two vertices are the same point) that gives
  74. divide by zero errors on calculating normals.  I've not had much
  75. experience with this program and so you're liable to be doing
  76. beta testing for me.  Please get back with me on any problems and
  77. we can deal with them.  
  78.  
  79. Directions:
  80.  
  81. Optimized bounding shapes (Steve Angers stuff) would be nice. 
  82. Cutting off smoothing when the angle gets too severe would be
  83. nice.  Reading 3DS .MLI material definition files directly would 
  84. "drop the other shoe" as it were, making manual material modification
  85. unnecessary.  
  86.  
  87. This program doesn't handle spotlights.  I suspect you can either 
  88. add a mask in front of a normal light or design a parabolic reflector 
  89. and a lens (that sounds easy, huh :)).  Spots default to simple diffuse
  90. lights at the same location as the spot.
  91.  
  92. I left some debugging stuff in the program, lets you print text
  93. listings of the triangles or whatever, making that another option
  94. might be nice but if I stop to do it now this'll never make it
  95. out the modem.  (I just added more debugging info, oops).
  96.  
  97. Currently I just blow over things like vectors when triangles are 
  98. expected, making it problimatic whether it'll run or not.  I need
  99. to add major geometry fixing stuff to this so that when unexpected
  100. information is encountered it fixes it.
  101.  
  102. Add stuff, change it, fix it, use it, enjoy the images, get back to me
  103. on what you do and your suggestions.  I'm on the Ray board and in the book.  
  104.  
  105. Whatnot:
  106.  
  107. Thanks to Steve Anger for his smooth triangle suggestions.  
  108.  
  109. It was awfully nice of the 3D Studio people to provide ASCII text
  110. output for their program.  The more I use 3DS the deeper it gets. 
  111. It's amazing the amount of stuff that's been crammed into this
  112. program.  If version 2.0 has Renderman this utility might be less
  113. important, although DKB makes very nice images now.
  114.  
  115. Jeff
  116. 
  117.