Hi,
I had the opportunity today to test my xith3d applet on a Mac OS X with bigendian processor, and here are two issues I found, with fixes.
System : Mac OS X 10.5.4, ppc
Java : Java HotSpot(TM) Client VM 1.5.0_13-119 (Apple Inc.), version 1.5.0_13
1) Sound loaded from an ogg file played only a big crackle ; I found that replacing the code at lines 314 and 315 of /xith3d/src/org/xith3d/loaders/sound/impl/ogg/OggSoundContainer.java with the following code fixes the problem. Not sure why we have to do that, I thought that "bbuffer.order( ByteOrder.nativeOrder() );" should handle the bigendian case.
// loop through the chunks and put them in the buffer
if(ByteOrder.nativeOrder() == ByteOrder.BIG_ENDIAN) {
for(byte[] chunk : chunks) {
for(int i = 0; i < chunk.length; i += 2) {
bbuffer.put(chunk[i + 1]);
bbuffer.put(chunk[i]);
}
}
}
else {
for ( byte[] chunk: chunks )
bbuffer.put( chunk );
}
2) The cursor once hidden displays something strange. Replacing the 1x1 EMPTY_CURSOR_IMAGE image with a 16x16 in /jagatoo/src/org/jagatoo/input/impl/awt/AWTCursorConverter.java on line 49 fixes it.
private static final BufferedImage EMPTY_CURSOR_IMAGE = new BufferedImage( 16, 16, BufferedImage.TYPE_4BYTE_ABGR );
Apart from that everything worked fine.