GENESIS3D PUBLIC LICENSE

Version 1.01

PREAMBLE

Please read this license carefully before using Genesis3D. By 
downloading and using Genesis3D, you are agreeing to be bound by the 
terms of this license. If you do not or cannot agree to the terms of this 
License, do not download or use Genesis3D.

This license is intended to make the source code of a state-of-the-art 3D 
engine available to everyone who wants the opportunity to use and 
contribute to a 3D engine.  Genesis3D is a commercial product.  It is not 
in the public domain or "freeware" or "shareware".  By making the source 
code available we are not giving it away or abandoning our right of 
ownership.  By using Genesis3D you agree to be bound by the spirit and 
the terms of this license.

This license permits you to use the Genesis3D SDK to create and sell 
products.  You may also redistribute the Genesis3D SDK.  You may also 
make modifications to the SDK and distribute them too.

If you modify the Genesis3D engine source, excerpt any portion of it, or if 
you use a modified version of the engine source, you must make your 
source code available for others to use under the same terms that we have 
granted you.  This guarantees that modifications to the engine will be 
available to everyone and the best modifications can become part of the 
official Genesis3D release.  Your source code must be released 
concurrent with releasing any executable built with Genesis3D.  If you do 
not wish to make your source code available you must obtain a separate 
license from Eclipse.

Gtest, the sample game, is specifically excluded from this requirement.  
Feel free to modify Gtest and use it in any way that benefits you.

If you use the original unmodified Eclipse-built binaries there is no 
requirement for you to make your source code available.

You must display the original unmodified Genesis3D animated logo as 
the first logo on startup of your product, demo or application.  You must 
also prominently display the Genesis3D logo on any marketing materials, 
advertising or packaging of your product.

These terms are good for the community because it makes the source of a 
high-end 3D engine available to everyone and it encourages sharing of 
improvements.  They are good for Eclipse because some companies will 
opt to not share their source and will prefer to pay to license the engine 
instead. These kinds of licenses will fund future Genesis3D development 
and subsidize the free licenses that many people will enjoy.

1. DEFINITIONS

1.1. ``Contributor'' means each entity that creates or contributes to 
the creation of Modifications.

1.2. ``Contributor Version'' means the combination of the Original 
Code, prior Modifications used by a Contributor, and the 
Modifications made by that particular Contributor.

1.3. ``Covered Code'' means the Original Code or Modifications or 
the combination of the Original Code and Modifications, in each case 
including portions thereof, and any Source Code which duplicates, 
enhances, modifies or replaces functionality of the Covered Code as 
defined in Exhibit B.
 
1.4. ``Electronic Distribution Mechanism'' means a mechanism 
generally accepted in the software development community for the 
electronic transfer of data.

1.5. ``Eclipse'' means Eclipse Entertainment, L.L.C.

1.6. ``Executable'' means Covered Code in any form other than 
Source Code.

1.7. ``Larger Work'' means a work which combines Covered Code 
or portions thereof with code not governed by the terms of this 
License.

1.8. ``License'' means this document.

1.9. ``Modifications'' means any addition to or deletion from the 
substance or structure of either the Original Code or any previous 
Modifications. When Covered Code is released as a series of files, a 
Modification is:
A. Any addition to or deletion from the contents of a file 
containing Original Code or previous Modifications. 
B. Any new file that contains any part of the Original Code 
or previous Modifications.

1.10. ``Original Code'' means Source Code of computer software 
code which is described in the Source Code notice required by 
Exhibit A as Original Code, and which, at the time of its release 
under this License is not already Covered Code governed by this 
License.

1.11. ``Source Code'' means the preferred form of the Covered Code 
for making modifications to it, including all modules it contains, plus 
any associated interface definition files, scripts used to control 
compilation and installation of an Executable, or a list of source code 
differential comparisons against either the Original Code or another 
well known, available Covered Code of the Contributor's choice. The 
Source Code can be in a compressed or archival form, provided the 
appropriate decompression or de-archiving software is widely 
available for no charge.
 
