iPhone?

You are an experienced programmer and have a problem with the engine, shaders, or advanced effects? Here you'll get answers.
No questions about C++ programming or topics which are answered in the tutorials!
timmymorris91
Posts: 19
Joined: Tue Mar 18, 2008 9:43 pm
Location: Wagga Wagga, Australia

Post by timmymorris91 »

Wow, too far!! Hang on matey!!
Now listen mate! Fair dinkum!

Im very proud to be Australian mate. Now, mate, what is a Kangaroo??
Image
BlindSide
Admin
Posts: 2821
Joined: Thu Dec 08, 2005 9:09 am
Location: NZ!

Post by BlindSide »

You get points for not dishing out the sheep card :P
ShadowMapping for Irrlicht!: Get it here
Need help? Come on the IRC!: #irrlicht on irc://irc.freenode.net
timmymorris91
Posts: 19
Joined: Tue Mar 18, 2008 9:43 pm
Location: Wagga Wagga, Australia

Post by timmymorris91 »

Believe me, it was extremely hard to not to. I had to control my hands from typing it in. Lol
Image
LeSnip3R
Posts: 7
Joined: Wed Jun 04, 2008 8:32 pm

Post by LeSnip3R »

Perhaps you missed it... I know that Since I am in the iPhone beta program. I was only saying that I'm trying to support both toolchains... For the good of the FOSS world.
A'right, just making sure :) I'm more interested in the official one though.

timmymorris91 > We have iPod touch here in Perth :lol: :wink:
while( ![self asleep] ) {
Sheep* aSheep = [[Sheep alloc] init];
if( !aSheep )
[self destruct];
[meadow addSheep:aSheep];
[aSheep release];
}
LeSnip3R
Posts: 7
Joined: Wed Jun 04, 2008 8:32 pm

it's working there

Post by LeSnip3R »

An update: http://rafb.net/p/2hyOnC12.html

It's starting to work. I've modified Hybrid's driver, since the EGL is not supported in 2.0 it would not compile. I've put all the EAGL stuff on the device side and used the MacOSX version as a template (EGL relies on the Linux Device).
The device class is not finished, but the barebones are here and it all compiles and run on my ipod.
while( ![self asleep] ) {
Sheep* aSheep = [[Sheep alloc] init];
if( !aSheep )
[self destruct];
[meadow addSheep:aSheep];
[aSheep release];
}
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Post by hybrid »

Cool 8) Maybe you can give a short video to show it running on an iPod/Phone?
BTW: Since the iPhone does support the BGRA extension we might put the ogl-es stuff into the official OpenGL driver. Once you've figured out which parts of the AEGL part can be open sourced we could also put that into the opengl driver then. I just wanted to avoid to put the color order hack into the core library.
grafikrobot
Posts: 44
Joined: Wed Dec 26, 2007 11:42 pm

Re: it's working there

Post by grafikrobot »

LeSnip3R wrote:An update: http://rafb.net/p/2hyOnC12.html
That looks wrong to me. The chip does support multitexturing, with 2 texture units. So either you've done something wrong in the setup or the detection is messed. When I run things I get:

Code: Select all

Irrlicht Engine version 1.4.1
Darwin 9.0.0d1 Darwin Kernel Version 9.0.0d1: Wed Dec 12 00:16:00 PST 2007; root:xnu-933.0.0.211.obj~2/RELEASE_ARM_S5L8900XRB iPod1,1
Using renderer: OpenGL ES
PowerVR MBXLite with VGPLite: Imagination Technologies
COpenGLExtensionHandler::initExtensions...
GL_OES_byte_coordinates GL_OES_compressed_paletted_texture GL_OES_fixed_point GL_OES_point_size_array GL_OES_point_sprite GL_OES_read_format GL_OES_single_precision GL_ARB_texture_env_combine GL_ARB_texture_env_dot3 GL_OES_draw_texture GL_IMG_texture_format_BGRA8888 GL_APPLE_texture_rectangle GL_APPLE_client_storage
GLSL not available.
grafikrobot
Posts: 44
Joined: Wed Dec 26, 2007 11:42 pm

Post by grafikrobot »

