Raydium 3D Game Engine

Official forum for everything about Raydium, ManiaDrive, MeMak, ...
It is currently Tue Oct 24, 2017 5:52 am

All times are UTC




Post new topic Reply to topic  [ 58 posts ]  Go to page Previous  1, 2, 3, 4
Author Message
 Post subject: Re: Raydium goes Mac
PostPosted: Wed Dec 02, 2009 9:41 pm 
Offline

Joined: Tue Jul 08, 2008 2:37 am
Posts: 181
Small status report

First the bad news: Sadly I haven't found the time yet to reinstall my PowerMac, so on 10.4 Tiger PowerPC systems there could be problems with the universal binaries cross-compiled from an Intel based system. My hope is that Morloth/Bram is checking my suggestions hopefully fixing the problem.

Finally the good news: Since some time now, I've the additional possibility to use a MacBook Pro 5,5 shipped with an up to date 10.6 Snow Leopard system. The existing application disk images created under 10.5 Leopard and the Raydium SDKs work out of the box on this new system version, so no changes have to be made so far.

All in all we can say that the binaries are ready for 10.4 Tiger (maybe compiled exclusively for PPC only, we have to check this in detail), 10.5 Leopard and 10.6 Snow Leopard.


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Mon Jan 04, 2010 6:33 pm 
Offline

Joined: Tue Jul 08, 2008 2:37 am
Posts: 181
Finally I've found it! :D

You may notice that the package I've uploaded includes an OpenAL framework, but you may also know that Mac OS X already includes OpenAL (see "/System/Library/Frameworks"). This framework has been uploaded in order to fix troubles caused by the OpenAL framework provided on Mac OS X 10.4 Tiger.
Since then, it's absolutely unnecessary to put it in your application bundle if you don't plan to distribute your Raydium application for Mac OS X 10.4 Tiger.

You've also the possibility to install the framework globally in "/Library/Frameworks".

This'll fix the previous reported problem. However the OpenAL version delivered with Mac OS X 10.4 Tiger is not working well, that's why we provide a recompiled version.

If you have any question, please don't hesitate to contact me.

Download: OpenAL.framework.tgz (160KB)


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Sun Oct 03, 2010 7:24 pm 
Offline
User avatar

Joined: Sun Mar 16, 2003 2:53 am
Posts: 2590
Location: gnniiiii (Scrat)
Hi,

Hopes that you're still reading this, st, since I'm trying to use the iPhoneOS SDK (r888, the one on the download page) but without any success so far.

Code:
ld: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.2.sdk/usr/lib/crt1.o, file is universal but does not contain a(n) armv4t slice
collect2: ld returned 1 exit status


... is what happens currently, during test-iphoneos generation. I'm currently using latest Apple SDK, and it might be the root of my issue, don't you think ? Any idea on how I can fix this ?

(armv4t seem to be a very basic CPU, strange that it appears here :/)

quick edit : seems to work when I change arch to armv6 (instead of arm) in iCompile-iphoneos script. No sure it's correct/enough.


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Wed Oct 06, 2010 8:14 am 
Offline

Joined: Tue Jul 08, 2008 2:37 am
Posts: 181
Hi Xfennec,

surely I'm following the development process of the engine. I'm very busy these days. Sadly I had not much time to test the SDK with newer iOS versions.
Xfennec wrote:
Code:
ld: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.2.sdk/usr/lib/crt1.o, file is universal but does not contain a(n) armv4t slice collect2: ld returned 1 exit status
The libraries included in the SDK are only compiled for the armv6 arch. If you want to use another target you have to prepare them before yourself for now.
Xfennec wrote:
seems to work when I change arch to armv6 (instead of arm) in iCompile-iphoneos script. No sure it's correct/enough.
I tried to find a solution for this in the iOS ABI Reference. The new iPhone 4 has another CPU than older ones. It seems that must be the problem. We need universal binaries in the Raydium iOS SDK to support further iOS versions.