1.12. ``You'' means an individual or a legal entity exercising rights 
under, and complying with all of the terms of, this License or a future 
version of this License issued under Section 7.1. For legal entities, 
``You'' includes any entity which controls, is controlled by, or is 
under common control with You. For purposes of this definition, 
``control'' means (a) the power, direct or indirect, to cause the 
direction or management of such entity, whether by contract or 
otherwise, or (b) ownership of fifty percent (50%) or more of the 
outstanding shares or beneficial ownership of such entity. 

2. SOURCE CODE LICENSE
 
2.1. The Eclipse Grant. 
Eclipse hereby grants You a world-wide, fully paid, royalty-free, non-
exclusive license, subject to third party intellectual property claims: 
(a) to use, reproduce, modify, display, perform, sublicense and 
distribute the Original Code (or portions thereof) with or without 
Modifications, or as part of a Larger Work; and 
(b) under patents now or hereafter owned or controlled by 
Eclipse, to make, have made, use and sell (``Utilize'') the 
Original Code (or portions thereof), but solely to the extent that 
any such patent is reasonably necessary to enable You to Utilize 
the Original Code (or portions thereof) and not to any greater 
extent that may be necessary to Utilize further Modifications or 
combinations.
 
2.2. Contributor Grant. 
Each Contributor hereby grants You a world-wide, fully paid, 
royalty-free, non-exclusive license, subject to third party intellectual 
property claims:
(a) to use, reproduce, modify, display, perform, sublicense and 
distribute the Modifications created by such Contributor (or 
portions thereof) either on an unmodified basis, with other 
Modifications, as Covered Code or as part of a Larger Work; and
(b) under patents now or hereafter owned or controlled by 
Contributor, to Utilize the Contributor Version (or portions 
thereof), but solely to the extent that any such patent is 
reasonably necessary to enable You to Utilize the Contributor 
Version (or portions thereof), and not to any greater extent that 
may be necessary to Utilize further Modifications or 
combinations.

2.3. Your Grant. 
You hereby grant to Eclipse a world-wide, fully paid, royalty-free, 
non-exclusive license, subject to third party intellectual property 
claims:
(a) to use, reproduce, modify, display, perform, sublicense and 
distribute the Modifications created by You (or portions thereof) 
either on an unmodified basis, with other Modifications, as 
Covered Code or as part of a Larger Work; and
(b) under patents now or hereafter owned or controlled by You, 
to Utilize the Modifications (or portions thereof), but solely to 
the extent that any such patent is reasonably necessary to enable 
Eclipse to Utilize the Modifications (or portions thereof), and not 
to any greater extent that may be necessary to Utilize further 
Modifications or combinations.

3. DISTRIBUTION OBLIGATIONS
 
3.1. Application of License to You.
The Modifications which You create or to which You contribute are 
governed by the terms of this License, including without limitation 
Section 2.2. The Source Code version of Covered Code may be 
distributed only under the terms of this License or a future version of 
this License released under Section 7.1, and You must include a copy 
of this License with every copy of the Source Code You distribute. 
You may not offer or impose any terms on any Source Code version 
that alters or restricts the applicable version of this License or the 
recipients' rights hereunder. However, You may include an additional 
document offering the additional rights described in Section 3.6.

3.2. Application of License to Eclipse.
(a) Other Products.
Eclipse may include Covered Code in products other than 
Genesis3D without such additional products becoming subject to 
the terms of this License, and may license such additional 
products on different terms from those contained in this License.
(b) Other Licenses.
Eclipse may license the Source Code including Modifications 
incorporated therein, without such additional products becoming 
subject to the terms of this License, and may license such 
additional products on different terms from those contained in 
this License.
(c) Other Releases.
Eclipse may create new releases of Genesis3D without such 
releases becoming subject to the terms of this License. 
 
