Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (539)
Games in Android Showcase (132)
games submitted by our members
Games in WIP (603)
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  
  Lightweight Java Game Library Alpha 0.4 Released  (Read 4271 times)
0 Members and 1 Guest are viewing this topic.
Offline elias

Senior Devvie





« Posted 2002-12-23 12:27:33 »

Yes, you heard it, lwjgl version 0.4 is released with the following changes (from the changelog):

Dynamic loading of OpenGL and OpenAL
- It is now possible to use parts of lwjgl, without requiring the user to have
   OpenGL or OpenAL installed.
   
Caption bar in windowed mode:
- When not running in fullscreen mode, the window displayed, will have a caption
  bar. This feature is work in progress, and will expand to better windowed support.
 
Bufixes:
- Many bugfixes, most notably the failure to create and register a window

Linux support:
- This release includes the first release for Linux.

NeHe tutorials:
- Also available is many of NeHe's OpenGL tutorials - located in the examples.jar

More tests
- More tests added - check the org.lwjgl.test package

API Changes:
- DisplayMode/Display.create changed a bit
- ALUT is gone, now using WaveData class which loads via java.sound.sampled instead of native wav loader
- Added some missing gl/glx/glu functions

(We consider the library to be essentially feature complete, so this might very well be the last alpha release before we head for a real lwjgl 1.0)

- elias

Offline vrm

Junior Devvie




where I should sign ?


« Reply #1 - Posted 2003-01-27 18:27:04 »

work nicely on linux

tips : the examples request the 640x480 mode if you haven't it in your XConfig, it will crash.

strange stuff : SPGL nvidia alloc in AGP doesn't work (no Cas, it's not my Bios config Tongue)
Offline princec

« JGO Spiffy Duke »


Medals: 434
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #2 - Posted 2003-01-27 22:06:44 »

'sfunny, seems to work for me. How do you know it's not working?

Cas Smiley

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

Junior Devvie




where I should sign ?


« Reply #3 - Posted 2003-01-28 05:03:07 »

wasn't working on elias comp too,

but the strange is you placed error handling everywhere, but a putInt finish in a segfault.

like it's allocating sucessfully, but not Smiley

cat /proc/driver/nvidia/agp/card
Fast Writes:     Supported
SBA:             Not Supported
AGP Rates:       2x 1x
Registers:       0x1f000013:0x1f000102

cat /proc/driver/nvidia/agp/status
Status:          Enabled
Driver:          AGPGART
AGP Rate:        2x
Fast Writes:     Disabled
SBA:             Disabled

don't bother too much with that, I'll try to find by myself Smiley I want to understand how it work.
Offline princec

« JGO Spiffy Duke »


Medals: 434
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #4 - Posted 2003-01-28 09:51:48 »

ahhh.... are you using Linux perchance?

Cas Smiley

Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #5 - Posted 2003-01-28 10:26:19 »

Huh

Quote
cat /proc/driver/nvidia/agp/card

Quote
segfault


isn't enough to give away his OS?  Roll Eyes

Offline vrm

Junior Devvie




where I should sign ?


« Reply #6 - Posted 2003-01-28 10:49:02 »

thats too easy ...   Cry
Offline princec

« JGO Spiffy Duke »


Medals: 434
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #7 - Posted 2003-01-28 11:30:10 »

Ah, well it doesn't work on Linux. Behold:

1  
2  
3  
4  
5  
6  
7  
            if (gl.NV_vertex_array_range || gl.NV_vertex_array_range2) {
                  agp = new MemoryBuffer(Sys.createDirectBuffer(GL.wglAllocateMemoryNV(length, 0, 0, 0.5f), length));
                  if (agp == null)
                        throw new OutOfMemoryError("Failed to reserve AGP ram.");
                  size = length;
                  System.out.println("Reserved " + length + " bytes of AGP RAM");
            }


It checks for NV_vertex_array_range, as it should, but doesn't check for the existence of wglAllocateMemoryNV. This is a shortcoming of LWJGL I think because I've just realised there's no way to easily check if that function is available. (In fact, it should segfault here as it'll be calling a null function - unless Nvidia are doing something weird and providing a dummy even for Linux).

Anyone know how to get AGP ram under Linux/Nvidia combinations? (Or OSX for that matter?)