Best regards,
st


Last edited by st on Wed Feb 15, 2012 6:36 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Wed Oct 06, 2010 3:32 pm 
Offline
User avatar

Joined: Sun Mar 16, 2003 2:53 am
Posts: 2590
Location: gnniiiii (Scrat)
Thanks for the reply ;)

I had no time to do more tests, but it seems that gcc in newer Apple iOS SDK is able to compile for armv4, (and that's its default target)

The simple fix seems to be the -march=armv6 switch.

I've just found another issue with this new SDK: most textures are totally white. I think it's related to texture formats (GL_RGB, ...), but I have not checked it yet.


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Mon Oct 11, 2010 4:38 pm 
Offline
User avatar

Joined: Sun Mar 16, 2003 2:53 am
Posts: 2590
Location: gnniiiii (Scrat)
Texture trouble was related to trilinear/mipmapping, and ... disappeared by itself when updating to latest SVN release ! (1005 instead of 888). Something have changed somewhere and is fixing the issue :)

iPhoneOS Raydium SDK now works smoothly for me, I'll push experimentations further.
Do you have a tip for "freemove emulation" on the iPhone ?


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Tue Oct 19, 2010 3:07 pm 
Offline
User avatar

Joined: Sun Mar 16, 2003 2:53 am
Posts: 2590
Location: gnniiiii (Scrat)
I've finally achieved to render something clean and smooth on the iPhone ! kinghill2 is currently the best demo, but ManiaDrive is OK too ! (only rendering works, physics still need some work).

The thing is that I had to "disable" GLEW somehow. In facts, GLEW on the iPhone is doing most of its work (adding missing defines and functions of OpenGL ES), but then it's not able to find GL "extensions", so it falls back to an old GL 1.1 (I really mean GL, not GL ES) "context", leaving most functions pointing to ... NULL.

To make it short, GLEW overwrites glActiveTexture and glClientActiveTexture (and ARB equivalents, of course) with NULL. That's one of the reasons that made iPhone port generating so much "bus error" exceptions. I've simply commented out GLEW replacement for these functions in glew.h, and then it started to work.

Then, what is the best option for us ?
- change glew.h in the iPhone SDK ?
- try with a newer release of GLEW for iPhone ? (I'm dunno how you compiled it, I can't test)

I'll try to post screencaps/photos/video soon, a smooth kinghill2 on the Retina Screen is a must see ;)


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Wed Oct 20, 2010 7:48 am 
Offline

Joined: Tue Jul 08, 2008 2:37 am
Posts: 181
Nice! Following the SVN log you're doing great improvements on the iOS port.
I wish I'd more time to try out the changes.

Xfennec wrote:
Then, what is the best option for us ?
- change glew.h in the iPhone SDK ?
- try with a newer release of GLEW for iPhone ? (I'm dunno how you compiled it, I can't test)
I'd prefer a newer version of GLEW, but an option is to change the current one within the SDK. I'm currently and also probably the next days not at the location of the build machine, where I've created specific scripts to build the dependencies for the ports. You can see the build options on the original Raydium goes iPod touch and iPhone thread.

Xfennec wrote:
I'll try to post screencaps/photos/video soon, a smooth kinghill2 on the Retina Screen is a must see ;)
I'm looking forward to test the improvements. A video of them would be great. I hope to find time to provide help on this interesting topic.


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Sat Nov 20, 2010 12:05 am 
Offline

Joined: Tue Jul 08, 2008 2:37 am
Posts: 181
Okay, I'm back in business with fresh hard- and software!
iPhone 4 with iOS 4.1, an up to date Mac OS X Snow Leopard with the latest iOS SDK 4.1. 8)

I'm trying to spent some more "hopefully active" time on Raydium.

