@page:contents@Contents


                           

                           
    @Sprite:Wyvern@                
      _______________________________________________________

          @goto:register: How to Register and what you get       @
          @goto:install : Setting up Ray3d-Pro on your computer  @
          @goto:intro1  : Introduction to raytracing             @
          @goto:intro2  : Introduction to Ray3d-Pro              @
          @goto:using   : Using Ray3d-Pro                        @
          @goto:custom  : Customizing Ray3d-Pro                  @
          @goto:menus   : Help on menu entries                   @
          @goto:tutorial: Tutorials                              @
          @goto:copyright^contents: Copyright and Credits                  @

   Ray3d-Pro supports context sensitive help when this help reader
   application is loaded. To receive help on a specific option or
   tool in !Ray3d-Pro, hold down CONTROL and click on the option with
   the mouse. If there is no help available you will hear a beep.
   
@end@
@Page:register@How to register

@colour:11@   Why should I register?

   The Public Domain release of Ray3d-Pro has been limited in the number
   of objects that may be used to create a scene. This number depends on
   what objects you use, but it is around the 20 mark.

   Registration will remove this limit, allowing Ray3d-Pro to be used to
   it's full potential - scenes with over 7000 objects have been created
   and raytraced (this depends on the amount of memory in your system).

   Many of the options in the PD release are unavailable because of this
   restriction, such as scaling spheres, cylinders and cones, creating
   fractal shapes, complex CSG shapes, etc. All of these functions are
   fully operational in the full release.

   There are also some support applications that accompany the full
   release which allow you to import scenes from other applications in
   different file formats. Also included is a utility which will take
   a !Draw file and import it into Ray3d-Pro - thus allowing you to use
   text in your images.

@colour:11@   How do I register?

   To register and receive the full version of Ray3d-Pro, send a cheque
   (or eurocheque) for 10 UK pounds made payable to "Robert Taylor" to
   the address below. If you live outside Europe, then contact me at
   this address and I will discuss other means of payment.

   Send the cheque to:   Robert Taylor
                         Wyvern Software
                         5 Mayfield Grove
                         Skegness
                         Lincolnshire
                         UNITED KINGDOM
                         PE25 3RY

   remembering to include a return address!

   @colour:11@Further versions

   Registration allows you to receive program updates for free, by
   sending your registration disk to the above address and enclosing
   a stamped addressed envelope.

   IF there is sufficient interest in Ray3d-Pro, I will continue to
   work on it. Planned updates include image mapping, full script
   language support, libraries and animation support.

@end@
@page:intro1  @Introduction to raytracing

@colour:11@   Introduction to raytracing

   Raytracing is the technique used for generating realistic pictures
   from a 3d scene. Each ray of light is traced from where it hits
   the scene, back to the light source it came from. This process then
   ensures that the scene generated is close to real life because it
   follows the same physical laws.
   
   Ray3d-Pro does not actually do the raytracing, it simply defines
   the scene and passes this information to the selected PD raytracer,
   which then raytraces the scene.

@end@
@page:intro2  @Introduction to Ray3d-Pro

@colour:11@   Introduction to Ray3d-Pro

   This document describes !Ray3d-Pro, a cheaper  alternative to other
   commercial raytracing packages, but which still has lots of features.

   !Ray3d-Pro allows the user to create a scene in 3 dimensions by using
   a graphical editing system, which can then transformed into the
   textual data needed to raytrace a scene by Public Domain raytracing
   packages. 

@colour:11@   Loading and Running

   To run the application, double click on the !Ray3d-Pro icon in the
   normal way.

@colour:11@   The Ray3d-Pro world
   
   Scenes generated in the Ray3d-Pro world consist of a number of objects
   called primitives. These can be of a number of pre-defined shapes
   such as cone, sphere, box etc. In order for an object to be seen, it
   must have a surface associated with it. Surfaces specify the colour
   of the object, whether it is mirror-like, transparent and other such
   factors.
   
   Objects may also have a texture applied to them, which may be of a
   number of types. There is wood, marble, bumps, checker, gloss and
   blotch.
   
   The user also sets the position of the observer within the scene and
   the direction that they are looking in. It is possible for the
   observer to be placed within a transparent object, such as a goldfish
   bowl, or from any distance.
   
   Finally, in order to be able to draw the scene, there must be light,
   and Ray3d-Pro allows two different forms of lighting.

@colour:11@   Using the editor
   
   The 3d editor has been designed to be as easy to use as possible,
   although some people may find the @goto:tri     :tri-view@ system difficult to work
   with. In this case, it is possible to switch to a single view which
   is similar to that used by other packages (eg: Euclid).
   
   When !Ray3d-Pro has been loaded, clicking on the icon on the icon bar
   brings up five windows. Three of these windows show views onto the
   Ray3d-Pro world, while the fourth and fifth are a toolbox and object
   list.

   All of the objects within a scene are listed within the object list
   window. Groups of objects are listed at the top in red, with single
   objects listed below in black. Clicking on an object with the SELECT
   mouse button will select the object and deselect everything else, while
   clicking with ADJUST will cause the object to be added to those already
   selected.

   It is possible to move into a group by clicking on the arrow on the
   right hand side of the group name. In this manner you can create and
   use groups within groups within groups, etc.
   
   All of the most used operations can be found on the tools window.

@colour:11@   Bugs, Features and Cautions
   
   Unforeseen errors are sometimes reported as Internal error and
   a message. If you get one of these, let me know what happened with
   as much information as possible, namely:
   
      Machine type, OS version and memory available
      Version of !Ray3d-Pro
      What was being done at the time
      Error message or other symptoms
      Is the problem repeatable?
      Is the problem confined to just one scene?

@end@
@Page:tri     @Tri-view

@colour:11@   Tri-view
   
   Tri-view is the name given to the form of 3d representation that
   !Ray3d-Pro uses in order to make 3d editing possible.

   !Ray3d-Pro opens three windows, each of which looks at the world from
   a different direction. By using all three of these windows it is
   possible to represent the 3 dimensional world.

   If you imagine a cube, then the plan view is what you see if
   looking from above straight downwards. The front and side views
   represent what you would see if looking from the front and side
   respectively.

   When you are designing your scene, I suggest you First click in the
   Front or Side view windows to set the height of the object. Then
   click in the plan window to decide where the object will be placed.

@end@
@Page:install @Installation

@colour:11@   Installation

   The !Ray3d-Pro package consists of the following directories:

        * !Ray3d-Pro
        * !Help+
        * !Shade4
        * !RayShade
        * Rayfiles    (a directory of example files)

@colour:11@   Hard Disc

   It is a simple matter to install !Ray3d-Pro onto a hard disc. Simply
   copy all of the supplied applications into the required directory
   on your hard disc in the normal RISC OS way.

@colour:11@   Floppy Disc

   To set !Ray3d-Pro up on a floppy based system I recommend that you split
   these directories over two discs.

   The first disc, which you should use to design your scenes and save
   them to will need the following directories:

        *  !Help
        *  !Ray3d-Pro
        *  RayFiles

   Note that !Help is included on this disc, as you might need to refer
   to it while creating a scene.

   The second disc should be used when you wish to raytrace a scene, and
   should contain:

                *  !RayShade
                *  !Shade4

@end@
@Page:using   @Using Ray3d-Pro

          @goto:basics  : The Basics                             @
          @goto:obj_list: The object list                        @
          @goto:toolbox : The toolbox                            @
          @goto:creating: Creating objects                       @
          @goto:delete  : Deleting objects and groups            @
          @goto:editing : Editing functions                      @
          @goto:viewing : Setting the observer and target point  @
          @goto:preview : 3d preview                             @
          @goto:surfaces: Creating surfaces                      @
          @goto:linking : Linking surfaces to objects            @
          @goto:textures: Using textures                         @
          @goto:csg_desc: Constructive Solid Geometry            @
          @goto:renderng: Rendering scenes                       @
          @goto:script  : Simple script language                 @
          @goto:special : Special functions                      @
          @goto:importer: Importers and tools                    @
          @goto:v1_notes: Notes for !Ray3d v1.xx users           @