hybrid wrote:Once you've figured out which parts of the AEGL part can be open sourced we could also put that into the opengl driver then.
That might be a bad idea. I think the GLES behaves sufficiently different that it will just make a mess out of the regular GL code. Restructuring the GL driver so that there is some common code between two sub-drivers, OpenGL and OpenGLES, would be good.
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Post by hybrid »

ogl-es 1.x isn't that different, it's no problem to put the ifdefs into the driver. And the driver init functions are planned to go into the driver for all systems anyway. Currently, only windows has the init code there, but it's really a mess to have so much ogl code in the Linux device.
Unfortunately, it's not easily possible to make an ogl driver stub, because the changes only affect some statements in each method. The duplicated code would be much larger than what could be said to be maintainable. So I still favor the "inlined" ogl-es 1.x driver. For the 2.x version I'm not sure, yet.
grafikrobot
Posts: 44
Joined: Wed Dec 26, 2007 11:42 pm

Post by grafikrobot »

By the way I'm finding out it would of great help to have an ETS_PROJECTION_2D (or perhaps ETS_VIEW_2D) so that one can rotate the 2D drawing to support landscape drawing of UI elements.
pixeljunky
Posts: 19
Joined: Sun Feb 25, 2007 1:31 pm

Post by pixeljunky »

Wow i am excited to see irrlicht on the iPhone / iPod.
LeSnip3R
Posts: 7
Joined: Wed Jun 04, 2008 8:32 pm

Video ?

Post by LeSnip3R »

Hi,
sorry for the delay guys.
Aa far as I'm concerned it's Hybrid's nice OpenGL driver, with if-defs to isolate the EGL stuff to be replaced by MobileMacOSX stuff. That is it.
Now the device is in so bad shape, there are ugly workarounds everywhere.
I had trouble getting it to display anything also, the way the tutorial of Irrlicht was doing it was not the Iphone way :D
Anyway I found out what the problem was partly thanks to grafikrobot (for the compile error) and there it is: a crappy video :)

It was made with my nokia so sorry for the bad quality. It is just loading the tutorial of Irrlicht. I intentionnaly set a limit of 10FPS, I went as far a 60.
http://www.mediafire.com/?9odmdjrgjsm

For the Multitexturing bit, I know, but that does not matter as of yet. We'll see the details later. I bet it's a problem of detection in the OpenGL driver with all my if-def + lack of sleep, that could be the cause.

A big issue though is that it's nearly impossible so far to load much resources. What I mean is that the default font does not load (maybe I made another mistake), when loading a Quake level it loads fine but can't load any textures...

Anyway, there is a lot of work, anyone wanting access to the code... well I'll have to post it somewhere, maybe on google code. The only part under NDA would be the EAGL class provided by Apple and that can be obtained from any iPhone SDK.
while( ![self asleep] ) {
Sheep* aSheep = [[Sheep alloc] init];
if( !aSheep )
[self destruct];
[meadow addSheep:aSheep];
[aSheep release];
}
renegadeandy
Posts: 122
Joined: Sun May 25, 2008 11:14 pm
Location: Scotland
Contact:

Post by renegadeandy »

I own an iphone and you would be amazed at its possibilities in terms of graphics and processing.

I am sure the developers here who are trying this understand it, but just to make sure you should check out modmyiphone.com and maybe checkout some of the 3d games sources in there, not relevant to Irrlicht but they get some crazy amazing graphics and 3d games running there, some parallel of not better than quake 2!
gmcbay
Posts: 5
Joined: Sun May 14, 2006 1:55 am

Post by gmcbay »

nice
Last edited by gmcbay on Fri Jul 04, 2008 5:46 am, edited 2 times in total.
LeSnip3R
Posts: 7
Joined: Wed Jun 04, 2008 8:32 pm

Post by LeSnip3R »

Actually I am thinking about posting that to google code.
Unless there is some other place/people I should submit my code to.

After this week's changes it's actually not that much of a mess. The remaining changes are mainly internal, especially about resource loading and input system.

If anyone knows how to use the built-in classes to load textures in to Irrlicht that could save the trouble of compiling the libPNG and libJPEG and all that stuff.

EDIT: Waiting for Apple answer on that matter.
while( ![self asleep] ) {
Sheep* aSheep = [[Sheep alloc] init];
if( !aSheep )
[self destruct];
[meadow addSheep:aSheep];
[aSheep release];
}
Post Reply