AlexMeng1986 / gamekit

Automatically exported from code.google.com/p/gamekit
0 stars 0 forks source link

Add suport for Maemo #120

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago

Hi 

The patch below enable gamekit to be build on Maemo5.

-This patch is mainly based on the patch #3016143 from Ogre that you can found 
here 
http://sourceforge.net/tracker/?func=detail&aid=3016143&group_id=2997&atid=30299
7 and do disable   GL_DEPTH24_STENCIL8_OES because it is not suported in 
GLES1/EGL on Maemo platform. 

-OgreLite/OgreMain/src/OgrePlatformInformation.cpp , has been updated from the 
actual one in the mercurial repo.

-The rest of the patch simply add an OGREKIT_BUILD_MAEMO option and enable 
GLESRS .

To test it : 

-Install the sdk  as explained here ( best on Debian 32 bit ) : 
http://wiki.maemo.org/Documentation/Maemo5_Final_Installation
-Then login in the FREMANTLE_ARMEL target
-apt-get install opengles-sgx-img-common-dev  libgles1-sgx-img-dev libxv-dev 
libxaw7-dev subversion cmake cmake-curses-gui libopenal-dev
(-Maybe there are some other needed packages but finding them won't be the most 
difficult part )
-Build patched  Gamekit with OGRE_BUILD_MAEMO enable
-Transfert Sample/LogicDemo on the phone in /opt/
-on the phone install the non dev needed librairies
-Tweak OgreKitStartup.cfg (especially remove grabinput !!)
-Launch the demo

-The demo will have some graphics corruption and will be slow as hell but the 
main idea is there.
-As further improvment, a dedicated sample would be nice 
-(GLES2 / Ogre 1.8 too :) ). 
-Unfortunatly it is not possible to test it on FREMANTLE_X86 target under 
Xephyr because  this target is using opengl-mesa ans not opengles.

Original issue reported on code.google.com by A.Malote...@gmail.com on 28 Nov 2010 at 6:12

GoogleCodeExporter commented 9 years ago
support and not suport :)

Original comment by A.Malote...@gmail.com on 28 Nov 2010 at 6:14

Attachments:

GoogleCodeExporter commented 9 years ago
Great, but the patch seems to mess up the iphone build. We should find a way 
for those 2 build options to live together.

Also it would be good to check the source of the texture and the performance 
problems. 

Original comment by xavier.thomas.1980@gmail.com on 29 Nov 2010 at 2:41

GoogleCodeExporter commented 9 years ago
Except if i made an error, the patch do not break iphone build at all.
Maemo and iphone have GLES in common but  iphone use EAGL where Maemo use EGL.
All the code take care of this. 
If maemo is selected , it add a c++ __MAEMO__ define that will disable unneeded 
code in Ogre.
The main problem actually is that Ogre 1.7.2 basically assume that "ARM = 
IPhone" so it need to be patched. 

Original comment by malo.sa...@gmail.com on 29 Nov 2010 at 3:13

GoogleCodeExporter commented 9 years ago
Log file when starting LogicDemo

Original comment by malo.sa...@gmail.com on 29 Nov 2010 at 3:52

Attachments:

GoogleCodeExporter commented 9 years ago
For the texture corruption problem, it might be related to an OpenGL bug in the 
PowerVR driver.

Apparently it uses different texture filtering method for textures >= 512x512 
and for textures < 512x512. The latest one being buggy and corrupting texture 
data.

https://bugs.maemo.org/show_bug.cgi?id=9688
http://bugreports.qt.nokia.com/browse/QTBUG-9301

Original comment by xavier.thomas.1980@gmail.com on 29 Nov 2010 at 7:34