@end@
@page:obj_list@The object list

@colour:11@   The object list

   All of the objects within a scene are listed within the object list
   window. Groups of objects are listed at the top in red, with single
   objects listed below in black. Clicking on an object with the SELECT
   mouse button will select the object and deselect everything else, while
   clicking with ADJUST will cause the object to be added to those already
   selected.

   Once objects and groups have been selected, many operations can be done
   with them such as grouping, hiding, rotating, scaling, etc.

   It is possible to move into a group by clicking on the arrow on the
   right hand side of the group name. In this manner you can create and
   use groups within groups within groups, etc.

@colour:11@   Leaving a group                   @sprite:parent@

   Clicking on the parent icon situated below the list returns you
   to the group above the one you are in now.

@colour:11@   Select All                        @sprite:select@

   Clicking on the select all icon, or choosing the Select all
   option from the select sub-menu on the main program menu will
   cause all the objects in the currently displayed group to become
   selected (that is the objects currently displayed in the object
   list).

@colour:11@   Clear selection                   @sprite:unselect@

   Clicking on the clear selection icon in the toolbox, or choosing
   the Clear option from the select sub-menu will deselect any
   objects which are currently selected.

@colour:11@   Grouping

   It is often desirable to group several objects together so that
   they may be moved, scaled, rotated, etc. as if they were one
   object.

   Another benefit of grouping objects together is that it reduces
   the number of objects in the main object list, and thus locating
   an object is easier.

   A side effect of grouping objects that are close together is that
   it can speed up the rendering time for a scene. Bearing this in
   mind it is a good idea to group items together with a little thought.

@colour:11@   Grouping objects together         @sprite:group@

   To group the selected objects together, first enter a new unique
   name in the writable icon at the bottom of the Toolbox.

   Now click on the group icon, or select group from the select sub-
   menu which can be found on the main program menu.

@colour:11@   Removing objects from a group     @sprite:ungroup@

   To remove the selected objects from a group simply click on the
   ungroup icon in the toolbox, or select ungroup from the select
   sub-menu in the main program menu. The objects will not be deleted,
   but will instead be placed in the parent group to the one they
   were in before.

   Any groups which become empty after this operation are deleted.

@colour:11@   Moving objects between groups     @sprite:between@

   To move objects from within one group to within another, select
   the objects you wish to move, and then enter the group that you
   wish to move them into. Now click on the move icon.

@colour:11@   Rename                            @sprite:rename@

   It is possible in !Ray3d-Pro to rename any selected objects after
   you have already created them. This also applies when you select
   multiple objects, because each will be renamed to the new name
   specified, with an additional number at the end.

   To rename objects once they have been created, type in the new name
   into the writable icon at the foot of the toolbox, and then click
   on the rename icon.

@colour:11@   Copying objects                   @sprite:copy@

   To copy objects, lights or groups simply select them and then
   click on the copy icon. Copied items will appear in the same group
   as the original object, group or whatever.

@colour:11@   Hiding.                           @sprite:hide/show@

   Sometimes, when creating a large scene it becomes impossible to
   see exactly where points are being positioned due to other objects
   getting in the way.

   !Ray3d-Pro allows you to hide objects so that they are not shown
   in the view windows. They will however be present if the scene
   is raytraced.

   To hide objects, simply select them on the Object list and then
   choose the hide option off the select sub-menu on the main
   program menu, or click on the hide/show icon in the toolbox.

   So that you can tell that an object has been hidden, the name of
   it will appear in blue on the object list.


@colour:11@  Showing hidden objects             @sprite:hide/show@

  To re-display hidden objects in the view windows, select the desired
  objects on the object list and then choose the show option from
  the select sub-menu on the main program menu, or click on the show
  icon.

@end@
@Page:basics  @The Basics

@colour:11@   What needs to be done to create a scene.

   To create a scene, you must first define the objects that will be
   raytraced. Each of these objects must then be given a surface which
   determines the colour, reflectivity, etc. of the objects, and
   optionally a texture to apply such as marble.

   The observer must be placed at a point in the scene, as well as
   another target point which is what the observer will look at.

   Finally, light must be present to raytrace a scene, so up to ten
   light sources may be defined.

@colour:11@   Saving                            @sprite:save@

   To save your scene, you do it in the normal RISC OS manner, using
   the save option which is located in the Project sub-menu on the
   main program menu. If your scene has already been saved, you may
   save again using the same name by clicking on the save icon in
   the toolbox.

@colour:11@   Moving around the !Ray3d-Pro world

   To view a different part of the scene simply use the scroll bars
   on the view windows.

   To locate a point in three dimensions it is necessary to click
   the mouse in two of the three view windows. This is because in 3d
   a point has three coordinates (x,y,z) and clicking in one window
   only sets two of the coordinates. Clicking in the second window
   will set the third coordinate.

@colour:11@   Selecting points                  @sprite:point@

   When this icon is selected, clicking in the view windows will set
   the position of the cursor which is shown as a blue cross.
   If you experiment moving the cursor around you will get the hang
   of the tri-view system.
                                                
@colour:11@   Zooming                           @sprite:zoomin@    @sprite:zoomout@

   These two icons located in the toolbox zoom in or out of the scene.
   Clicking on one will cause the scene to be redrawn at a different
   zoom factor.

   After zooming the window, the scene is always positioned so that
   the cursor appears in the centre of the window. So to zoom in on
   a specific point, position the cursor on the point of interest and
   click on the zoom in icon.

   It is also possible to set the zoom by selecting the desired zoom
   factor from the zoom sub-menu on the main program menu.

   Note: The minimum zoom is 100% and the maximum zoom is 800%

@end@
@page:tutorial@Tutorials

   @Colour:11@Tutorial
   
   This tutorial takes you through the steps of creating a scene ready
   for raytracing. The scene can then be loaded into !RayShade which
   will produce the finished raytraced picture. If you are a complete
   beginner to raytracing I suggest you read the introductions
   
   The scene we are going to raytrace is not going to be anything
   spectacular - just a sphere suspended in mid air. This should however
   get you used to using !Ray3d-Pro and lead you on to experimenting.
   
   @colour:11@Loading !Ray3d-Pro
   
   To load !Ray3d-Pro, simply double click on it's icon in the directory
   viewer, and it will install on the icon bar.
   
   @colour:11@The views
   
   Clicking on the !Ray3d-Pro icon on the icon bar will bring up three view
   windows and the toolbox.
   
   The view windows show a wireframe view onto the scene you are designing
   from three different positions. This gives you a plan, side and front
   view of your scene.

   All of the objects in the current scene are listed in another window,
   and any object may be selected by clicking on it's name. Clicking with
   SELECT will select the object you clicked on and nothing else, while
   clicking with ADJUST will select the object in addition to any others
   already selected.

   Another window will have opened which contains a number of tool icons.
   These may seem confusing at first, but you will soon learn what they
   mean.

   The currently selected tool is shown with a shaded background.
   It should be the select icon at the moment.                    @sprite:point@

   @colour:11@Creating a sphere
   
   Clicking anywhere within the view windows will position the cursor
   which is used to determine where the centre of the sphere will be.
   
   By clicking in the windows, move the cursor to any position
   you wish, and then click on the sphere icon in the toolbox.    @sprite:sphere@
   
   The sphere tool should now be shaded to indicate that it is the tool
   currently being used, and clicking in the view windows will alter the
   size of the sphere.
   
   When the size of the sphere is satisfactory, click on the ADJUST
   button while the mouse pointer is over a !Ray3d-Pro window or click
   on the set icon in the toolbox. The sphere will then become part of
   the current scene, and it's name appear will be added to the list
   of objects.
   
   If at any time you wish to abandon creating a sphere, click
   on the select icon.                                            @sprite:point@
   
   @colour:11@Setting up a target and observer
   
   To set up the target (what the observer will look at),
   click on the target icon in the toolbox . Now click anywhere   @sprite:target@
   in the view windows and a red cross will appear to indicate
   the position of the target. By clicking in the centre of the
   sphere in two windows, position the target at the centre of
   the sphere.
   
   To set the position of the observer (where to look from),
   click on the observer icon in the toolbox. Now clicking        @sprite:eye@
   anywhere in the view windows will set the observer's
   position (a red circle).
   
   When both the target and observer are set correctly, choose the
   select tool from the toolbox so that clicking will move the cursor.
   
   @colour:11@Colouring the spheres
   
   In the toolbox, there is an icon that resembles a paint        @sprite:paint@
   pot. Click on this and a new window should appear.
   (alternatively choose 'World  Link' from the menu.)
   
   Within this window is two lists - one shows all the surfaces defined,
   while the other shows all the objects within a scene. Also, on the
   right of the window can be seen the current object, it's associated
   surfaces and texture information.
   
   Choose the sphere you have created (by clicking on it's name in the
   list) and then choose a surface to apply to it (by clicking on a
   surface in the list). The chosen surface should become highlighted.
   
   If you wish to change the surface of an object again - click on the
   current surface to deselect it, and then click on the desired new
   surface.
   
   When you have finished close the window.
   
   @colour:11@Saving the scene
   
   To save the current scene to disc, select the save option in the
   normal way from the 'Project' sub-menu of the main menu.

   @colour:11@Raytracing

   Load the !Shade4 application, and drag the file that you have just
   saved from the directory viewer onto the Shade4 icon on the icon bar.
   You will be prompted to save a text file, which you can now raytrace
   using the Public Domain raytracer !Rayshade. (you will probably have
   been supplied with this).

