-
Notifications
You must be signed in to change notification settings - Fork 1
/
LICENSE.txt
479 lines (412 loc) · 22.3 KB
/
LICENSE.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
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.