3.3. Availability of Source Code. 
Any Modification which You create or to which You contribute must 
be made available in Source Code form under the terms of this 
License either on the same media as an Executable version or via an 
accepted Electronic Distribution Mechanism to anyone to whom you 
made an Executable version available; and if made available via 
Electronic Distribution Mechanism, must remain available for at least 
twelve (12) months after the date it initially became available, or at 
least six (6) months after a subsequent version of that particular 
Modification has been made available to such recipients. You are 
responsible for ensuring that the Source Code version remains 
available even if the Electronic Distribution Mechanism is maintained 
by a third party.  Furthermore, the Source Code to the Modifications 
You create or contribute must be delivered in fully compilable form 
using commonly available tools.  If the tools used to compile the 
Source Code are not commonly available You must also include the 
tools, in Source Code and Executable forms, as part of the 
Modifications.  Your Source Code must be delivered unencrypted, 
uncloaked, unobscured and in human readable form.

3.4. Description of Modifications. 
You must cause all Covered Code to which you contribute to contain 
a file documenting the changes You made to create that Covered 
Code and the date of any change. You must include a prominent 
statement that the Modification is derived, directly or indirectly, from 
Original Code provided by Eclipse in (a) the Source Code, and (b) in 
any notice in an Executable version or related documentation in 
which You describe the origin or ownership of the Covered Code. 

3.5. Intellectual Property Matters 
(a) Third Party Claims. 
If You have knowledge that a party claims an intellectual 
property right in particular functionality or code (or its utilization 
under this License), you must include a text file with the source 
code distribution titled ``LEGAL'' which describes the claim and 
the party making the claim in sufficient detail that a recipient will 
know whom to contact. If you obtain such knowledge after You 
make Your Modification available as described in Section 3.3, 
You shall promptly modify the LEGAL file in all copies You 
make available thereafter and shall take other steps (such as 
notifying appropriate mailing lists or newsgroups) reasonably 
calculated to inform those who received the Covered Code that 
new knowledge has been obtained. 
(b) Contributor APIs. 
If Your Modification is an application programming interface 
and You own or control patents which are reasonably necessary 
to implement that API, you must also include this information in 
the LEGAL file. 

3.6. Required Notices. 
You must duplicate the notice in Exhibit A in each file of the Source 
Code, and this License in any documentation for the Source Code, 
where You describe recipients' rights relating to Covered Code. If 
You created one or more Modification(s), You may add your name as 
a Contributor to the notice described in Exhibit A. If it is not 
possible to put such notice in a particular Source Code file due to its 
structure, then you must include such notice in a location (such as a 
relevant directory file) where a user would be likely to look for such a 
notice. You may choose to offer, and to charge a fee for, warranty, 
support, indemnity or liability obligations to one or more recipients 
of Covered Code. However, You may do so only on Your own 
behalf, and not on behalf of Eclipse or any Contributor. You must 
make it absolutely clear that any such warranty, support, indemnity or 
liability obligation is offered by You alone, and You hereby agree to 
indemnify Eclipse and every Contributor for any liability incurred by 
Eclipse or such Contributor as a result of warranty, support, 
indemnity or liability terms You offer.

3.7. Distribution of Executable Versions. 
You may distribute Covered Code in Executable form only if the 
requirements of Section 3.1-3.6 have been met for that Covered 
Code, and if You include a notice stating that the Source Code 
version of the Covered Code is available under the terms of this 
License, including a description of how and where You have fulfilled 
the obligations of Section 3.3. The notice must be conspicuously 
included in any notice in an Executable version, related 
documentation or collateral in which You describe recipients' rights 
relating to the Covered Code. You may distribute the Executable 
version of Covered Code under a license of Your choice, which may 
contain terms different from this License, provided that You are in 
compliance with the terms of this License and that the license for the 
Executable version does not attempt to limit or alter the recipient's 
rights in the Source Code version from the rights set forth in this 
License. If You distribute the Executable version under a different 
license You must make it absolutely clear that any terms which differ 
from this License are offered by You alone, not by Eclipse or any 
Contributor. You hereby agree to indemnify Eclipse and every 
Contributor for any liability incurred by Eclipse or such Contributor 
as a result of any such terms You offer. 