@end@
@page:custom  @Customizing Ray3d-Pro

@Colour:11@   Customizing !Ray3d-Pro

   There are two ways of customizing !Ray3d-Pro to suit your particular
   needs and styles.

   Firstly, certain settings in !Ray3d-Pro may be saved so that they
   become the default, by choosing @goto:opts:Options@ from the icon bar menu.

   Secondly, !Ray3d-Pro loads default 3d file when it is first run. This
   file may contain anything that makes up a scene, including objects,
   lights, surfaces, etc.

@colour:11@   Saving the default file

   To save the default file, create all the objects, lights etc. which
   you require to be loaded when !Ray3d-Pro is first run. Now choose the
   save default option from the project sub-menu on the main program
   menu.

   Whenever !Ray3d-Pro is run, it will start up with the scene you just
   saved already loaded.

@colour:11@   Loading in the default file

   The default file is loaded when !Ray3d-Pro is first run, but it is
   possible to re-load it later. To do this select the load default
   option from the project sub-menu on the main program menu.

@end@
@page:menus   @Help on menu entries

   The following pages follow the same layout as the menus. By moving
   through these options as if they were a menu, you will get help on
   each menu option.

     @goto:menu_ic: The Icon Bar Menu     @
     @goto:menu_pr: The Main program Menu @
     @goto:menu_te: The Textures Menu     @

@end@
@page:menu_ic@The icon bar menu

     The Icon Bar Menu

     @goto:mi_info : Info        @
     @goto:opts: Options...   @
     @goto:mi_quit : Quit         @

@end@
@page:mi_info @Info

@colour:11@   Info

  This option leads to a sub-menu displaying information about
  !Ray3d-Pro such as the version you have.

@end@
@page:mi_quit @Quit

@colour:11@   Quit

   Selecting this menu option quits !Ray3d-Pro.

   If you have an unsaved scene, !Ray3d-Pro will prompt you to either
   save or discard it.

@end@
@page:menu_pr@The main program menu

     The Main Program Menu

     @goto:mi_proje: Project     @
     @goto:mi_selec: Select      @
     @goto:mi_world: World       @
     @goto:mi_grid : Grid        @
     @goto:mi_zoom : Zoom        @
     @goto:mi_tools: Tools...     @
     @goto:mi_coord: Co-ords...   @

@end@
@page:mi_proje@Project

     Project

     @goto:mi_about: About...     @
     @goto:basics  : Save        @
     @goto:printing: Print       @
     @goto:clearing: Clear       @
     @goto:custom  : Default     @

@end@
@page:mi_about@About...

@colour:11@   About...

   Selecting this option will open up a window with information about
   the current scene. The information shown includes:

     * How many objects have been created
     * How many groups have been created
     * How many surfaces have been defined
     * How many lights are in the scene
     * How many objects are currently selected
     * The name of the group currently displayed in the object list.

@end@
@page:mi_selec@Select

     Select
                                                            
     @goto:obj_list: All          @
     @goto:obj_list: Clear        @
     @goto:obj_list: Hide         @
     @goto:obj_list: Show        @
     @goto:mi_grp  : Group       @
     @goto:delete  : Delete       @
     @goto:rotate  : Rotate      @
     @goto:scaling : Scale       @
     @goto:mirror  : Mirror      @
     @goto:fractals: Fractal     @

@end@
@page:mi_grp  @Group

     Group

     @goto:obj_list: Group        @
     @goto:obj_list: Ungroup      @

@end@
@page:mi_world@World

     World

     @goto:backgrnd: Background.. @
     @goto:linking : Link...      @
     @goto:surfaces: Surfaces...  @
     @goto:add_fog : Fog...       @
     @goto:csg_desc: CSG...       @

@end@
@page:mi_grid @grid

@colour:11@   The Grid

   The grid options are located on the Grid sub-menu which is
   accessible from the main program menu.

   !Ray3d-Pro can superimpose a rectangular grid on the scene. This is
   often useful for lining up objects and for checking their size.
   The grid is shown as horizontal and vertical lines which intersect
   at grid points.

   You can use the grid either just as a general guide for creating
   objects or you can lock points to it, so that they always align with
   points in the grid. When you are creating objects with snap to grid
   on, you will see them attach to the nearest grid point to the mouse
   position.

@colour:11@   Show Grid                         @sprite:grid_on@

   Selecting this option toggles whether the grid should be displayed.

@colour:11@   Snap To grid                      @sprite:gridl_on@

   This switches snap to grid on or off. The grid does not need to be
   visible for this option to function.   

@colour:11@   Variable grid

   This option is the same as auto-resize grid on the @goto:opts:Options@ window.
   When on, this option ensures that the grid size remains constant
   while you are zooming in and out of an image. If this option is off,
   then zooming into an image will cause the grid size to increase,
   and vice versa for zooming out.

@colour:11@   Grid Options

   This sub-menu leads to a window which allows you to set the colour
   and spacing on the grid.

   To change the grid colour, simply select a new colour from this
   window.

   To change the grid size, alter the number in the writable icon.

   Clicking on OK sets the new colour and grid size.

@end@
@page:mi_zoom @Zoom

@colour:11@   Zoom

   This option leads to a sub-menu where you may select a zoom factor
   ranging from 100% to 800%. The current zoom factor is indicated
   by a tick.

   After zooming, the scene is always positioned so that the cursor
   appears in the centre of the window.

@end@
@page:mi_tools@Tools...

@colour:11@   Tools...

   Selecting this option brings up the Toolbox window.

@end@
@page:mi_coord@Co-ords...

@colour:11@   Co-ords...

   Selecting this option opens the Coordinates window which shows
   the coordinates of the mouse pointer as it is moved over the
   view windows. The co-ordinates are in internal world units and
   can be used to correspond to cms, inches, metres or whatever
   is necessary.

@end@
@page:menu_te@The textures menu
@end@
@page:opts@Options...

@colour:11@   Options

   When "Options..." is selected from the icon bar menu, a window is
   opened which allows you to customise many of Ray3d-Pro's features.

   There are three buttons at the foot of the window:

     Save   - will save your settings to disk
     Cancel - will close the window without making any changes
     OK     - will close the window, and make the changes you
              have made.

   When you click on Save, Ray3d-Pro also saves the position of the
   view windows, toolbox, object list and coordinates window so that
   they appear in the same locations when you restart the program.
   Also included is the grid size, and colour.

@colour:11@   Toolbox Size:

   By using this option, you may choose the shape of the toolbox
   window.

