Mac - Is it worth it?

Started by dmoc, May 11, 2005, 22:07:24

Previous topic - Next topic

dmoc

Looking through the forums it appears there are several unresolved (unresolve-able?) issues with getting lwjgl working fully on the Mac. If the aim is for x-platform development would C & SDL be a better bet? LWJGL looks a great project but I'm keen to avoid investing too much time in it if I can't get the degree of platform independence I'm looking for. Please note this is not intended as a criticism of LWJGL (maybe of Apple) as I realise there's no definate delivery dates in projects of this type (hell, some die out before even getting started!). I do hope the Mac issues can be sorted out because I think this will benefit LWJGL.

princec

Er, there are no issues as far as I'm aware... although we don't have the latest FMOD and DevIL bits compiled, the core LWJGL stuff is all perfectly kosher. Apple have even fixed loads of stuff in 10.4 that we had to workaround which is nice.

Cas :)

dmoc

Hi Cas. I'm on 10.3.9 with no intention of upgrading in the near future. I've been trying on/off for a couple of day's and although I get some stuff working most things fall over. I think locating the resources is the main issue.

princec

Any specific problems running games or is it problems developing?

Cas :)

dmoc

I'm off to bed now but will post the results of the tests tomorrow. Thanks for replying.

dmoc

Here's a few examples of the problems I'm having.

With the contents of "jar" and "native" copied to "~/Library/Java/Extensions" and with "lwjgl-macosx-0.96" as the current directory (original "jar" and "native" directories still present)...

org.lwjgl.test.devil.BasicTest
==============================

Tried...

java org.lwjgl.test.devil.BasicTest
java -Djava.library.path=native org.lwjgl.test.devil.BasicTest
java -cp ./jar:./res -Djava.library.path=native org.lwjgl.test.devil.BasicTest
java -cp ./jar:./res -Djava.library.path=native org.lwjgl.test.devil.BasicTest
java -cp ./jar:./res -Djava.library.path=./native org.lwjgl.test.devil.BasicTest
java -cp .:./jar:./res -Djava.library.path=./native org.lwjgl.test.devil.BasicTest

All result in...

org.lwjgl.LWJGLException: Could not load devil library.
       at org.lwjgl.devil.IL.nCreate(Native Method)
       at org.lwjgl.devil.IL.create(IL.java:593)
       at org.lwjgl.test.devil.BasicTest.main(BasicTest.java:56)


java -Dorg.lwjgl.util.Debug=true org.lwjgl.test.SysTest
=======================================================

==== Test Alert ====
Opening native alert window
---- Test Alert ----

==== Test Debug ====
Debug is enabled, you should now see output from LWJGL during the following tests.
Initial mode: 1280 x 960 x 32 @85Hz
Removed 0 duplicate displaymodes
---- Test Debug ----

==== Test Timer ====
Resolution of timer (ticks per second): 1000
Current time: 1115894492356
Sleeping for 2 seconds, using Thread.sleep()
Current time: 1115894494362
Actually slept for: 1.1158944E9 seconds
---- Test Timer ----

==== Test URL ====
Opening a browser window to http://www.lwjgl.org
---- Test URL ----

Contents of clipboard: 'org.lwjgl.test.SysTest'

...hung at this point (Ctrl-C used). The alert window test is ok as is the browser window.


java org.lwjgl.test.DisplayTest
===============================

==== Test Current ====
Info about current:
Graphics card: null, version: null
Resolution: 1280x960x32@85Hz
---- Test Current ----
==== Test query ====
Retrieving available displaymodes
Found 94 modes
The first 5 are:
800 x 600 x 32 @72Hz
640 x 480 x 32 @96Hz
1600 x 1200 x 32 @60Hz
1280 x 1024 x 32 @75Hz
832 x 624 x 16 @75Hz
640 x 480 x 16 @60Hz
---- Test query ----
==== Test setDisplayMode ====
Retrieving available displaymodes
Looking for 640x480...found!
Changing to mode...done
Resolution: 640x480x32@96Hz
Resetting mode...done
---- Test setDisplayMode ----
==== Test setDisplayConfigurationTest ====
Testing normal setting
Configuration changed, gamma = 1.0 brightness = 0.0 contrast = 1.0
Testing gamma settings
Configuration changed, gamma = 5.0 brightness = 0.0 contrast = 1.0
Configuration changed, gamma = 0.5 brightness = 0.0 contrast = 1.0
Testing brightness settings
Configuration changed, gamma = 1.0 brightness = -1.0 contrast = 1.0
Configuration changed, gamma = 1.0 brightness = -0.5 contrast = 1.0
Configuration changed, gamma = 1.0 brightness = 0.5 contrast = 1.0
Configuration changed, gamma = 1.0 brightness = 1.0 contrast = 1.0
Testing contrast settings
Configuration changed, gamma = 1.0 brightness = 0.0 contrast = 0.0
Configuration changed, gamma = 1.0 brightness = 0.0 contrast = 0.5
Configuration changed, gamma = 1.0 brightness = 0.0 contrast = 10000.0
resetting...done
---- Test setDisplayConfigurationTest ----

...hung at this point (Ctrl-C used). Luckily I could still make out the windows!


java org.lwjgl.test.openal.PlayTest
===================================

no argument supplied, assuming Footsteps.wav
java.io.IOException: Stream closed
       at java.io.BufferedInputStream.ensureOpen(BufferedInputStream.java:120)
       at java.io.BufferedInputStream.read(BufferedInputStream.java:199)
       at java.io.DataInputStream.readInt(DataInputStream.java:443)
       at com.sun.media.sound.WaveFileReader.getFMT(WaveFileReader.java:244)
       at com.sun.media.sound.WaveFileReader.getAudioInputStream(WaveFileReader.java:160)
       at javax.sound.sampled.AudioSystem.getAudioInputStream(AudioSystem.java:710)
       at org.lwjgl.util.WaveData.create(WaveData.java:93)
       at org.lwjgl.test.openal.PlayTest.execute(PlayTest.java:112)
       at org.lwjgl.test.openal.PlayTest.main(PlayTest.java:218)
Exception in thread "main" java.lang.NullPointerException
       at org.lwjgl.test.openal.PlayTest.execute(PlayTest.java:115)
       at org.lwjgl.test.openal.PlayTest.main(PlayTest.java:218)

...supplying "./res/Footsteps.wav" gets rid of "no argument supplied, assuming Footsteps.wav" but rest is same.