Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (487)
Games in Android Showcase (110)
games submitted by our members
Games in WIP (552)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  OpenMind 0.7.2 released  (Read 4508 times)
0 Members and 1 Guest are viewing this topic.
Offline albanc

Senior Newbie





« Posted 2003-05-21 12:29:30 »

Today, we are proud to bring a new release of the OpenMind open source scenegraph for GL4Java featuring first MacOSX support. This new release also brings better compatibility with old graphic adapters, and above all features the first release of AL4Java, a Java binding to the OpenAL cross-platform 3D sound library that was brought by Pepijn Van Eeckhoudt.

As usual, OpenMind can be downloaded from http://www.mind2machine.com

AL4Java official website can be found at  http://al4java.sourceforge.net

Enjoy !

Alban CousiniƩ
MIND2MACHINE
Offline leknor

Junior Member




ROCK!!!


« Reply #1 - Posted 2003-05-21 13:08:05 »

I personally don't care but there is another project named OpenMind that's been around since at least 1998. You may want to qualify the name of your project a little more to something like "OpenMind 3D" to prevent confusion.
Offline princec

JGO Kernel


Medals: 363
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #2 - Posted 2003-05-21 14:49:54 »

Pepijn Van Eeckhoudt is in deep shit. When I get my hands on his scrawny neck I'm going to print out the sourcecode to LWJGL on HP Premium Inkjet paper and make him eat the lot.

Cas Angry

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline albanc

Senior Newbie





« Reply #3 - Posted 2003-05-21 16:05:42 »

Hi Cas,

I'm not responsible for AL4Java, I've just included the library to OpenMind. From what I know, it was written from scratch, but maybe Pepijn got some inspiration from LWJGL, as we've all been inspired from some source code some day for acheiving a difficult task...and I guess that's what open source is about.

Anyway if it'd be the case, I'd feel really sorry about it. If you find some irregularities about the code, copyright statements and credits, I'm pretty sure we can discuss this with Pepijn.

Alban
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #4 - Posted 2003-05-21 16:27:32 »

Quote
From what I know, it was written from scratch, but maybe Pepijn got some inspiration from LWJGL

Let's just say that he copied the code from LWJGL, which invalidates his license to use LWJGL, and redistribute AL4Java.

Quote
* * Redistributions of source code must retain the above copyright
*   notice, this list of conditions and the following disclaimer.


The LWJGL team has *nothing* against people using the LWJGL source code - this is why we're using the BSD license -  but we don't like it when people take existing code, fiddle a bit with it - and then remove the license, pasting in another!

Quote
and I guess that's what open source is about

100% with you there - but in the spirit of opensource, one also gives credit, where credit is due!
Where it not for the WaveData class which is used in the source library, no mention of LWJGL is in the source drop - or even on the website.

I just feel that doing this kind of **** sucks bigtime!

Hopefully this can be resolved ASAP though

Offline leknor

Junior Member




ROCK!!!


« Reply #5 - Posted 2003-05-21 17:12:03 »

Could the LWJGL guys point to specific code lifting?

I spot checked the source for al4java and LWJGL OpenAL and I didn't see any code that looked lifted.
Offline cfmdobbie

Senior Member


Medals: 1


Who, me?


« Reply #6 - Posted 2003-05-21 18:10:24 »

Quote
Could the LWJGL guys point to specific code lifting?

I spot checked the source for al4java and LWJGL OpenAL and I didn't see any code that looked lifted.


Well, all error checking is removed, several files are collapsed into a single file etc - it seems to have been a phenomenal amount of work? Huh  More likely that he'd been working on the same project and used LWJGL to finish a few bits off.  However, with that said, here's a good example for you:

From al4java_AL.c:
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
/**
 * This function Enables a feature of the OpenAL driver.
 *
 * C Specification
 * ALvoid alHint(ALenum target, ALenum mode);
 */

JNIEXPORT void JNICALL Java_al4java_AL_alHint (JNIEnv *env, jclass clazz, jint target, jint mode) {
      //alHint((ALint)target, (ALint)mode);
     //cannot link with above statement
     return;
}


From org_lwjgl_openal_CoreAL.cpp:
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
/**
 * This function Enables a feature of the OpenAL driver.
 *
 * C Specification
 * ALvoid alHint(ALenum target, ALenum mode);
 */

JNIEXPORT void JNICALL Java_org_lwjgl_openal_CoreAL_hint (JNIEnv *env, jobject obj, jint target, jint mode) {
      //alHint((ALint)target, (ALint)mode);
     //cannot link with above statement
     return;
}