@colour:11@   Toolbox icons

   It is possible to remove icons from the toolbox by clicking on them
   in this section of the Options window. Tools which will not appear
   on the toolbox are shown in grey, while those that will appear are
   in colour. To add icons back onto the toolbox, simply click on them
   again.

   You can use this option to reduce the size of the toolbox window, or
   remove icons that you never use.

@colour:11@   Colours

   You might not like the colour system I have designed, and so you can
   change it. To change a colour click on the colour bar with the mouse
   pointer. Clicking withe SELECT or ADJUST cycles through the available
   colours.

@colour:11@   View Type

   Some people prefer the tri-view method of display (like me), but
   other people like to work with only one window on the screen in
   a similar manner to Euclid.

   Selecting single view will replace the tri-view system with a single
   view onto the Ray3d-Pro world. Along the bottom of this single
   view is three icons. Clicking on them changes the view between front
   side and plan views.

@colour:11@   Auto-save

   This option causes Ray3d-Pro to automatically save your work after
   a specified amount of time ranging from 1 to 99 minutes. When the
   time comes for an auto-save you will be prompted on the screen to
   confirm that you want to save the file.

@colour:11@   Preview

   The three dimensional wireframe preview has a couple of options
   associated with it to provide more control over a scene.

   The first is draw the outline of each object in the nearest colour
   available in the current mode to the colour the object will appear
   when raytraced. When this option is off, all objects are shown in
   white.

   The second option is to preview only the objects that are selected.
   This is useful to check that a single part of the scene is turning
   out as you expected, and it also speeds up the preview.

@colour:11@   Auto open Co-ords

   If this option is selected, Ray3d-Pro will open the coordinates
   window when Ray3d-Pro is loaded, or the icon on the icon bar is
   clicked on, or a new file is loaded.

@colour:11@   Auto-resize Grid

   When selected, this option ensures that the grid size remains constant
   while you are zooming in and out of an image. If this option is off,
   then zooming into an image will cause the grid size to increase,
   and vice versa for zooming out.

@colour:11@   Copy: offset objects

   If this option is off when an object is copied, then the new object
   will be created in exactly the same position of the old object.

   If this option is on, then the copied object will appear one grid
   square away from the original object.

@colour:11@   Interactive help

   Please note that interactive help does not mean that this program
   supports the Acorn !Help application, but rather the application
   you are using right now to read this.

   Ray3d-Pro supports context sensitive help when this help reader
   application is loaded. To receive help on a specific option or
   tool in !Ray3d-Pro, hold down CONTROL and click on the option with
   the mouse. If there is no help available you will hear a beep.

   Thus if you clicked on the move icon with CONTROL held down, then
   the help section on moving objects would be displayed.

@colour:11@   Synchronised windows

   While this option is on, moving the scroll bar in one of the view
   windows causes the other view windows to move thus providing a
   view onto the same part of the scene. When this option is off, you
   may move each window's scrollbars indepandantly.

@colour:11@   Auto-scroll windows

   When this option is on, pressing a mouse button near the edge of
   a view window will cause it to scroll in that direction in relation
   to how near the edge you are. This is not recommended for slow
   machines (such as my humble A3000).

@colour:11@   Select distance.

   It is possible to select objects in the world without clicking on
   their names in the object list, but by clicking on them in the
   view window while holding down SHIFT.

   When you do this, all objects within the "select distance" of your
   click and the cursor will be selected.

@end@
@page:creating@Creating Objects

@colour:11@   Creating Objects

   !Ray3d-Pro allows you to create many different types of objects,
   which can then have surfaces and textures applied to them to
   create a realistic scene.


      @goto:c_sp:  Spheres        @   @goto:c_re:  Rectangles     @
      @goto:c_co:  Cones          @   @goto:c_pl:  Planes         @
      @goto:c_cy:  Cylinders      @   @goto:c_tr:  Triangles      @
      @goto:c_bo:  Boxes          @   @goto:c_di:  Discs          @
      @goto:c_ro:  Rounded boxes  @   @goto:c_po:  Polygons       @
      @goto:c_py:  Pyramid        @   @goto:c_li:  Lights         @


   To create a shape, you must first enter the name you wish to give
   your shape into the icon at the foot of the toolbox. If you do not
   do this, !Ray3d-Pro will choose an appropriate  name for you.

   Clicking on the select icon at any time while
   creating a shape will cancel the operation.       @sprite:point@

@end@
@page:c_sp@Spheres

@colour:11@   Creating Spheres                  @sprite:sphere@

   Firstly, position the cursor (the blue cross) where the centre
   of the sphere should be located, and click on the sphere icon in
   the toolbox.

   Clicking in the view windows now will allow you to select the
   radius for your sphere, and when this is satisfactory, click on
   the ADJUST mouse button or click on the set icon in the toolbox.

@end@
@page:c_co@Cones

@colour:11@   Cones                             @sprite:cone@

   Position the cursor at the centre of one end of the cone, and
   then click on the cone icon.

   Now using the view windows, click where the centre of the far
   end of the cone should be. Use the ADJUST button to set this
   point or click on the set icon in the toolbox.

   Clicking in the view windows will now indicate how wide the
   first end of the cone should be, and when this is correct click
   on ADJUST or click on the set icon in the toolbox.

   Do the same thing to set the size of the other end of the cone,
   clicking on ADJUST or the set icon when this is done.

@end@
@page:c_cy@Cylinders

@colour:11@   Cylinders                         @sprite:cylinder@

   Position the cursor at the centre of one end of the cylinder,
   and then click on the cylinder icon.

   Now using the view windows, click where the centre of the far
   end of the cylinder should be. Use the ADJUST button to set this
   point or click on the set icon in the toolbox.

   Clicking in the view windows will now indicate how wide the
   cylinder should be, and when this is correct click on ADJUST
   or click on the set icon in the toolbox.

@end@
@page:c_bo@Boxes

@colour:11@   Boxes                             @sprite:box@

   Position the cursor at the centre of where the box should be
   located, and then click on the Box icon.

   Clicking in the view windows will now set the size of the box,
   and when this is correct click on the ADJUST button or click on
   the set icon in the toolbox

   NOTE: To make boxes which are tilted, or stand on one end, etc.
         You should create a box, and then rotate it.

@end@
@page:c_ro@Rounded boxes

@colour:11@   Rounded boxes                     @sprite:rbox@

   !Ray3d-Pro allows you to define boxes which have slightly rounded
   edges, so that it is possible to do such things as cushions.

   To create a rounded box, perform the same operation as for @goto:c_bo:Boxes@,
   but click on the Rounded box icon instead.

   NOTE: Rounded boxes appear on the view windows as normal boxes,
         the only difference appears when the scene is raytraced.

@end@
@page:c_py@Pyramids

@colour:11@   Pyramids                          @sprite:pyramid@

   To create a pyramid, first position the cursor where a corner of
   the base is to be located, and then click on the Pyramid icon.

   Now, clicking in the view windows will allow you to set the opposite
   corner of the pyramid base. Click on ADJUST when this is correctly
   positioned or click on the set icon in the toolbox.

   Clicking in the view windows again will set the point of the
   pyramid. Click on ADJUST when this is done or click on the set icon
   in the toolbox.

@end@
@page:c_re@Rectangles

@colour:11@   Rectangles                        @sprite:rect@

   Position the cursor at one corner of the rectangle, and then click
   on the Rectangle icon.

   Clicking anywhere in the view windows will position the opposite
   corner of the rectangle, and when this is done click on ADJUST
   or click on the set icon in the toolbox.

   As rectangles are 2 dimensional objects, they may only be defined
   in one of the view windows at a time.

@end@
@page:c_pl@Planes

@colour:11@   Planes                            @sprite:plane@

   Planes are a special sort of rectangle which is infinitely large.
   That is, that it will go on forever. This is useful for creating
   such things as walls, floors and ceilings.

   To create a plane, do it in the same manner as for @goto:c_re:Rectangles@,
   only click on the Plane icon instead. Planes can be easily
   distinguished on the view windows as they are drawn with a dotted
   line.