Xfennec wrote:
I've simply commented out GLEW replacement for these functions in glew.h, and then it started to work.
I've tried to follow your workflow. I've stopped at the position where to comment out that four :?: lines. I cannot build, neither for Mac OS X nor for iOS with my modification. My wish is to look at your modified glew.h file, what you have done to get things working. Without any modification in glew.h I'm able to build for both targets, but it'll end with the message from raydium/init.c: raydium_log("GLEW probably overwrite default existing functions, please update glew.h accordingly until we found a better solution ..."); on iOS.

Please provide the modified version of glew.h so I'm able to run my lovely game engine on my new mobile device. :D


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Sat Nov 20, 2010 11:26 am 
Offline
User avatar

Joined: Sun Mar 16, 2003 2:53 am
Posts: 2590
Location: gnniiiii (Scrat)
Yep, here you are, Sir ! ;)

Warning: it's probably the crappiest thing I've done since a long time.


Attachments:
File comment: Modified glew.h that does not override GL ES functions.
glew.h [511.23 KiB]
Downloaded 405 times
Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Sun Nov 21, 2010 12:10 am 
Offline

Joined: Tue Jul 08, 2008 2:37 am
Posts: 181
Thanks for providing the file. I'm now able to build and run on Mac OS X and iOS again.

Impressive work :!:

The demos look awesome! So smooth and fast. It's so much fun to test all these. Thank you very very much that you have done these improvements!

At the university we start a 3D project as part of the studies in a few months. I'll try to satisfy my team to use Raydium for the project.
What is definitely clear, that we'll need multitouch support for this, independent of what the project will be about. And in general Raydium should support multitouch. Any idea on how to integrate this feature into the engine? Perhaps we also should support keyboard input and vibrations, but multitouch is a must have!

P.S.: The iPhone 4 is (of course) so much better than the iPhone 2G indeed, makes much more fun to work with.


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Tue Nov 23, 2010 10:53 pm 
Offline
User avatar

Joined: Sun Mar 16, 2003 2:53 am
Posts: 2590
Location: gnniiiii (Scrat)
Hi st !

About multitouch, I had the same question while looking at myglut-iphoneos.m the other day. IMHO, the best way to do this is to provide a new set of functions, in mouse.c, so the user could get informations about touches. Should we provide a callback system or a "state based" one (like the mouse for instance) ? No idea currently, I will thing about it.

I also think that the 1st touch should be "merged" with the mouse (dunno if you see what I mean), and we should perhaps add some "helper" functions (distance/angle between fingers, for instance ?) since multitouch applications will probably have such things in common.

zoom/unzoom "gestures" may also be directly mapped to mouse 4/5 (mouse wheel) buttons ?

PS: I know you've little time, so there's no urgency in this request: could you update the SDK with newer revision of Raydium and a "patched" release of GLEW ? I would also think that iCompile should perhaps join the SVN trunk ? There's probably a few things to change in this script (some way to get rid of "hardcoded" iPhone IP address ? split engine/application compilation to speed-up application testing ? allow to generate multiple applications and not only "Test" ? ...) and it would be easier to do that without rebuilding the SDK each time. This is just a thought :)


Top
 Profile  
 
 Post subject: Re: Raydium goes Mac
PostPosted: Wed Oct 05, 2011 8:51 pm 
Offline

Joined: Sun Oct 09, 2005 10:46 pm
Posts: 759
Hello,

Trying raydium on iPhone a have a compile problem:
Quote:
./iCompile-iphoneos test-iphoneos.c
Undefined symbols for architecture armv6:
"_glDeleteLists", referenced from:
_raydium_object_dl_delete in cctAGuZh.o
_raydium_shadow_object_dl_delete in cctAGuZh.o
"_glLoadMatrixd", referenced from:
_raydium_viewport_direct_close in cctAGuZh.o
ld: symbol(s) not found for architecture armv6
collect2: ld returned 1 exit status


I changed iCompile script with armv6 target
and replace glew.h with one from this thread.
I use version 4,3 of the sdk.

Help welcome.

Have a nice day.
Ouille


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 58 posts ]  Go to page Previous  1, 2, 3, 4

All times are UTC


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group