When one library is comment-compatible with another, there's something funny going on! Grin

Hellomynameis Charlie Dobbie.
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #7 - Posted 2003-05-21 18:15:50 »

Here's one:
original:
1  
2  
3  
4  
5  
6  
7  
/**
 * A function was called at inappropriate time,
 *  or in an inappropriate way, causing an illegal state.
 * This can be an incompatible ALenum, object ID,
 *  and/or function.
 */

public static final int AL_INVALID_OPERATION                     =0xA004;


his version:
1  
2  
3  
4  
5  
6  
7  
/**
 * A function was called at inappropriate time,
 *  or in an inappropriate way, causing an illegal state.
 * This can be an incompatible ALenum, object ID,
 *  and/or function.
 */

public static final int AL_INVALID_OPERATION                     =0xA004;


Notice that the comments are formatted wrong, just as it is in ours - this has been fixed in 0.6 , but this clearly shows that he has ripped from a pre 0.6 version.

This one of the vaguest of the hints - there are more convincing... but I am pretty sure that 'Pepijn Van Eeckhoudt' won't be denying the facts.

Offline Mojomonkey

Senior Member




ooh ooh eee eeee


« Reply #8 - Posted 2003-05-21 18:22:36 »

He does mention LWJGL on his credits page:

"Credits
LWJGL
The "Lightweight Java Game Library" project created the first OpenAL binding for Java. I personally do not like the way in which this library exposes pointers to Java code, which is the main reason why I started writing my own binding.
LWJGL also provides several utility classes for laoding audio data in Java. The class that loads wave files is currently used in the al4java sample apllications. "

Don't send a man to do a monkey's work.
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #9 - Posted 2003-05-21 18:36:13 »

yes, now he does Smiley

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline leknor

Junior Member




ROCK!!!


« Reply #10 - Posted 2003-05-21 18:38:48 »

Ok, I guess my spots wen't big enough.
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #11 - Posted 2003-05-21 18:42:09 »

anyhow - let's make this thread die down, till we've actually heard from him!

... emailing ...

Offline pepijnve

Junior Member




Java games rock!


« Reply #12 - Posted 2003-05-21 19:17:07 »

Alban mailed me about this thread, saying I should check it out. So here I am in front of the firing squad Smiley
First of all here's a copy of the reply I sent to Alban.

Well I guess there are two problems:
- The WaveData class is theirs. The license/copyright notice is still in the source file. I don't think I have to add their license in the binary packages since these don't contain the sample applications or the WaveData class. If they do then that's my mistake and I'll remove those classes.
- I started coding the c files using their c file to save me some tedious typing work. I implemented each method myself, but I forgot to remove their documentation (which I have now just done, again my mistake). The documentation in the c code is (to me) completely unnecessary.
I guess this second point requires me to add their license, since very strictly speaking I did use their source code. How should I do this? Should my source code then contain two copyright notices? The method implementations are mine, the method signatures are very similar to theirs (not that I have any choice there since OpenAL is a standard Smiley ). I stripped the documentation (sorry bout that) so that should be a non issue.
Correct me if I'm wrong on any of my assumptions...