@end@
@page:c_tr@Triangles

@colour:11@   Triangles                         @sprite:triangle@

   To create a triangle, position the cursor at one point on the
   triangle, and then click on the Triangle icon.

   Clicking in the view windows will position the second point in
   the triangle, and pressing the ADJUST button will set this point.

   Clicking again in the view window will position the third point
   in the triangle. Click on ADJUST when this is correct.

@end@
@page:c_di@Discs

@colour:11@   Discs                             @sprite:disc@

   Discs are 2 dimensional objects, and as such can only be defined
   in one view window at a time.

   Firstly, position the cursor where the centre of the disc is to be,
   and click on the Disc icon.

   Clicking in a view window will now select the radius of the disc,
   and clicking on ADJUST will create the object.

@end@
@page:c_po@Polygons

@colour:11@   Polygons                          @sprite:poly@

   A polygon is a 2 dimensional shape that may have any number of
   sides.

   To create a polygon follow these steps:

      1:  Position the cursor at one point of the shape.
      2:  Click on the polygon icon

      3:  Click in the view windows to position the next point
      4:  Click on the ADJUST button to set this point when it
          is correctly positioned or click on the set icon.
      5:  Repeat steps (3) and (4) until all the points on the
          polygon have been defined.

      6:  Click ADJUST twice to create the object.

@end@
@page:c_li@Creating lights

@Colour:11@   Creating Lights.                  @sprite:light@

   First, position the cursor at the point where the light source is to
   be, and click on the light icon. When you do, a short menu will
   appear with the @goto:li_type:light types@ listed on it. Select the type of light
   you want to create.

   Clicking anywhere in the view windows will allow you to set the size
   of the light. The larger the light is, the more light is cast upon
   the scene.When the light is of the required size, click the ADJUST
   button to create it or click on the set icon in the toolbox.

   Beware: Lights that are too large will make everything in the scene
           appear white and over-exposed.

   To change the colour of a light, simply link a surface to the light
   and the light will cast the same colour light as the surface colour.

@end@
@page:li_type@Light types

@colour:11@   Light types

   Currently there are two types of light sources, although more
   will be added in the future..

@colour:11@   Point light sources

   Point light sources are the default light type used by !Ray3d-Pro.
   They cast very sharp shadows, which can give the scene a distinctly
   computer drawn look. The advantage of them is that they are the
   quickest form of lights to raytrace.

@colour:11@   Extended light sources.

   Extended light sources cast a soft shadow on the world. This
   means that shadows fade from dark to light, giving a more realistic
   effect.

   NOTE: Using extended light sources will dramatically increase the
         time taken to raytrace the scene.

@end@
@page:linking @Linking

@colour:11@   Linking objects, surfaces and textures.     @sprite:paint@

   Up to now, we have created the objects which are to be included in
   the scene, and we have created some surfaces, which define the
   colours and materials such as glass, metal, etc.

   What we havent done however, is to tell !Ray3d-Pro which objects
   should be made up from which surfaces, and everything in the scene
   starts off with a default colour of white.

   To associate surfaces and textures with the objects in the scene,
   select the Link option from the World sub-menu which can be
   found on the main program menu, or alternatively click on the
   paint pot icon in the toolbox.

@colour:11@   The link window

   On the left hand side of the link window are two lists, of which
   the top one displays the objects in the scene, and the bottom one
   displays the surfaces available.

   On the left hand side of the window are icons which allow you to
   specify which @goto:textures:texture@ will be applied to an object.

   Clicking on an object in the top list will choose it for linking
   with a surface and @goto:textures:texture@. Whole groups can be selected by
   clicking on their names next to them, but you may enter a group
   by clicking on the arrow next to it's name if you want to individually
   link surfaces to each part of the group.

   On the top of the right hand side, there are four icons:

           Object:  Shows the currently selected object
        Surface 1:  Shows the main surface associated with the
                    selected object.
        Surface 2:  Shows the secondary surface associated with
                    the selected object.
          Texture:  Shows the texture that will be applied to the
                    object.

   To set the surfaces click on the desired surface names. The first
   name clicked on will become the main surface, and the second surface
   will become the secondary surface. Clicking again on a surface de-
   selects it.

   The secondary surface associated with an object will specify what
   other colours and attributes are used for textures that require
   two surfaces.

   The texture for an object can be changed by clicking on the menu
   icon next to the texture name. This will bring up a small menu with
   the available texture types on it. See the relevant section for more
   about textures.

@end@
@page:surfaces@The Surface editor

@colour:11@   The surface editor.               @sprite:surface@

   The editor is brought up by clicking on the surfaces icon in the
   toolbox, or by choosing the Surfaces option from the World
   sub-menu on the main program menu.

   Under the list of defined surfaces is a writable icon which contains
   the name of the surface being edited / defined which will need to
   be altered if you are defining a new surface.

@colour:11@   Editing a surface

   First choose the surface for editing, or create a new one, and
   then to alter the colour of the object use the red, green and blue
   slider bars. The nearest colour available in the mode you are in
   will be used to show the surface colour.

   The other characteristics which may be altered by clicking on the
   appropriate up / down arrows are:

        @goto:sur_re:Reflectivity    @
        @goto:sur_tp:Transparency    @
        @goto:sur_tl:Translucency    @
        @goto:sur_sl:Speed of light  @
        @goto:sur_sp:Specularity     @

   If the "no shadow" option is on, then when the scene is raytraced
   no shadows will be cast onto any objects with this surface.

@colour:11@   Editing a different surface

   To edit a different surface, click on it's name in the surface list
   at the top of the window.

   Note: Any changes made to the current surface will not be saved unless
         you click on "Set" first.

@colour:11@   Creating a new surface

   To create a new surface, choose the surface it will be most like
   and alter the surface name and any other characteristics required.

   Now click on the Define icon

@colour:11@   Deleting a surface

   Choose the surface to be deleted and click on the delete icon.

@end@
@page:sur_re@Reflectivity

@colour:11@   Reflectivity

   This option determines how reflective a surface is.

       100% = a perfect mirror which reflects everything.
        50% = some reflections can be seen in the object
              eg: a snooker ball
         0% = a matt surface, which reflects nothing.

   NOTE: It is possible to create coloured mirrors, by altering the
         colour of the surface. To create a perfect mirror, each
         red, green and blue component of the surface should be set
         to an equal amount such as 2% 

@end@
@page:sur_tp@Transparency

@colour:11@   Transparency

   This option determines how Transparent a surface is.

       100% = Light will pass completely through the object
        50% = The object appears coloured, and other objects can
              be seen dimly through it.
         0% = Nothing can be seen through the object

   NOTE: It is possible to make coloured transparent objects by
   altering the colour of the surface.

@end@
@page:sur_tl@Translucency

@colour:11@   Translucency

   Translucency is similar to transparency but has a slightly different
   effect. It describes how murky or cloudy an object appears

       100% = Very cloudy
        50% = The object appears slightly cloudy.
              Eg: If the object was also a transparent sphere, it
                  would resemble a crystal ball.
         0% = No effect at all

   NOTE: It is possible to make coloured transparent objects by
   altering the colour of the surface.

@end@
@page:sur_sl@Speed of Light

@colour:11@   Speed of light.

   When light passes through a transparent object, it can be bent,
   which is due to the speed of light altering slightly.

   For example: If you stick your finger into some water, it appears
                to bend where your finger enters the water.








              @sprite:refract@

   !Ray3d-Pro allows you to alter the amount by which the light bends,
   so that you may create surfaces such as water, glass, crystal, etc.

       100% = the light does not bend at all.
        58% = the light bends as much as it does for GLASS.
        50% = the light bends as much as it does for WATER.
        40%   the light bends as much as it does for DIAMOND.

@end@
@page:sur_sp@Specularity

@colour:11@   Specularity

   This value controls how large the highlights on an object will
   appear when a light shines on them.

     Eg: The spot of light on a sphere.

   Larger values of specularity result in smaller highlights, but you
   should find the pre-set value of 25% suitable for most things.