3.8. Larger Works. 
You may create a Larger Work by combining Covered Code with 
other code not governed by the terms of this License and distribute 
the Larger Work as a single product. In such a case, You must make 
sure the requirements of this License are fulfilled for the Covered 
Code. 

4. RESTRICTIONS

4.1. You agree to:
(a) display the original, unmodified Genesis3D animated logo as the 
first logo on startup of your product, demo or application;
(b) prominently display the Genesis3D logo on any marketing 
materials, advertising or packaging of your product, demo or 
application;
(c) distribute the Covered Code to third parties who agree to be 
bound by these terms and conditions;
(d) make reasonable efforts to discontinue distribution of the Covered 
Code upon Eclipse's release of an update, upgrade or new version of 
the Covered Code and to make reasonable efforts to distribute such 
updates, upgrades or new versions to your customers who have 
received the Covered Code herein;
(e) be solely responsible for any update or support obligation or other 
liability which may arise from your distribution of the Covered Code.

4.2. You may not:
(a) remove, alter, obscure, or modify in any way the appearance or 
operation of the Genesis3D logo;
(b) copy the Covered Code, in whole or in part, except as provided in 
this License;
(c) make any statement that your product is "certified," or that its 
performance is guaranteed, by Eclipse.

5. INABILITY TO COMPLY DUE TO STATUTE OR 
REGULATION

If it is impossible for You to comply with any of the terms of this 
License with respect to some or all of the Covered Code due to 
statute or regulation then You must: (a) comply with the terms of this 
License to the maximum extent possible; and (b) describe the 
limitations and the code they affect. Such description must be 
included in the LEGAL file described in Section 3.5 and must be 
included with all distributions of the Source Code. Except to the 
extent prohibited by statute or regulation, such description must be 
sufficiently detailed for a recipient of ordinary skill to be able to 
understand it. 

6. APPLICATION OF THIS LICENSE

This License applies to code to which Eclipse has attached the notice 
in Exhibit A, and to related Covered Code.
 
7. VERSIONS OF THE LICENSE

7.1. New Versions. 
Eclipse may publish revised and/or new versions of the License from 
time to time. Each version will be given a distinguishing version 
number.

7.2. Effect of New Versions. 
Once Covered Code has been published under a particular version of 
the License, You may always continue to use it under the terms of 
that version. You may also choose to use such Covered Code under 
the terms of any subsequent version of the License published by 
Eclipse. No one other than Eclipse has the right to modify the terms 
applicable to Covered Code created under this License. 

8. DISCLAIMER OF WARRANTY

COVERED CODE IS PROVIDED UNDER THIS LICENSE ON 
AN ``AS IS'' BASIS, WITHOUT WARRANTY OF ANY KIND, 
EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT 
LIMITATION, WARRANTIES THAT THE COVERED CODE IS 
FREE OF DEFECTS, MERCHANTABLE, FIT FOR A 
PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE 
RISK AS TO THE QUALITY AND PERFORMANCE OF THE 
COVERED CODE IS WITH YOU. SHOULD ANY COVERED 
CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT 
ECLIPSE OR ANY OTHER CONTRIBUTOR) ASSUME THE 
COST OF ANY NECESSARY SERVICING, REPAIR OR 
CORRECTION. THIS DISCLAIMER OF WARRANTY 
CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO 
USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER 
EXCEPT UNDER THIS DISCLAIMER. 

9. TERMINATION

This License and the rights granted hereunder will terminate 
automatically if You fail to comply with terms herein and fail to cure 
such breach within 30 days of becoming aware of the breach. All 
sublicenses to the Covered Code which are properly granted shall 
survive any termination of this License. Provisions which, by their 
nature, must remain in effect beyond the termination of this License 
shall survive.
 
