Welcome to Rayshade-M ! Rayshade-M is a Macintosh port by Adam Lock, of the poular Unix ray tracer Rayshade. The original rayshade was written by Craig Kolb and others. The source has been taken from version 4 patch 0, with some additions from other patch releases. For the first time it is possible to design a scene from within the ray tracer itself, and make changes online. This makes the task of constructing scenes much easier than previously. It is no longer necessary to learn the Rayshade scene description language, since everything is controlled through windows and dialogues. Because the scene is represented visually, it is possible to 'fine tune' a scene without the laborious task of continually rendering test images. Once the scene is finished, a rayshade script can be generated which is compatible with all other versions. I have added a few features which make Rayshade-M much better suited to the Macintosh: - Fully reentrant code. Rayshade-M is capable of loading more than one script per application lifetime. - Full control of rendering thorugh the Macintosh WIMP system. - On screen image generation - Images saved in PICT format - Built scene editor allows the user to create new scenes and alter existing ones. The scene is shown on-screen in a 3 window orthographic projection, and as an object list. - Script generator. A script is generated from the scene being editted, which is compatible with all other versions of Rayshade. The generator currently has no support for animation, or external files such as color maps. Because of time restrictions, I was unable to include any editor support for CSGs, animation or some types of light. Scenes which contain any of these are still parsed and rendered, however the editor does not allow for creation or manipulation of these objects. In order to run Rayshade-M you will need: - Mac II with at least 4 megs free, a math coprocessor and 32bit Color QuickDraw - 640x480 resolution monitor (or better). 24 bit displays will produce the best on-screen representation of what the image looks like. Monitors with less colors will show a dithered version of the image. The Future ========== I am no longer in the position where I am able to fix the bugs or add new features to rayshade-M. Therefore, I have included the source so that if you think the program has potential, you can change things yourself. I have included my email address at the end of this .readme so that you know where to reach me if you have to. Please note that this address expires at the end of June 1992 ! Contents ======== In rayshade-M.sit: Ray - executable Source } Headers } rayshade.pi.rsrc }--- Source code, project and resource files adsANSI } rayshade.pi } Pix - Directory of example pictures in PICT format + Some Examples In rayshade-M.manual.sit: rayshade-M.manual - Some user documentation The user documentation is a bit old. I did have a more recent syntactically correct version, but I cant find it ! Known major bugs ================ - Window refreshes get extremely irritating with large scenes - Scripts must be located in the Rayshade-M directory - Object deletion is flawed and fails sometimes - Large object lists are often corrupted - Texturing mapping looks odd at higher ray tree depths + Plus numerous smaller bugs The motto here is save often ! Wishlist ======== - Wireframe 3d preview - Replacement of the object creation dialogue with a drag and click style design system - Editor support of animation and CSG - Fractal heightfield generation - No bugs ! - Better memory management - Support for extra features which have been produced for Rayshade, such as rotsplines, projectors, colored blobs etc. - Better object orientation within the code - Image mapping using PICT input files - Support for the Utah Raster Toolkit. - Support for atmospheric effects such as fog & mist =============================================================================== o Adam Lock cmp9133@sys.uea.ac.uk < \ / > University Of East Anglia, England ===============================================================================