@end@
@page:viewing @Setting the observer and target point

@colour:11@   Setting the observer and target point

   In order for a scene to be raytraced, you must have first positioned
   the observer, and the point at which the observer is looking at.

   The toolbox provides two icons which allow you to set these
   points:

@colour:11@   The observer                      @sprite:eye@

   When this icon is selected, clicking anywhere in the view windows
   will set the position of the observer which is indicated by a
   small red circle.

@colour:11@   The target point                  @sprite:target@

   When this icon is selected, clicking anywhere in the view windows
   will set the position of the point that the observer is looking at,
   which is indicated by a small red cross.

@colour:11@   Using the 3d view                 @sprite:3d@

   When you bring up the 3d view of the scene using the 3d icon in the
   toolbox, there is a pane attatched to the window which allows you
   to alter the observer's location interactively. Clicking on the zoom
   icons, or the arrows in the pane will move the observer point.

   Clicking with ADJUST moves the observer point in larger increments.

@end@
@page:special @Special functions


                           

                           
    @Sprite:Wyvern@                
      _______________________________________________________

          @goto:select_c: Selecting objects using a view window  @
          @goto:add_fog : Adding fog to a scene                  @
          @goto:backgrnd: Background colour                      @
          @goto:fractals: Creating fractal shapes                @
          @goto:to_poly : Converting curved shapes into polygons @
          @goto:printing: Printing                               @
          @goto:importer: Importing Text                         @
          @goto:importer: Importing other file formats           @

@end@
@page:printing@Printing

@Colour:11@   Printing                         

   The Print option can be found on the Project sub-menu, on the
   main program menu.

   Moving over the print option opens a window which shows you the
   current printer driver, and which view will be printed..

   Choose which view you wish to print by clicking on the radio icons,
   and then click on OK to start printing.

   NOTE: To print, you must have a RISC OS printer driver loaded.

@end@
@page:backgrnd@Background colour

@colour:11@   The Background.

   The basis of raytracing is that every ray of light that the observer
   can see is traced back through the scene, hitting, passing through
   or reflecting off each object.

   If the ray of light does not hit any objects then it is given the
   background colour.

     eg: A scene consisting of only a sphere will have many rays that
         do not hit the sphere, and so are coloured black (the default
         background colour).

   !Ray3d-Pro allows you to alter the background colour to any other
   colour that you wish.

   To do this choose the Background option from the World sub-menu
   on the main program menu. This will open a window with three slider
   bars which can be dragged to set the required colour.

@colour:11@   Advanced users

   When using this option you may notice that the background colour is
   constant throughout the scene, which is not always desirable.

   To make the sky fade from light to dark blue in the distance, the
   background colour should be left as black, and a @goto:c_pl:plane@ created where
   the sky / ceiling should be, which you give a blue colour.

@end@
@page:editing @Editing functions


                           

                           
    @Sprite:Wyvern@                
      _______________________________________________________

          @goto:rotate  : Rotate                                 @
          @goto:scaling : Scale                                  @
          @goto:move_obj: Move                                   @
          @goto:mirror  : Mirror                                 @
          @goto:mi_grid : Grids - using and altering             @


@end@
@page:scaling @Scale

@colour:11@   Scaling objects.                  @sprite:scale@

   To scale the selected objects, bring up the scaling window by
   clicking on the scale icon, or by selecting it from the "Select"
   menu.

   In the window, you will see three writeable icons, one for each
   of the directions you can scale an object in. So that you can
   remember which direction X, Y or Z is, you will find that in the
   title bar of each view window it tells you.

   To scale an object simply type in the values and click on OK.

   NOTE: objects will be scaled from the cursor, as in the diagram
   below.









                 @sprite:enlarge@

   @colour:11@Scaling objects by different amounts in each direction

   Some objects (sphere, cone and cylinder) cannot be scaled by
   different amounts in each direction without them being split up
   into polygons. The side effect of this is that the object will
   loose it's curved surface, and will appear made up of small
   sections.

   This can be limited by increasing the Resolution value (the higher
   it is, the smoother the shape), but this also increases the number
   of objects in the scene.

   It is possible to stop curved shapes from getting changed into
   polygons by turning off the "Convert to polygons" option. If you
   do this, then the objects are scaled by the same amount in all
   directions.

@end@
@page:move_obj@Moving Objects

@colour:11@   Moving Objects                    @sprite:move@

   To move the currently selected objects, first move the cursor onto
   the point you wish to move from.

   Now click on the move icon, and click in the view windows to
   indicate where you wish to move the point to. While you are doing
   this you will see a line being drawn from the first point to this
   new point.

   When you have chosen where to move the point to, press ADJUST or
   click on the set icon in the toolbox to move the objects.

   NOTE: clicking on the select icon at any time, will cancel the move
         operation.

@end@
@page:rotate  @Rotate

@colour:11@   Rotate                            @sprite:rotate@

   There are two methods of rotating the selected objects. The first
   is to use the rotate icon on the toolbox, while the second in to
   use the menu option Rotate on the select sub-menu which can
   be found on the main program menu.

@colour:11@   The rotate icon

   To use the rotate icon, select the objects that you wish to rotate,
   and then place the cursor (the blue cross) at the point you wish to
   rotate around.

   Now follow these steps.

     1 - Click on the rotate icon
     2 - Click on one of the points in the objects you wish to rotate
         Press the ADJUST button to set this point
     3 - Click where you want the point in (2) to end up.
         Press ADJUST to set it.

   While you are setting the points in (2) and (3), you will see a
   line being drawn from the centre of rotation to the point.

@colour:11@   Using the menu to rotate

   Using the menu is more tricky, but allows you to accurately set the
   amount of rotation.

   Before using the menu, you must select the objects you wish to rotate
   and place the cursor at the point you want to rotate around.

   Moving over the Rotate option will open a window where three angles
   may be entered for rotation in any of the view windows. These angles
   can be entered by typing them into the icons, or altered by clicking
   on the arrows.

@end@
@page:delete  @Deleting objects and groups

@colour:11@   Deleting Objects and groups       @sprite:delete@

   To delete the selected objects and groups, click on the delete icon
   or choose the delete option from the select sub-menu on the main
   program menu.

   As it is very easy to click on the icon by accident, the mouse pointer
   will change shape. Clicking on the left mouse button or pressing Y on
   the keyboard will perform the delete operation, while anything else will
   abort the operation.

   If you wish to delete all of the objects within a scene then use the
   @goto:clearing:clear@ option

@end@
@page:clearing@Clearing a scene of objects or surfaces

@colour:11@   Clearing a scene of objects or surfaces

   The clear option is located on the "Project" sub-menu from the main
   program menu. It provides a sub-menu which has three options on it
   which operate in the following manner:

     Surfaces - Clears all the defined surfaces
     Objects  - Deletes all the objects and groups in a scene
     All      - Does both of the above

   NB: There is no "are you sure?" message to these options, so be
       careful.

@end@
@page:fractals@Fractalise

@colour:11@   Fractals

   Sometimes, it is desirable to create objects which are not uniform,
   like when we are trying to imitate nature. (mountains, rocks, etc.)

   !Ray3d-Pro allows you to take a triangle, and randomly break it up
   into  number of smaller triangles each of which sticks out from the
   original. (this option only works on Triangles.)

   To fractalise a triangle, select it in the normal manner, and then
   move over the Fractal option from the Select sub-menu on the main
   program menu.

   On the window that appears, you may set the number of triangles that
   !Ray3d-Pro will split each selected triangle into, and the roughness
   of he resulting shape. The roughness value may range from 0 to 9.

@end@
@page:mirror  @Mirror

@colour:11@   Mirror

   To mirror the selected objects about an axis, first select the objects
   that you wish to mirror. Next move the mouse over the mirror option
   on the "select" sub-menu from the main program menu.

   This brings up a window listing all the possible ways that objects can
   be mirrored. Simply select the direction to mirror, and click on the
   OK icon.

@end@
@page:toolbox @The Toolbox