Cas Smiley

Offline elias

Senior Devvie





« Reply #8 - Posted 2003-01-28 11:50:22 »

Why don't you check for the appropriate extension? Or is the extension the same on all OpenGL systems, so one needs to differentiate between wgl,glx and agl? On glx systems, it's glXAllocateMemoryNV(...)


- elias

Offline alexz

Senior Newbie




Java games rock!


« Reply #9 - Posted 2003-01-28 11:52:53 »

I think that there should be glXAllocateMemoryNV() and glXFreeMemoryNV()...
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline princec

« JGO Spiffy Duke »


Medals: 434
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #10 - Posted 2003-01-28 12:17:23 »

Yes, unfortunately the extension is the same on all systems but the underlying windowing call differs. We need the glX code, whatever OSX uses, and a way to know which one to call which doesn't rely on hacks and strings. Or maybe we abstract all of them down into the .dll and have one call. Which is my preferred option as there's very little merit leaving this in Java, except for the fact that it's a vendor-specific extension that we're writing native code for which I'm not so happy about.

Cas Smiley

Offline elias

Senior Devvie





« Reply #11 - Posted 2003-01-28 12:21:31 »

I'd say one call - allocateMemoryNV(..) that is different on the dll level. That seems like the easiest way of doing it.

Offline alexz

Senior Newbie




Java games rock!


« Reply #12 - Posted 2003-01-28 12:52:14 »

Unfortunately generalization won't help much if you are going to support all of the three platforms. There is no NV_vertex_array_range on MacOS X but there we've got its brother - APPLE_vertex_array_range (yes, on GeForce)... So the game code will look like the following crap is placed everywhere across the drawing code:


if (isWin32 || isLinux)
   ... go with NV_vertex_array_range
else
   ... go with APPLE_vertex_array_range


Sad

Please provide wgl/glx/agl extensions for LWJGL in a way similar to regular OpenGL extensions so it will be possible to deal with them directly...  :-/
Offline vrm

Junior Devvie




where I should sign ?


« Reply #13 - Posted 2003-01-28 15:42:40 »

arf they prolly tryed to mask ATI & Nvidia diffs ?
Offline alexz

Senior Newbie




Java games rock!


« Reply #14 - Posted 2003-01-28 18:22:12 »

Personaly I don't need the masking... there will be cases when similar extensions need different things. IMO it's good to have wgl/glx/agl extension mechanism and platform detection methods (in the Sys class?) to get the best of each extension available.
Offline cfmdobbie

Senior Devvie


Medals: 1


Who, me?


« Reply #15 - Posted 2003-01-29 11:15:29 »

[size=5]Hurrah![/size]


With release 0.4 my laptop is finally able to open a rendering window.  I now have the raw power of an 8MB Savage/IX at my command. Grin

One small comment - as fundamental things like the constructor for GL and the way you obtain a DisplayMode have changed, most users' first point of contact (the OpenGL skeleton code) is totally broken. Wink

Hellomynameis Charlie Dobbie.
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #16 - Posted 2003-01-29 13:22:09 »

Quote
point of contact (the OpenGL skeleton code) is totally broken.


Yeah -  it's on the official todo list - in fact I think I will fix it tonight - unless Cas beats me to it *hint*

Offline cfmdobbie

Senior Devvie


Medals: 1


Who, me?


« Reply #17 - Posted 2003-01-30 19:45:28 »

Someone's updated it - cheers!

Hellomynameis Charlie Dobbie.
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.

rwatson462 (30 views)
2014-12-15 09:26:44

Mr.CodeIt (20 views)
2014-12-14 19:50:38

BurntPizza (42 views)
2014-12-09 22:41:13

BurntPizza (76 views)
2014-12-08 04:46:31

JscottyBieshaar (37 views)
2014-12-05 12:39:02

SHC (51 views)
2014-12-03 16:27:13

CopyableCougar4 (49 views)
2014-11-29 21:32:03

toopeicgaming1999 (115 views)
2014-11-26 15:22:04

toopeicgaming1999 (105 views)
2014-11-26 15:20:36

toopeicgaming1999 (31 views)
2014-11-26 15:20:08
Resources for WIP games
by kpars
2014-12-18 10:26:14

Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

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
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!