                     Persistence of Vision(tm) Ray Tracer
                         POV-Ray(tm) Version 3.00

                  POV-Ray GUI Extension License Agreement
                               Version 1.00

                         GENERAL PGE LICENSE AGREEMENT

This document pertains to the creation and distribution of the custom GUI
Extensions DLL's (hereafter referred to as 'PGE' or 'PGE's') for the Microsoft
Windows version of the Persistence of Vision(tm) Ray Tracer a.k.a. POV-Ray(tm).

THIS DOCUMENT SUPERSEDES ALL PREVIOUS EXTENSION LICENSES OR PGE DISTRIBUTION
POLICIES. ANY INDIVIDUALS, COMPANIES OR GROUPS WHO HAVE BEEN GRANTED
PERMISSION TO DISTRIBUTE A GUI EXTENSION UNDER A PREVIOUS LICENSE MAY CONTINUE
TO DISTRIBUTE THE OLD VERSION OF THEIR EXTENSION BUT MUST RE-APPLY FOR ANY NEW
VERSION OR EXTENSION.

PGE's may ONLY be created and/or distributed according to the license granted
herein. You must also comply with the terms of POVLEGAL.DOC, except where this
document and POVLEGAL.DOC explicitly differ on an issue, in which case this
document has precedence.

                             USAGE PROVISIONS

GUI Extensions for POV-Ray for Windows must comply with this document. A GUI
Extension DLL is required to contain the text of an agreement which refers to
this document. If this text is not present it will not be loaded by POV-Ray
for Windows (hereafter referred to as povwin.)

The text itself referred to above is worded in an exact and specific manner
and is Copyright 1996 by Christopher J. Cason. This document will grant you
permission to include this copyrighted text in your Extension DLL provided that
you comply with all terms and conditions herein. Failure to do so will void any
permission to use that text and also to the usage of the programming interface
into POV-Ray for Windows and of the demonstration source code.

Extensions may be based on the 'extension toolkit' source code we provide.
That is, we explicitly permit you to re-use our demonstration source code
(and in fact encourage it, since it helps ensure that you comply with our
standards.) This permission DOES NOT extend to other POV-Ray source files.

Extensions may be written in any programming language compatible with the
requirements for the interface.

If you violate this licence it is automatically revoked for all PGE's which
you have written or distributed ; past, present, or future. The POV-Team may
restore the licence(s) at its discretion. The POV-Team may revoke this licence
at any time if they feel that they have good reason to do so.

The POV-Team assumes NO LIABILITY for the use or misuse of PGE's. By accepting
this licence you agree to totally indemnify and hold harmless the POV-Team and
all it's members and representatives from any consequences of any sort arising
directly or indirectly from the existance, non-existance, use or failure to use,
of your PGE, or any other circumstance related to it. This applies even if the
problem is caused by a bug in POV-Ray itself. You must agree that under no
circumstances will the POV-Team, any member of the POV-Team, or any
representative of it, be liable in any manner, shape, fashion or form, arising
out of their approval, non-approval, or cancellation of your use of this
licence, nor for any decision made to stop, prevent, or otherwise disallow
distribution of any item covered by this licence, nor for any comments made
regarding the use or operation, quality, or general usefulness of the PGE or
related items. You must agree that the POV-Team has the right to change this
licence or the PGE interface specificaton at any time and that you have no
recourse if this occurs.

If you do not agree to any of the preceding (or following) then you are not
granted a licence and therefore may not write or distribute a PGE.

                          INTENTION OF THIS LICENCE

Broadly, the intention of this licence is -

  o to protect POV-Ray users from poor-quality PGE's.
  o to protect the POV-Team members from unnecessary support work caused
    by other person's GUI Extensions.
  o to prevent persons from taking unreasonable commercial advantage of
    our freeware program, POV-Ray for Windows.
  o to foster development of PGE's by providing a set of standards for both
    their development and distribution.

                                RECOMMENDATIONS

We recommend (but do not require) that PGE's be distributed in a .ZIP archive.
The name of the archive should be the name of the PGE DLL. If the archive
contains more than one DLL, it must be the name of the main DLL. It is
permissable to form a contraction of a DLL name if it is more than eight
characters, so that it will form a 8.3 archive filename.

The archive should contain a file called 'FILE_ID.DIZ' which contains a
description of the contents of the archive, formatted to no more than
40 columns in width. It is strongly recommended that this description be in
English.

                              LICENCE CONDITIONS

All PGE DLL's must have the file extension PGE.