@colour:11@   The Toolbox


   @sprite:sphere@     @goto:c_sp: Create sphere      @      @sprite:box@     @goto:c_bo: Create box         @

   @sprite:pyramid@     @goto:c_py: Create pyramid     @      @sprite:poly@     @goto:c_po: Create polygon     @

   @sprite:cylinder@     @goto:c_cy: Create cylinder    @      @sprite:rbox@     @goto:c_ro: Create rounded box @

   @sprite:rect@     @goto:c_re: Create rectangle   @      @sprite:disc@     @goto:c_di: Create disc        @

   @sprite:cone@     @goto:c_co: Create cone        @      @sprite:triangle@     @goto:c_tr: Create triangle    @

   @sprite:plane@     @goto:c_pl: Create plane       @      @sprite:light@     @goto:c_li: Create light       @

   @sprite:eye@     @goto:viewing : Position observer  @      @sprite:target@     @goto:viewing : Position target    @

   @sprite:zoomin@     @goto:basics  : Zoom in            @      @sprite:zoomout@     @goto:basics  : Zoom out           @

   @sprite:rotate@     @goto:rotate  : Rotate objects     @      @sprite:move@     @goto:move_obj: Move objects       @

   @sprite:scale@     @goto:scaling : Scale objects      @      @sprite:point@     @goto:basics  : Select             @

   @sprite:paint@     @goto:linking : Link surfaces      @      @sprite:surface@     @goto:surfaces: Surface editor     @

   @sprite:csg@     @goto:csg_info: Form a CSG shape   @      @sprite:3d@     @goto:preview : 3d Preview         @

   @sprite:save@     @goto:basics  : Save scene         @      @sprite:grid_on@     @goto:mi_grid : Toggle grid on/off @

   @sprite:gridl_on@     @goto:mi_grid : Toggle grid lock   @      @sprite:hide/show@     @goto:obj_list: Hide/show objects  @

   @sprite:set@     @goto:set_pt: Set point          @

@end@
@page:preview @Preview scene                          

@colour:11@   3d Preview                        @sprite:3d@

   Choosing this option by clicking on the icon in the toolbox will
   present you with a wireframe perspective view of what the scene
   will look like when it is raytraced.

   The @goto:opts:Options@ window allows you to alter the way in which
   the preview works. using one of the options it is possible to get
   !Ray3d-Pro to only preview selected objects, while another causes
   the outline of each objects to be drawn in the colour it will appear
   when raytraced.

   Note: The colour chosen is the nearest one in the current mode. I
         advise changing into a 256 colour mode (or higher if you're
         lucky enough to have a Risc PC).

   The 3d view saves a great deal of time because it is no longer
   necessary to spend hours raytracing a scene, only to find you havent
   selected a very good view, or an item of interest is obscured by
   another object.

@colour:08@   The 3d preview does not show CSG shapes as they will appear in the
@colour:08@   raytrace. It will just display the objects that make up the CSG shape.

@end@
@page:to_poly @Converting curved shapes to polygons

@colour:11@   Converting curved shapes to polygons

   Sometimes you may wish to break curved shape such as a cone down
   into polygons so that you can get a faceted appearance. For instance
   you may be creating a glass which appears faceted instead of smooth.

   The following shapes can be broken down into polygons:

     * Spheres
     * Cones
     * Cylinders

   To break a selected object down into polygons, click on the
   scale icon in the toolbox, and enter a scale value of 100%       @sprite:scale@
   for all three directions. Ensure that the "convert to polygons"
   option is on and click on OK.

@end@
@page:set_pt@Set point

@colour:11@   Set point

   This icon can be used as an alternative to clicking ADJUST while
   creating objects. When this icon is clicked on, it sets fixes the
   current point for operations such as creating objects, moving and
   rotating.

@end@
@page:v1_notes@Notes for !Ray3d v1.xx users

@colour:11@   Notes for !Ray3d v1.xx users

   For those of you that have been using versions of !Ray3d which have
   been supplied by Archimedes World on their cover discs (versions
   1.xx) there is a supplied tool called !v1->v2 which will convert
   your scene files to !Ray3d-Pro files.

   For more information on this tool, see the relevant help file.

@end@
@page:textures@Using textures

@colour:11@   Using Textures                    @sprite:paint@

   To apply a texture to an object, first bring up the @goto:linking :linking@ window
   by clicking on the link icon, or selecting "link..." from the "World"
   sub-menu on the main program menu.

   Now select the object (or group of objects) that you wish to apply
   the texture to by clicking on it. On the right hand side of the
   screen in the "texture" box you will see what the current texture is.

   To change the texture, click on the menu icon to the right of the
   texture option and a short menu will be displayed showing all the
   available textures. Simply select a texture from this menu.

   Some textures have a type field which can be anything from 1 to 4.
   This allows you to select different types of that texture, eg: four
   different woods, four marbles, etc.

   All of the textures can be scaled by altering the "scale" field.
   Thus you could choose a small wood grain, or a huge one.

@colour:11@   None

   When this icon is selected, no texture will be applied to the
   object, which will appear the colour specified by the main surface
   associated with it. This is the default.

@colour:11@   Wood

   Selecting this icon will cause a wood like texture to be applied to
   the object. The colour of the texture is set by the colour of the
   main surface associated with the object.

@colour:11@   Marble

   Selecting this icon will cause a marble like texture to be applied to
   the object. The colour of the marble is set by the colour of the
   main surface associated with the object.

@colour:11@   Checkered

   This texture will cause the object to become checkered, with the two
   surfaces associated with the object controlling the appearance of
   each square. The size of each square may be set by altering the scale.

@colour:11@   Blotch

   This texture will give a blotchy effect where the two surfaces appear
   to fade between each other randomly. The mix % controls how much the
   main Surface  dominates the secondary surface. For example, a value of
   50% means a 50/50 mix, anything less means that there is more of the
   main surface.

@colour:11@   Bump Map

   This applies a random bump map to the object selected. The value it
   takes controls how large the bumps should be.

@colour:11@   Gloss

   This texture makes a mirrored object glossy. A value of 0% gives perfect
   mirror like reflections, while 100% gives fuzzy reflections.

@colour:11@   fbm

   fbm stands for fractional brownian motion and causes the object to
   become lighter and darker in a similar way to the blotch function
   but without creating a second surface. The extra value controls how
   much darker or lighter the blotches appear.

@end@
@page:script  @Simple Script Language

@colour:11@   Simple Script Language

   For all of you out there who would like to be able to write BASIC
   or C programs which generate shapes (such as fractal trees) which
   could be loaded into Ray3d-Pro there is a simple script language.

   At the moment, only three object types are supported, but if there
   is enough interest I will implement more.

   Scripts are simply text files which the user drops onto a Ray3d-Pro
   window to merge the contents of the script with the current scene.

   The script files have there own specific language, which has it's
   own rules, listed below.

@colour:11@   The language

   The script file MUST have the word '!Ray3d-Pro' on the first line
   or Ray3d-Pro will not recognise it as a script file.

   Any line beginning with a # are considered comments and are ignored.

   The file has two distinct sections, a DELARE section and a CODE
   section, and the script is terminated by an ENDCODE statement, so
   a script file looks like this...

@colour:08@   # !Ray3d-Pro
@colour:08@   DECLARE
@colour:08@     ...
@colour:08@   CODE
@colour:08@     ...
@colour:08@   ENDCODE

@colour:11@   The DECLARE section

   Within the DECLARE section there must be two commands, min and max
   which are followed by a colon (:) and a value. These values represent
   the maximum and minimum size of the objects you are describing and
   therefore no objects should reference points outside this range.

@colour:04@     min : <n>
@colour:04@     max : <n>

   So now a script file looks like... (for example)

@colour:08@    # !Ray3d-Pro
@colour:08@    DECLARE
@colour:08@      min : -1000
@colour:08@      max :  5000
@colour:08@    CODE
@colour:08@      ...
@colour:08@    ENDCODE

@colour:11@   The CODE section

   This is where you define the objects that you want to create.
   You may specify a name for the object if you wish ( in quotes)
   but it is not compulsory.

   The commands for creating objects are:

@colour:04@     sphere   "name" ( x y z radius )
@colour:04@     triangle "name" ( x1 y1 z1 x2 y2 z2 x3 y3 z3 )
@colour:04@     polygon  "name" ( n x1 y1 z1 .. .. .. xn yn zn )

   NB: you do not need to specify the "name" if you don't want to.

   Note: the values placed between the brackets may be split over
   new lines to make the code more readable. This is OK so long as
   each value is separated by a space or a new line.

   You may also create groups by the use of a GROUP command which
   takes the form:

@colour:04@     GROUP "name"
@colour:04@     ENDGROUP

   Any objects (or other groups) that are defined between the GROUP
   and ENDGROUP statement are created within the group. In this manner
   you can nest groups, placing objects in each group as required.

   So now an example script looks like...

@colour:08@    # !Ray3d-Pro
@colour:08@    DECLARE
@colour:08@      min : -1000
@colour:08@      max :  5000
@colour:08@    CODE
@colour:08@      GROUP "shapes"
@colour:08@        triangle "tri_1" ( 100 100 0 200 100 0 150 2000 0 )
@colour:08@        triangle "tri_2" ( 100 100 0
@colour:08@                           200 100 0
@colour:08@                           150   0 0 )
@colour:08@      ENDGROUP
@colour:08@    ENDCODE


@end@
@page:importer@Importers and tools

@colour:11@   Importers and tools

   There are a number of applications provided with !Ray3d-Pro (some
   of which are not present in the demo version) which provide extra
   features.

@colour:11@   Importing 3d files from other sources

   For importing 3 dimensional scenes from other sources, there are the
   following applications:

      !Imp_3ds    - This will take a text file created using 3D Studio
                    on the PC, and load it into !Ray3d-Pro. Such files
                    are comprised of a number of lines, each of which
                    has 9 numbers on them.

      !Imp_tpoly  - This will take files in the 'tpoly' format, and
                    load them into !Ray3d-Pro. These files describe
                    models in polygons.

   These tools are only available to registered users.

@colour:11@   Importing text and !Draw files

   Another tool exists which allows you to draw a shape using !Draw, and
   import it into Ray3d-Pro as a three dimensional shape. This tools can
   also handle text if it has been converted to a path from within !Draw.
   This application is only available to registered users.

@colour:11@   Importing 3d scenes files from !Ray3d v1.xx

   For those of you that have been using versions of !Ray3d which have
   been supplied by Archimedes World on their cover discs (versions
   1.xx) there is a supplied tool called !v1->v2 which will convert
   your scene files to !Ray3d-Pro files.

@end@
@page:csg_desc@Constructive Solid Geometry

@colour:11@   Constructive Solid Geometry (CSG)

   Constructive solid geometry allows use to take simple shapes such
   as cones, cylinders, boxes, etc. and combine them in such a way
   as to make much more complex shapes.

   There are three ways in which shapes can be combined, all described
   below. For information about how to create a CSG shape, click @goto:csg_info:here@.

@colour:11@   Difference

   This is by far the most useful of the three CSG type. It allows you
   to remove (ie: drill) one shape from another. So if we had a cuboid
   as in the diagram below, and subtracted a cylinder we would get a box
   with a hole in the middle (as shown below).





            @sprite:csg_and!@

@colour:11@   Union

   This CSG operation merges two shapes together as in the diagram below.





            @sprite:csg_or@

@colour:11@   Intersection

   This CSG operation creates a new shape where the first and second shapes
   overlap. So a cuboid intersected with a cylinder creates a small cylinder
   as below.





                @sprite:csg_and@

@end@
@page:renderng@Rendering Scenes

@colour:11@   Rendering Scenes

   Once you have created your scene, you will obviously want to raytrace
   it. To do this, you must run your saved Ray3d-Pro file through another
   program called !Shade4.

   !Shade4 takes a 3d file and converts it into the textual data that
   the PD raytracer Rayshade (v4.0.6) understands. For more information
   on !Shade4 and how to use it, click @goto:!shade4^contents:here@.

   A quick guide is to follow the steps below.

@colour:05@   1) Save your file from Ray3d-Pro
@colour:05@   2) Load !Shade4 (quitting !Ray3d-Pro if you are low on memory)
@colour:05@   3) Drag the saved 3d file to the !Shade4 icon on the icon bar.
@colour:05@   4) Save the text file by dragging the icon to a directory viewer.

   NB: Do not save over your original 3d file because Ray3d-Pro cannot
       load the text file for editing at a later date.

@colour:05@   5) load !Rayshade
@colour:05@   6) Drag the text file to the !Rayshade icon on the icon bar.
@colour:05@   7) Start the raytrace.

@end@
@page:add_fog @Adding Fog to a scene

@colour:11@  Adding Fog to a scene

   Ray3d-Pro allows you to add fog to your scene, to help create a better
   atmosphere for your pictures. You can create fog as thick as your
   require, and of any colour.

   To add fog, select the "fog..." option from the world sub-menu on the
   main program menu. This will bring up a window very similar to that
   used for changing the background colour.

   To change the colour of the fog, either drag the colour bars, or enter
   the amount of red, green and blue in the percentage fields. The nearest
   colour in the current mode to the one you have chosen is displayed
   below.

   To alter the thickness of the fog, alter the "fog thickness" percentage
   field below the colour bars.

@end@
@page:select_c@Selecting objects using a view window

@colour:11@   Selecting objects using a view window

   It is possible to select objects in the world without clicking on
   their names in the object list, but by clicking on them in the
   view window while holding down SHIFT.

   Because each view window only represents two of the three dimensions
   in the Ray3d-Pro world, the third co-ordinate is taken from the
   current cursor position.

   When you click in the window with SHIFT held down, you are
   specifying a point in the world, and all objects within the current
   select distance (from the @goto:opts:Options...@ window) from this point will be
   selected.

@end@
@page:csg_info@Creating CSG objects

@colour:11@   Creating CSG objects              @sprite:csg@

   It is quite a simple task to create a CSG object, but there are a
   few rules that have to be observed.

   All the objects that make up the CSG shape must be contained within
   their own group. There must not be any other objects in this group.

   If you were trying to create the bowl shape shown below, you would
   ceeate it by taking a sphere, chopping off the top with a box, and
   then cutting the inside away by using a slightly smaller sphere.







           @sprite:csg_bowl@


   The group structure would look like this:


@colour:08@                         Bowl (CSG group)
@colour:08@                             |
@colour:08@           -------------------------------------------
@colour:08@           |                 |                       |
@colour:08@         big sphere         box                little sphere
@colour:08@        (key object)


   The key objects specifies which object you want to subtract the others
   away from (in the case of the difference operator).

   To form the CSG shape, you would create the objects and group them
   as shown above. Now you would click on the CSG icon in the toolbox,
   or choose "CSG" from the world sub-menu on the main program menu.

   This brings up a window with two lists. The list on the left indicates
   which group you want to make a CSG shape. The list on the right lists
   the objects in that group, and is used to select the key object.

   So to create the bowl above, you would click on the "bowl" group in
   the left hand window, and then select the "big sphere" as the key
   object in the right window.

   Now because we want to do a difference, click on the difference
   operator at the foot of the window. You have now created your shape.

@colour:11@   Nesting CSG shapes

   If you want to nest CSG shapes then each CSG shape must have it's own
   group (one would be within the other).

   eg: If you wanted to create a crescent shape by subtracting a cylinder
       from another cylinder, and then wanted to remove this crescent
       from another shape you would need two groups.

       One group would contain the shape, and also within that group
       would be a second group containing the cylinders.

   so, the group structure would look like.

@colour:08@                                Cut-away (CSG group)
@colour:08@                                  |
@colour:08@                          --------------------
@colour:08@                          |                  |
@colour:08@                       Sphere             crescent (CSG group)
@colour:08@                                             |
@colour:08@                                     -------------------
@colour:08@                                     |                 |
@colour:08@                                 cylinder 1        cylinder 2

@end@
