home *** CD-ROM | disk | FTP | other *** search
/ Stars of Shareware: Raytrace & Morphing / SOS-RAYTRACE.ISO / programm / utility / dos / cchem03 / cinechem.doc < prev    next >
Encoding:
Text File  |  1992-10-14  |  27.3 KB  |  569 lines

  1.  
  2.                            C I N E C H E M
  3.     Molecular Rendering and Animation with HyperChem and 3D Studio
  4.  
  5.                              --- with ---
  6.  
  7.                            S T I N G R A Y
  8.                           Stingy Ray Tracer
  9.  
  10.                             by John Walker
  11.                    Release 0.3 -- 13th October 1992
  12.  
  13. INTRODUCTION
  14. ============
  15.  
  16. HyperChem allows you to build molecules, analyse them in various ways,
  17. and  perform  simulations  of  molecular  dynamics.   HyperChem   also
  18. includes  a  variety  of  rendering  algorithms  including  stick, dot
  19. surface, disc, and space filling sphere representations  of  molecular
  20. structures.  While these renderings are entirely adequate for grasping
  21. the conformation of a molecule,  they  are  not  comparable  to  those
  22. created by high-end systems.
  23.  
  24. In addition to rendering still image of molecules, HyperChem's ability
  25. to save "Snapshots" in the course of a molecular  dynamics  simulation
  26. enables  one  to  create  animations  of  dynamics runs: the "molecule
  27. movies" which many think are achievable only with supercomputers.
  28.  
  29. While  more  comprehensive  rendering  and  animation support could be
  30. added to HyperChem (and undoubtedly will be as the  product  matures),
  31. Autodesk  already  sells a product which contains everything needed to
  32. create  high-end  molecular  images   and   animations:   3D   Studio.
  33. Unfortunately,   HyperChem   and   3D   Studio   models  are  entirely
  34. incompatible,  preventing  the  user   from   harnessing   these   two
  35. complementary  products  into  an  integrated  scientific modeling and
  36. presentation tool.
  37.  
  38. CINECHEM  bridges the gap between HyperChem and 3D Studio.  Simple and
  39. easy to use because it relies  on  the  existing  user  interfaces  of
  40. HyperChem  and  3D  Studio  rather  than  providing  its own, CINECHEM
  41. permits the HyperChem user to create renderings an  animations  within
  42. an hour of installing CINECHEM and 3D Studio on his machine.
  43.  
  44. JUMP START
  45. ==========
  46.  
  47. 1.  Install It
  48. --------------
  49.  
  50. Copy the contents of the CINECHEM release disc into the  directory  in
  51. which you keep your HyperChem model (.HIN) files.
  52.  
  53. 2.  Make a Rendering
  54. --------------------
  55.  
  56. Fire up HyperChem under Windows, open the system you'd like to render,
  57. and establish the viewing position for the picture  using  HyperChem's
  58. pan,  rotate,  and  zoom tools.  When you're happy with the viewpoint,
  59. save the system in .HIN format.  (If you already have one or more .HIN
  60. files,  you don't need to edit them with HyperChem, naturally).  Try a
  61. reasonably simple molecule the first time so  things  don't  take  too
  62. long.
  63.  
  64. After saving the .HIN file, exit  HyperChem  and  quit  Windows.   (3D
  65. Studio is a non-DPMI-compliant 386 mode application, and it cannot run
  66. in a Windows DOS box.  CINECHEM, however,  will  run  under  Windows.)
  67. Once you're back at the DOS prompt, run CINECHEM on the .HIN file:
  68.  
  69.         CINECHEM <name>.HIN
  70.  
  71. If you omit the  ".HIN",  CINECHEM  will  supply  it  for  you.   When
  72. CINECHEM  is done, you'll have a <name>.3DS file in the same directory
  73. as the .HIN file from which it was created.  Load 3D Studio, and using
  74. "Load"  on  the "File" menu, navigate to your <name>.3DS file and load
  75. it.  You'll see a variety of viewpoints  on  the  screen.   Click  the
  76. mouse  in one of these viewpoints and type "C" to supplant it with the
  77. "Camera"  viewpoint.   Then,  using  the  menu  at  the  right, select
  78. "Renderer", then "Render", then  click  in  the  Camera  viewpoint  to
  79. designate  it  as  the  viewpoint to be generated, then click "Render"
  80. once again for spirit at the huge  and  confusing  dialogue  box  that
  81. appears.  Clinkity, clankity, clunk, and in a few seconds (or more, if
  82. your  machine is pokey), there's your picture!  This initial rendering
  83. is, of course, just the point of departure  for  creating  publication
  84. quality  art;  all  of  the  facilities  of  3D Studio are now at your
  85. disposal,  so  you  can  change  material types, lighting, viewpoints,
  86. perspective, etc., without recourse to HyperChem  or  CINECHEM  again.
  87. (Note  that  this means a HyperChem user can turn over "raw molecules"
  88. processed by CINECHEM to a 3D Studio expert for rendering, instead  of
  89. becoming a 3D Studio expert himself.)
  90.  
  91. 3.  Make an Animation
  92. ---------------------
  93.  
  94. To  make animations, we assume you already know how to run a molecular
  95. dynamics simulation in HyperChem.  If you don't  and  wish  to  learn,
  96. please  refer to Chapter 10 of the HyperChem "Getting Started" manual,
  97. paying particular attention to section "Setting up Playback  Dynamics"
  98. on  page  147.  Run your simulation with Snapshots enabled, saving the
  99. results  of  the  simulation  in  a  <run>.HIN  and  <run>.SNP   file.
  100. (Normally,  you'll save the simulation snapshots with a different name
  101. than your original .HIN file).  Animations generally look best if  you
  102. set  the  Snapshot  period  to 1 data step, although if you're using a
  103. very small time step you may wish to increase the snapshot  period  to
  104. reduce the size of the animation and the time required to generate it.
  105.  
  106. To  create  a  3D  Studio  animation  of the simulation, you need only
  107. invoke CINECHEM on the .SNP file:
  108.  
  109.         CINECHEM <run>.SNP
  110.  
  111. CINECHEM  assumes  that <run>.HIN is in the same directory as the .SNP
  112. file and will error if it cannot be found  there.   If  you  omit  the
  113. ".SNP", CINECHEM will search first for a snapshot file to animate and,
  114. if none is found, then look for a .HIN file to create a still image.
  115.  
  116. As before, the results of CINECHEM will be found in a  <run>.3DS  file
  117. in  the same directory as the .SNP and .HIN files.  Exit HyperChem and
  118. Windows, fire up 3DS, and load the file as  for  the  still  rendering
  119. before.   Don't  panic---when  the  image appears on the screen it may
  120. look very odd; what you're seeing is the base model,  not  the  actual
  121. frames of the animation.  Select the Keyframer on the Program menu (or
  122. just hit F4), and you'll see the first frame of the actual  animation.
  123. You  can move the slider along the bottom of the screen to preview the
  124. motion of the atoms and bonds over the course of the simulation.
  125.  
  126. As  before,  click in a viewport and type C to change it to the camera
  127. viewport,  select  Renderer,  then  Setup  and  configure  the  screen
  128. resolution  you  desire.   Next  select  Render,  click  in the Camera
  129. viewport, enable "Disk" in the dialogue box to save the animation in a
  130. file, and click Render.  The animation will be created and saved in an
  131. .FLC or .FLI file according to the resolution you requested.  You  may
  132. then play the animation within 3D Studio (assuming you have a suitable
  133. VGA-compatible display), or with the public domain AAPLAY  or  ANIPLAY
  134. utilities furnished with Autodesk Animator and Animator Pro.
  135.  
  136. VARIETIES OF THE RENDERING EXPERIENCE
  137. =====================================
  138.  
  139. You  can  control  the operation of CINECHEM through specifications on
  140. the command line (file names and  options)  and  through  an  optional
  141. configuration file which allows you to assign 3D Studio material types
  142. to various elements and bonds.
  143.  
  144. The general form of the CINECHEM command line is:
  145.  
  146.     CINECHEM [options] infile[.HIN/.SNP] [outfile[.3DS/.NFF/.POV/.RIB]]
  147.  
  148. If no [outfile] is specified, <infile>.3DS is assumed.   If  <outfile>
  149. is  specified  but  no  file type is given, ".3DS" is appended.  If no
  150. file type is given for <infile> CINECHEM searches  first  for  a  .SNP
  151. file  and  the  corresponding  .HIN  file  from  a  molecular dynamics
  152. animation then, if no .SNP file is found,  for  an  .HIN  file  to  be
  153. rendered into a still image.
  154.  
  155. CINECHEM accepts the following options:
  156.  
  157.     -A          Set screen aspect ratio.  (NFF/POV/RIB)
  158.  
  159.     -B          Do not display bonds.
  160.  
  161.     -C<file>    Load the named configuration file.  If no file type is
  162.                 supplied, ".CFG" is assumed.  (3DS)
  163.  
  164.     -D          Dry: water molecules are not rendered.
  165.  
  166.     -E<factor>  Expand (or contract) the distances  between  atoms  by
  167.                 the  given  <factor>.   This  gives you smooth control
  168.                 over the relative size of the  atom  spheres  and  the
  169.                 bond  lengths.   The  "-S"  option  is equivalent to a
  170.                 specification of "-E3".
  171.  
  172.     -H          Do not display hydrogen atoms or bonds to them.
  173.  
  174.     -K          Generate  keyframer  hierarchy to make atoms and bonds
  175.                 child objects of the molecule that contains them  even
  176.                 if  the input is a static model (.HIN) file instead of
  177.                 a model/snapshot (.HIN/.SNP) pair.  This is handy when
  178.                 you  want  to  manually  animate  a model to show, for
  179.                 example, how a molecule binds to  an  active  site  of
  180.                 another   or   to   create   animations  of  so-called
  181.                 "nanomachines".  (3DS)
  182.  
  183.     -M          Create special material types  for  each  element  and
  184.                 bond used in the model.  (3DS)
  185.  
  186.     -Q          Quiet (suppress sign-on line).
  187.  
  188.     -R<n>       Rendering  quality versus time tradeoff.  If <n> if 0,
  189.                 rendering will be very fast but picture  quality  will
  190.                 be  low.  As <n> increases toward the maximum value of
  191.                 9, image quality improves at the expense of  rendering
  192.                 time.  The default value is 7.  (RIB)
  193.  
  194.     -S          Generate  a "stick and ball" rendering rather than the
  195.                 usual  "space  filling"  representation.   The spheres
  196.                 that represent atoms are reduced in size by  a  factor
  197.                 of  three  so  they appear as balls at the junction of
  198.                 sticks representing the bonds.
  199.  
  200.     -T<factor>  Thicken  the  bonds  by  the  specified  <factor>.   A
  201.                 <factor> of 1 yields the default  thickness,  2  twice
  202.                 that  thickness,  and  0.5  half the default.  This is
  203.                 primarily intended to make  bonds  more  visible  when
  204.                 rendering  stick  and ball pictures for low resolution
  205.                 displays.
  206.  
  207.     -U          Display a summary of the command line and options.
  208.  
  209.     -X<pixels>  Set screen width to <pixels>.  (NFF/POV/RIB)
  210.  
  211.     -Y<pixels>  Set screen height to <pixels>.  (NFF/POV/RIB)
  212.  
  213. Some  options are applicable only to certain output file formats; they
  214. are noted in the table above.  Options irrelevant to the current  file
  215. format are ignored.
  216.  
  217.  
  218. SPECIFICATIONS IN THE MATERIAL WORLD
  219. ====================================
  220.  
  221. By default, CINECHEM chooses 3D Studio materials which  reproduce  the
  222. default  colours that HyperChem uses when rendering atoms.  (Note that
  223. if you change  HyperChem's  rendering  colours  with  the  "Display  /
  224. Element  Color..." dialogue, CINECHEM does not automatically use those
  225. new colour assignments.  Bonds are rendered according to the  type  of
  226. the bond as follows:
  227.  
  228.     Bond type           Material
  229.     ---------       ---------------
  230.     Single           White plastic
  231.     Double           Blue plastic 50
  232.     Triple           Copper
  233.     Aromatic         Gold
  234.  
  235. You can change these material assignments by supplying a configuration
  236. file which assigns specific  3D  Studio  materials,  either  from  the
  237. standard  library  or  those  you've created yourself, to elements and
  238. bonds.  Here's a sample configuration file:
  239.  
  240.     ;   Gaudy show-off configuration
  241.  
  242.     element_3ds H tile goldgranite
  243.     element_3ds o red glass
  244.     element_3ds c blue planet
  245.     element_3ds n blue metalic
  246.     element_3ds s yellow plastic
  247.     element_3ds lp marble - pale
  248.  
  249.     bond_3ds s  blue marble
  250.     bond_3ds d  ape
  251.     bond_3ds t  blue plastic
  252.     bond_3ds a  old metal
  253.  
  254. Upper and lower case letters are treated as  identical  in  processing
  255. the  configuration  file,  blank  lines are ignored, and any text on a
  256. line following a semicolon is taken as a comment.  Two statements  may
  257. be supplied in the configuration file:
  258.  
  259.     ELEMENT_3DS <element_symbol> <material name>
  260.  
  261.     This assigns <material name> (which may be any number of words) to
  262.     the  element with chemical symbol <element_symbol>.  The <material
  263.     name> must be defined in one of the libraries from which 3D Studio
  264.     obtains  material  definitions.  You can assign a material to lone
  265.     pairs by using an element symbol of "LP".
  266.  
  267.     BOND_3DS [S|D|T|A] <material name>
  268.  
  269.     Assigns <material name> to the bond type (Single, Double,  Triple,
  270.     Aromatic)  specified.   The <material name> must be defined in one
  271.     of  the  libraries  from  which   3D   Studio   obtains   material
  272.     definitions.
  273.  
  274. A  configuration  file  can  be  specified  by naming it with the "-C"
  275. option on the CINECHEM command line, for example:
  276.  
  277.     CINECHEM -Cgaudy MYDNA.HIN
  278.  
  279. where GAUDY.CFG is the configuration file that specifies rendering for
  280. MYDNA.HIN into MYDNA.3DS.  Any elements or bond types not specified in
  281. the configuration file will be rendered according to the defaults.  If
  282. no "-C" specification is given, CINECHEM will look for a configuration
  283. file named CINECHEM.CFG in the current directory and, if present, load
  284. it.
  285.  
  286. An  alternative  method  of managing material types is provided by the
  287. "-M" option.  If you specify this switch, a material will  be  created
  288. for  each  type of element and bond which appears in the model.  These
  289. material types are given names like:
  290.  
  291.     Hydrogen atom
  292.     Carbon atom
  293.     Neodymium atom
  294.     Single bond
  295.     Double bond
  296.     Triple bond
  297.     Aromatic bond
  298.     ...etc.
  299.  
  300. The materials  are  initialised  to  render  in  the  default  colours
  301. described  above  (if  the  "-M" option is selected, the configuration
  302. file is ignored).  Choosing the "-M" option creates a 3D Studio  model
  303. in which it's easy to change the appearance of specific kinds of atoms
  304. and bonds; just go to the Material editor, get the material  you  wish
  305. to  change  from the scene, modify it as you like, then put it back to
  306. the scene and re-render.  You can use the "-M" option  in  conjunction
  307. with  libraries which define materials for various elements and bonds,
  308. as well.
  309.  
  310. RENDER UNTO OTHERS
  311. ==================
  312.  
  313. By specifying an output file with an explicit extension, you can cause
  314. CINECHEM to create an input file for any of the following renderers:
  315.  
  316.         Extension               Renderer
  317.         ---------               --------
  318.  
  319.           .3DS                  3D Studio (default)
  320.           .NFF                  StingRay
  321.           .RIB                  Autodesk RenderMan
  322.           .POV                  Persistence of Vision Raytracer
  323.  
  324. None of the other renderers support animation, so even if you supply a
  325. snapshot file from a molecular dynamics simulation, only  a  rendering
  326. of  the initial image will be created.  The material specifications in
  327. configuration files and the  optional  assignment  of  material  names
  328. based  on  element  and bond types affect only 3D Studio output files.
  329.  
  330. For example, to render a system  called  MYDNA.HIN  into  a  Microsoft
  331. Windows  bitmap  file  with  a  resolution  of  640x480  pixels  using
  332. StingRay, use the commands:
  333.  
  334.     CINECHEM mydna mydna.nff -x640 -y480
  335.     STINGRAY mydna
  336.  
  337. You can then view the resulting MYDNA.BMP  file  with  your  favourite
  338. Windows bitmap display program.
  339.  
  340. StingRay
  341. --------
  342.  
  343. StingRay (STINGy RAY tracer) is a  public  domain  raytracer  included
  344. with  CINECHEM.   It  allows  users  to  get  started  in high-quality
  345. molecular  modeling  rendering  under  Windows  without  the  need  to
  346. purchase  3D  Studio.  For some applications (particularly those where
  347. reflection and refraction are important, or where precise rendering of
  348. sphere  and  cylinder  contours are important, as opposed to polygonal
  349. mesh approximations) it produces superior results.  Since StingRay  is
  350. a  batch  renderer  with  no user interface (or even display support),
  351. customising the pictures it  generates  requiring  editing  the  model
  352. (.NFF)  file with a text editor; this is obviously a lot less friendly
  353. than 3D Studio, but experts can create very classy images that way.
  354.  
  355. Autodesk RenderMan
  356. ------------------
  357.  
  358. Autodesk  RenderMan is Autodesk's licensed version of Pixar's renderer
  359. which implements the portable RenderMan  scene  description  language.
  360. AutoShade  users who possess a copy of Autodesk RenderMan can use that
  361. renderer on HyperChem models by specifying an extension of  ".rib"  on
  362. the CINECHEM output file.  The ".rib" file written by CINECHEM will be
  363. configured to render with very high image quality (and correspondingly
  364. slow  rendering  speed),  with the image size, width, and aspect ratio
  365. given by options on the CINECHEM command line (defaults are a  640x480
  366. pixel  image  of  square  pixels).   Output is written to a Truevision
  367. Targa (.TGA) file with the same name as the input .RIB file.  You  can
  368. change  all  of  these  parameters  by  editing  the  .RIB file before
  369. processing it with RenderMan.
  370.  
  371. Persistence of Vision Raytracer
  372. -------------------------------
  373.  
  374. The  Persistence  of  Vision  raytracer  is  a  descendent  of the DKB
  375. raytracer developed by David K. Buck.  It was subsequently extended by
  376. a  team  of  volunteers  on CompuServe led by Drew Wells.  POVRAY is a
  377. thoroughly professional, high-end rendering  engine  which  implements
  378. primitives  and  provides  capabilities  absent  from  many  expensive
  379. commercial  products.   Surfaces  and  solids  up  to   quartics   are
  380. supported,  along  with  deformable "blobs", texture and bump mapping,
  381. and CSG operators.  The Persistence of Vision raytracer is essentially
  382. in  the  public  domain,  but there are restrictions on its commercial
  383. dissemination which preclude supplying  it  with  CINECHEM.   You  can
  384. obtain  a  current  copy  of  POVRAY  (including source code) from the
  385. COMART forum on CompuServe.  POVRAY usually lives in Data Library  16,
  386. but check the "recent uploads" sections since CompuServe "saves space"
  387. by not duplicating the latest updates into the sections in which  they
  388. will eventually reside.
  389.  
  390. WHAT IS THIS "STINGRAY", ANYHOW?
  391. ================================
  392.  
  393. 3D  Studio combines a powerful collection of rendering facilities with
  394. an unparalleled user interface to animation which makes it the product
  395. of  choice  for  high-end presentations; the awards it has won and the
  396. work produced with it demonstrate this.
  397.  
  398. But  3D Studio has one major drawback; it's *expensive*.  Chemists are
  399. poor.  It's very hard to justify a US$3500 out of  pocket  expense  to
  400. produce  pictures  that  spice  up  one's publications.  But if people
  401. could just get a taste of high-end rendering, then they'd  want  *more
  402. and  more* and eventually be satisfied with nothing less than the Real
  403. Thing, including animation.
  404.  
  405. Enter StingRay.  StingRay stands  for  "STINGy  RAY  tracer";  it's  a
  406. slightly  extended  implementation  of  the "MTV Raytracer" originally
  407. implemented by Mark VandeWettering, then of the University of  Oregon.
  408. The  author  released  this  ray tracer into the public domain totally
  409. free of restrictions:
  410.  
  411.     This program is public domain.  Feel free to modify it, hack
  412.     it, use it inside other programs, and even sell it.  I wrote
  413.     it  to  better  understand raytracing and hope that it helps
  414.     others understand the raytracing process as well.
  415.  
  416. StingRay is stingy in that it's  free  to  acquire  (including  source
  417. code),  but  it's  rich in functionality; in fact, it provides most of
  418. the facilities found in top-of-the-line molecular  rendering  systems.
  419. Its  shortcomings are mostly in the representation of complex geometry
  420. which isn't used in molecular modeling, and in fancy  optimisations to
  421. speed up the rendering process.  The quality of the the images created
  422. is entirely comparable to those created by commercial products.
  423.  
  424. StingRay is called with a command of the form:
  425.  
  426.     STINGRAY [options] input[.nff] [output[.bmp/.tga]]
  427.  
  428. The  input  file  is  assumed  to be a scene description in a slightly
  429. extended version of Eric Haines' Neutral File Format (NFF).  The  only
  430. extension  supported  by  STINGRAY  is  a new "aspect" statement which
  431. permits specification of pixel aspect ratio for non-square screens.
  432.  
  433. StingRay creates output image files in either Microsoft Windows Bitmap
  434. (DIB)  format  (.BMP  files)  or in TrueVision Targa-24 (.TGA) format.
  435. The format of the output file depends on the extension  given  on  the
  436. output  file  name.   If  no output file name is specified, the output
  437. file will be written in Microsoft Windows bitmap format  to  the  file
  438. <input>.BMP.
  439.  
  440. StingRay always creates a full colour image (24 bits per  pixel).   If
  441. your display does not support full colour images (or a subset thereof,
  442. such as the 16 bit per pixel "high colour" displays), be sure  to  use
  443. an image viewing program that intelligently compresses the full colour
  444. image into one compatible with your display.  If  you  just  view  the
  445. bitmap on your 256 colour display with Microsoft Paintbrush or WinGIF,
  446. you'll be disappointed since the true colour image  will  be  brutally
  447. crushed into the Windows default colour palette.  To do justice to the
  448. image,  you need to intelligently flatten it to a custom-generated 256
  449. colour gamut.  You can do this with the ANICONV utility supplied  with
  450. Autodesk Animator PRO, with the public domain PICLAB program available
  451. on CompuServe or, if you're a Unix user, with the  PBMPLUS  utilities.
  452. If  the utility you're using doesn't read .BMP files, you can create a
  453. Targa (.TGA) file by executing StingRay as follows:
  454.  
  455.     STINGRAY mydna mydna.tga
  456.  
  457. ANICONV,  PICLAB,  and  PBMPLUS  all  process  full colour Targa files
  458. without difficulty.  A copy  of  the  current  release  of  PICLAB  is
  459. included   with  CINECHEM;  it  is  also  unrestricted  public  domain
  460. software.
  461.  
  462. You can control the rendering process by  specifying  options  on  the
  463. STINGRAY command line:
  464.  
  465.     -Aratio         Set screen aspect <ratio>
  466.     -F              Fast and cheap antialiasing
  467.     -Josamp         Antialias by oversampling <osamp> times
  468.     -Q              Quiet (no sign-on line)
  469.     -T              Show progress by line number
  470.     -U / -?         Print this message
  471.     -V              Verbose: print model and timing statistics
  472.     -Xpixels        Set screen width to <pixels>
  473.     -Ypixels        Set screen height to <pixels>
  474.  
  475. Normally, the image size and aspect ratio are specified  in  the  .NFF
  476. file  that  defines  the  model to be rendered; you may override these
  477. values with the "-A, -X, and -Y" options.   The  first  time  you  run
  478. StingRay  you  may  be  disappointed  with the results; you may notice
  479. "jaggies" and other rough edges  that  don't  look  like  high-quality
  480. contemporary  renderings.   There's  an  unavoidable  tradeoff between
  481. image quality and rendering time, and StingRay implements  this  in  a
  482. very  brutal fashion: N squared time.  The "-Jn" switch, which enables
  483. stochastic oversampling of subpixels, controls  the  tradeoff  between
  484. speed  and  quality.   If  you specify "-J16", each pixel of the final
  485. image will be the average of 16 randomly positioned  subpixels  within
  486. the  box  bounding the pixel in image space.  The resulting image will
  487. be *beautiful*, but it will take *sixteen times* as long to create  as
  488. a  simple  image  with no oversampling.  More sophisticated renderers,
  489. including POVRAY, use an adaptive oversampling  algorithm  which  only
  490. calculates  additional rays after detecting a sharp edge in the image;
  491. StingRay admits of no such sophistication.  It's slower, but the image
  492. quality is impeccable.
  493.  
  494. As  an  alternative  to exhaustive oversampling with the "-Jn" switch,
  495. you can select quick and dirty smoothing with the  "-F"  switch;  this
  496. simply  averages groups of four pixels.  This takes the bite off rough
  497. edges at the cost of a subtle blur to the overall image.
  498.  
  499. HARDWARE AND SYSTEM REQUIREMENTS
  500. ================================
  501.  
  502. CINECHEM and StingRay are intended to be used by  HyperChem  customers
  503. on  the same machines on which they run HyperChem.  Both were produced
  504. with  WATCOM  C  9.0  and  a  PharLap  DOS  Extender  which  is  fully
  505. DMPI-compliant and runs either under a raw DOS environment or within a
  506. DOS window in Windows  3.1.   If  you're  running  HyperChem  on  your
  507. machine  under  Windows 3.1, you should have no trouble running either
  508. CINECHEM or StingRay in a DOS window.  (Note that this permits you  to
  509. save  a  model  from HyperChem, process it with CINECHEM, render it in
  510. the background with StingRay, and view the results with a BMP  display
  511. program, all without ever leaving Windows.)
  512.  
  513. CINECHEM's  memory requirements vary based upon the number of atoms in
  514. the model being  generated  and,  for  an  animation,  the  number  of
  515. snapshots  to  be  rendered.   In most cases, one or two megabytes are
  516. plenty.  Lengthy animations of huge  molecules  can  require  lots  of
  517. memory,  but  you'll probably run out of patience or disc space before
  518. RAM is exhausted.
  519.  
  520. StingRay is as conservative in its memory usage as it is profligate in
  521. consuming CPU cycles.  Essentially, only the model is kept  in  memory
  522. (unlike  renderers  which  require  enormous  "reflection maps" and/or
  523. "shadow maps"), so one  or  two  megabytes  should  suffice  for  huge
  524. molecules and high resolutions.
  525.  
  526. StingRay requires a math coprocessor, but CINECHEM  doesn't--it's  not
  527. sufficiently compute bound that it would benefit from the restriction.
  528. Neither program benefits from a Weitek chip, if present.
  529.  
  530. DETAILS AND DE BUGS
  531. ===================
  532.  
  533. CINECHEM attempts to create 3D Studio camera and light  objects  which
  534. reproduce  the  same  view of the molecule in 3D Studio that HyperChem
  535. displays when viewing the same .HIN  file.   Unfortunately,  HyperChem
  536. doesn't  indicate  if a perspective view was enabled.  CINECHEM always
  537. creates a perspective view (except when generating a RenderMan  file),
  538. because  all  the  renderers  other than RenderMan work exclusively in
  539. perspective.  Since HyperChem usually places the  default  camera  far
  540. away  from  the  molecule,  perspective  effects are not normally very
  541. great, but in some cases you'll want to adjust the camera's  field  of
  542. view   to  fill  the  frame  with  the  molecule,  taking  account  of
  543. perspective.
  544.  
  545. The   version   of   3DSLIB  used  to  build  CINECHEM  doesn't  allow
  546. specification of an arbitrary viewport configuration.   You're  either
  547. stuck  with  the  3D  Studio  default configuration or one full-screen
  548. viewport to your specifications.  Rather than fill the screen with the
  549. camera  viewport  (from  which  you  can't adjust the camera and light
  550. locations), I opted for the default configuration which  requires  you
  551. to  type "C" in a viewport to see the image to be rendered, but avoids
  552. endless fussing if you want to adjust the camera or light.
  553.  
  554. If  the  "-M"  option  is not specified, CINECHEM has no need to place
  555. material  definitions  in  the  .3DS  file  it  creates--it's  relying
  556. exclusively  on  materials already defined in libraries accessed by 3D
  557. Studio.  Nonetheless, CINECHEM defines  a  material  called  "Void  of
  558. space",  which  it never actually assigns to an object.  Why?  Because
  559. if it doesn't, when you load the .3DS file, 3D Studio issues the  jerk
  560. alert:
  561.  
  562.             CAUTION: File contains antiquated
  563.             data type, please re-save
  564.  
  565. which is as annoying as it is grammatically wrong (comma-splice),  but
  566. if  and  when  somebody  provides  me a version of 3DSLIB that doesn't
  567. cause this, I'll be more than happy to remove  the  nugatory  material
  568. definition.  OK?  Cancel?
  569.