Extensions are NOT PERMITTED to display splash screens or any other
notification that they are loaded other than functionally essential ones,
unless the user explicitly activates such by selecting them from the GUI
Extensions menu.

Extensions must not use the reserved PGE ID's 00-15 when modifying PVENGINE.INI.

No file included with a PGE, including the PGE itself, may alter any POV-Ray
for Windows file, including executables and INI files, except under the
following circumstances -

  o it has been granted specific permission by the POV-Team to do so, or
  o it is the standard INI file, POVRAY.INI, or a user-specified INI file,
    and the user has expliticly been asked for permission, or
  o it is PVENGINE.INI, and the modification is of the [GIUExtensions]
    section, and the ID used is not in the range 00-15.
  o any other file not specifically excluded, and the user has been asked
    permission for the modification.

Specifically excluded are -

  o POV-Ray for Windows executables, including DLL's, or any other module
    that contains executable or machine code.

Files in the above 'specifically excluded' category may never be modified,
including while they are in memory or after they are loaded by the operating
system.

Extensions are not permitted to take any action that could jeopardise the
correct operation of POV-Ray.

Extensions are not permitted to use "back door's", or undocumented interfaces,
to access POV-Ray functions, without explicit written permission. A interface
is not considered documented if it is only documented in a source code file.

An exception is granted for any function or interface demonstrated in the
sample extension source code provided by the POV-Team.

Extensions may not show or do anything that may suggest, imply, or cause a
person to believe that they are endorsed by the POV-Team, or that they are
part of POV-Ray itself.

EXCEPT BY WRITTEN AGREEMENT, EXTENSIONS MUST BE FREEWARE AND PROVIDE FULL
SOURCE. The source code need not be in the same archive but must be freely
available. The POV-Team may grant authors permission to create a shareware or
commercial pge AT THE POV-TEAM's DISCRETION. It is your responsbility to
enquire about this BEFORE you start work if you intend to commercialise your
PGE.

PGE's may not perform any function that is intended to avoid the above clause.
This includes (but is not limited to) a freeware PGE being written solely for
the purpose of allowing the use of a commercial or shareware program. PGE's in
this category must be treated as above.

Extension authors with a genuine reason for performing the above function, or
who have (or will have) a good quality value-added function in or available
via a PGE, and who want to charge money for it, should not be discouraged by
the above. Just write to us ; we're reasonable people and want only to protect
our freeware program from unreasonable commercial exploitation. If your idea
is not unreasonable and is non-trivial you've got a good chance of receiving
permission. See POVLEGAL.DOC for contact information.

Extension authors are REQUIRED to build their real name and a VALID email
address into the DLL. The email address must be valid for at least three
months from any time the program is distributed by the author or someone
acting for them. This information must be presented via the correct interface,
as documented in the demonstration source code.

Extension authors are required to provide technical support for their
extension for at least three months from its initial distribution. If they
cease to provide support they must inform any person requesting support that
it is no longer available. They must inform the person that they CANNOT
contact the POV-Team for support. It is not acceptable for support emails to
be unanswered.

It must be made clear in all documentation regarding the PGE that it is
neither supported nor endorsed by the POV-Team. It must be made clear that
users are NOT to contact the POV-Team for support on PGE's.

The PGE must contain sufficient documentation for it to be used without
referring to the author or other information sources, except when the nature
of the PGE makes that impossible.

The PGE must comply with the interface documented in any PGE interface
specification published or made available by the POV-Team, and must also
comply with the instructions given in the latest sample PGE source code
(regardless of whether or not that source code is used as a basis of the PGE.)

PGE's must provide a menu handle to povwin containing at least two functional
entries ; one titled 'Enabled' and one titled 'About'.  It is permissable to
add words after the word 'About'. The Enabled entry, when activated, must
toggle the extension between a loaded-and-enabled state, and a loaded-but-
disabled state. This setting must be persistent ; i.e. it should be preserved
in a disk file or other method of storage such that when the PGE is next loaded
the same state is restored.

The About entry must show an About box which, at the very least, states the
extension's full name and purpose, the name of the author, their email address,
and a disclaimer stating that the POV-Team is not responsible for this PGE.

PGE's must provide 'tip' text to POV-Ray for Windows via the defined interface,
describing what a particular menu entry does, on demand.

PGE authors must supply one copy of their PGE to the POV-Team, either by
uploading it to an official POV-Ray site, or via postal mail to the official
contact address shown in POVLEGAL.DOC.