10. LIMITATION OF LIABILITY

UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL 
THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), 
CONTRACT, OR OTHERWISE, SHALL ECLIPSE, ANY OTHER 
CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED 
CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE 
LIABLE TO YOU OR ANY OTHER PERSON FOR ANY 
INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL 
DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT 
LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK 
STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR 
ANY AND ALL OTHER COMMERCIAL DAMAGES OR 
LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN 
INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS 
LIMITATION OF LIABILITY SHALL NOT APPLY TO 
LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING 
FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT 
APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME 
JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR 
LIMITATION OF INCIDENTAL OR CONSEQUENTIAL 
DAMAGES, SO THAT EXCLUSION AND LIMITATION MAY 
NOT APPLY TO YOU.

INDEMNIFICATION:  YOU SHALL INDEMNIFY, HOLD 
HARMLESS, AND DEFEND ECLIPSE AND IT SUPPLIERS 
FROM AND AGAINST ANY CLAIMS OR LAWSUITS, 
INCLUDING ATTORNEY'S FEES, THAT ARISE OR RESULT 
FROM YOUR USE OR DISTRIBUTION OF ANY PRODUCT 
INCORPORATING THE COVERED CODE IN WHOLE OR IN 
PART.

11. U.S. GOVERNMENT END USERS

The Covered Code is a ``commercial item,'' as that term is defined in 
48 C.F.R. 2.101 (Oct. 1995), consisting of ``commercial computer 
software'' and ``commercial computer software documentation,'' as 
such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 
48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 
(June 1995), all U.S. Government End Users acquire Covered Code 
with only those rights set forth herein.

12. MISCELLANEOUS

This License represents the complete agreement concerning subject 
matter hereof. If any provision of this License is held to be 
unenforceable, such provision shall be reformed only to the extent 
necessary to make it enforceable.  This License is governed by the 
laws of the State of Texas and the United States, including patent and 
copyright laws.  Any claim arising out of this License will be brought 
in Travis County, Texas.

The application of the United Nations Convention on Contracts for 
the International Sale of Goods is expressly excluded. Any law or 
regulation which provides that the language of a contract shall be 
construed against the drafter shall not apply to this License. 

13. RESPONSIBILITY FOR CLAIMS

Except in cases where another Contributor has failed to comply with 
Section 3.5, You are responsible for damages arising, directly or 
indirectly, out of Your utilization of rights under this License, based 
on the number of copies of Covered Code you made available, the 
revenues you received from utilizing such rights, and other relevant 
factors. You agree to work with affected parties to distribute 
responsibility on an equitable basis.

EXHIBIT A. 

``The contents of this file are subject to the Genesis3D Public 
License Version 1.01 (the "License"); you may not use this file 
except in compliance with the License. You may obtain a copy of the 
License at http://www.genesis3d.com
Software distributed under the License is distributed on an "AS IS" 
basis, WITHOUT WARRANTY OF ANY KIND, either express or 
implied. See the License for the specific language governing rights 
and limitations under the License. 
The Original Code is Genesis3D, released March 25, 1999. 
Copyright (C) 1996-1999 Eclipse Entertainment, L.L.C. All Rights 
Reserved. 
Contributor(s): ______________________________________.'' 

EXHIBIT B. 

Functionality of the Covered Code includes:

(a) Representation and rendering of 2D and 3D images, objects, 
characters and scenes;
(b) Collision detection;
(c) Artificial Intelligence (AI), including path finding, planning and 
movement;
(d) Network and internet communications;
(e) Data compression;
(f) Streaming data over a network, modem, or the internet;
(g) Client/server architecture;
(h) Physics simulation;
(i) Creation and editing of world geometry;
(j) Character animation, including motion interpolation, motion 
planning, collision, and inverse kinematics.