About the lifted code. The alHint thing is still a remainder from the original c file, which I forgot to get rid of. (Still haven't figured out why this method is missing in the headers btw, since it is in the spec)
The comments in the AL(C)Enum classes are just retained from the original al(c)types.h file, so I guess the lwjgl developers just copied those comments like I did...
About the method implementations, I guess that's a case of their word against mine.
I'll add the copyright notice and license if you want. Could somebody tell me how I should do this from a practical point of view. Ie how do I make a distinction between what is copyright lwjgl and what is copyright me?
Offline princec

JGO Kernel


Medals: 363
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #13 - Posted 2003-05-21 20:45:32 »

It's dead easy; if you've got the work of others all over the place and you know where it's come from, just put the credit in where it's due. That's how open source works. It's very little to ask and not doing it is credibility suicide.

Cas Smiley

Offline pepijnve

Junior Member




Java games rock!


« Reply #14 - Posted 2003-05-21 20:52:35 »

Agreed, but where is it still due in the end?
Are you insisting I put a copyright notice around the alHint comment (which I've deleted in the mean time).
Your copyright notice is still in place in the class that is yours (WaveData), but I don't see why I should feel obliged to put your copyright notice in classes that I've written myself.
Offline princec

JGO Kernel


Medals: 363
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #15 - Posted 2003-05-21 21:20:38 »

No, all you've got to do is follow these instructions found at the top of any LWJGL file you've used:
Quote
* Copyright (c) 2002 Light Weight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
*   notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
*   notice, this list of conditions and the following disclaimer in the
*   documentation and/or other materials provided with the distribution.
* Neither the name of 'Light Weight Java Game Library' nor the names of
*   its contributors may be used to endorse or promote products derived
*   from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


In other words, just add that notice to the top of files which are sourced in whole or part from LWJGL. It only applies to used or modified LWJGL code, not yours. You are entirely free to append the LGPL license and apply it to your own code even within the same file.

(Sorry about blowing my top earlier, it was a bad day)

Cas Smiley

Offline pepijnve

Junior Member




Java games rock!


« Reply #16 - Posted 2003-05-21 21:42:19 »

In my opinion the current status of the library doesn't violate your license. The copyright and license is in place in the one class I actually reused and modified (WaveData) from lwjgl.
Should I, in your opinion, add the license anywhere else?
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #17 - Posted 2003-05-22 03:24:50 »

IMO:
Add the license file to the binary/source drop
Add the license to *any* files containing source from LWJGL

Basically, since you did use LWJGL parts, I would add this to a credits part "...Parts copyright LWJGL..."

As far as I can tell, at least the following files have sourcecode from LWJGL (but you would know best...):
al4java_ALC.c
al4java_AL.c
WaveData.java (fine already)

and most important - respect the work of others forthward on  Wink

Offline pepijnve

Junior Member




Java games rock!


« Reply #18 - Posted 2003-05-22 05:21:30 »

For the source package:
The license says to leave the copyright/license in the source file so that's already ok
For the binary packages:
These don't contain the sample code (including WaveData) so no copyright/license required here

al(c).c that's another question. I guess it depends on how strictly you want to apply the license. I did start from the lwjgl source file (as I already mentioned in my first post) but in the end I had to rewrite each method implementation to be strict c code and because I use arrays instead of direct pointers. The question is then if the copyright/license still applies if you rewrite the entire source file. I don't think you can claim copyright on the method signatures since these are machine generated Smiley
IANAL so correct me if I'm wrong here.
Anyway, if it keeps everybody happy I'll add the copyright/license to those two files as well tonight when I get home from work.
Offline albanc

Senior Newbie





« Reply #19 - Posted 2003-05-22 06:44:35 »

So I guess Pepijn will update the licenses for OpenAL and I will include an LWJGL licence into the next release of OpenMind !  Wink


Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #20 - Posted 2003-05-22 10:06:44 »

Yeah, that'd be fine - afaik - as long as credit is placed where it is due - then everything should be fine!

/me goes off to investigate al4Java's performance  Grin

Offline pepijnve

Junior Member




Java games rock!


« Reply #21 - Posted 2003-05-23 05:26:27 »

I've made the necessary changes in the source code. I can't seem to log in to the sourceforge cvs server for the moment, so those changes will have to wait a little bit longer.
I've been working on a rewrite from scratch of the two affected c files to avoid any further license troubles.

On the performance question, al4java will probably be slower than the lwjgl implementation. I've used GetPrimitiveArrayCritical, which should avoid copying as much as possible, but this is not guaranteed. However, I prefer that overhead over exposing pointers. I could probably add nio support to the code to get more or less the same results as the lwjgl version, but first I'm going to finish my rewrite Smiley
Offline pepijnve

Junior Member




Java games rock!


« Reply #22 - Posted 2003-05-23 20:58:56 »

Just a quick note to let you guys know I finished a 'clean' version of al4java. The two c files have been rewritten from scratch, so no more saying I stole your code Wink
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #23 - Posted 2003-05-23 21:34:19 »

Quote
so no more saying I stole your code
No one ever said anything about stealing the code!
The problem was that you claimed that you have written it!

What baffles me, is that you rewrote it Huh - I would just have slapped on a license and get on with my life... Oh well - not my time used  Cool

On a totally unrelated note -  "Tree Branches for Mozilla 1.4" *woot*

Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

CopyableCougar4 (23 views)
2014-08-22 19:31:30

atombrot (34 views)
2014-08-19 09:29:53

Tekkerue (30 views)
2014-08-16 06:45:27

Tekkerue (28 views)
2014-08-16 06:22:17

Tekkerue (18 views)
2014-08-16 06:20:21

Tekkerue (27 views)
2014-08-16 06:12:11

Rayexar (65 views)
2014-08-11 02:49:23

BurntPizza (41 views)
2014-08-09 21:09:32

BurntPizza (31 views)
2014-08-08 02:01:56

Norakomi (41 views)
2014-08-06 19:49:38
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!