NEWS         TESTS         INTERVIEWS         DOSSIERS         GALLERY 3D         3D SITES
 Q&A Ogre3D iPhone
David Rogers
Ogre3D Team
Dec. 2009
 

 

“[...] scene management, advanced material usage and high performance rendering that Ogre provides for the desktop are also available on the iPhone. You can create beautiful scenes with large poly counts and still get an excellent framerate.”

< Ogre3D on the iPhone

   
Q1 You have joined Ogre3D Team in order to port Ogre3D to the iPhone. What's the actual state of this project?
A1

Actually I joined the team after I had finished the first revision of the port. Some time in March or April I decided that I needed something help hone my skills but I also wanted to help others. I had explored Ogre in the past and had been using the iPhone SDK since it was introduced. I saw that an iPhone port was on the Help Wanted page of their wiki so I decided that it was what exactly what I wanted to do. I was pleasantly surprised when Steve Streeting asked me to join the team. It's been a huge learning experience and a great deal of fun. The iPhone port is very stable and has received a quite a bit of testing. Starting with the upcoming 1.7 release of Ogre, iPhone OS will become a supported platform just like Windows, Linux and Mac OS X. Currently, it is available for anyone to try out in the Ogre Subversion repository.

   
Q2 What are the principal limitations between the PC version and the iPhone?
A2 There are actually very few limitations. Features that require the use of shaders such as compositing are not yet supported but all other features such as skeletal and camera animation, billboarding, particles, scene querying and management work great. Of course, the iPhone is a very powerful mobile device but not as powerful as today's desktop PCs so you must plan your project accordingly.
   
Q3 Is it possible to create an iPhone game using Ogre3D without a Mac? What is the development environment?
A3 Presently the development environment is Xcode on Mac OS X. But because Ogre is cross platform, has a number of GUI, Physics, AI and input libraries that can be easily incorporated with Ogre, it is possible make a game on any platform and then port it fairly easily to the iPhone.
The same tools that people use to create content for other platforms can also be used for iPhone development. Create meshes in Blender, 3DS Max, or Maya. Edit scenes with Ogitor. All assets created can be used without modification on the iPhone.
   
Q4 How do you handle the differences between iPhone 3G and 3Gs (openGL ES 1.1 and 2.0)?
A4 Only OpenGL ES 1.1 is supported currently, but support for 2.0 is a high priority that is already in development. Because 2.0 has many fundamental differences from 1.1 (no fixed function pipeline and addition of the shading language), it needs to be a separate render system. Much like DirectX and OpenGL, you will have to either choose one at runtime or the highest supported version will be automatically chosen for you at runtime.
   
Q5 Actually different engines export to iPhone (Unity 3D, Shiva, Torque), how do Ogre3D complete with those solutions?
A5 Ogre can't be directly compared to those engines because it is only a rendering engine, while they are complete game engine and content creation solutions that include AI, physics, scripting, etc. Many engines similar to Unity 3D, Torque, etc. require developers to use a scripting language often based on Javascript which is then compiled down to machine code or interpreted at runtime for the platform that you choose. This can be very nice because it they provide a single interface for content creation and coding regardless of platform and has a shorter learning curve but at the cost of performance.
Ogre is written in and provides interfaces for C++ for high performance. There are also a few wrappers for languages such as .NET, Python and others and also wrappers for a large selection of third party commercial and open source libraries. While I can certainly see the benefits of other engines, I prefer Ogre because of the control and flexibility that it gives me. You have the flexibility to choose which libraries you want to use for physics, AI, audio, etc. That flexibility gives you the option to create a toolkit that your development team is most comfortable with which can decrease development time.
If speaking strictly about rendering, the same scene management, advanced material usage and high performance rendering that Ogre provides for the desktop are also available on the iPhone. You can create beautiful scenes with large poly counts and still get an excellent framerate.
   
Q6  Is there already some iPhone Apps based on Ogre3D engine?
A6 Several people on the Ogre forums have talked about using Ogre for iPhone projects but I haven't heard any details about them yet. Since iPhone is just becoming a supported platform most anything that has been made so far is for exploration or proof of concept. It would be great to see some existing games made with Ogre ported to the iPhone as well as brand new projects that use Ogre in brand new, creative and innovative ways. I'm excited to see what people will do with Ogre on the iPhone with the 1.7 release.
   
Q7 There are several ways to add a user interface on Ogre3D (CeGUI, Hikari...). How to build a UI with the iPhone?
A7 Because Hikari depends on Flash, which is poorly suited to mobile devices such as the iPhone, it is not supported. Other powerful libraries like QuickGUI, BetaGUI, CEGUI for example should have no problems. As long as you can compile it for the iPhone then almost any GUI library should work just fine. I expect that most of the popular GUI libraries available for Ogre will have few issues, if any. The same philosophy applies to other library wrappers, developers should be able to harness the resources and tools that they are already using in their development and content creation pipelines.
Starting with the 1.7 release, Ogre has a new Sample Browser which has it's own GUI system. It only required some small changes to work on the iPhone. Resizing and repositioning some UI elements was all that was needed.
   
Q8 What are your advice for people who want to develop 3D content with iPhone?
A8

Use your imagination, don't shy away from doing something different and crazy. Not only will it get you noticed but it is essential for the evolution of gaming. The ease of development for the iPhone makes it a fantastic environment for experimentation. Hardware-wise the iPhones and iPod Touches are close to fifth generation consoles(Dreamcast, GameCube, etc.). The focus is more on clever design and input than cutting edge graphics. Don't get me wrong, the graphics are strong but can't be compared to the Xbox 360 or PS3. Much like the Wii, the iPhone allows developers to innovate in user interfaces and input in dramatic and previously unavailable ways.
The iPhones' accelerometer lets you treat the device as a controller. Just like how the Wii Remote can be used as a steering wheel. Remember playing Super Mario Bros., watching your friends jerk the controller up when they wanted to jump? Actually using that motion to jump has become a reality now.
It helps to think of the iPhone as a console. Pay special attention to memory management and learn about the tricks that console developers have been using for years. Become great friends with artists. Burn lighting effects into textures, use shading on textures to hide a low poly count and use compressed textures.

   
Q9  Ogre3D have been used for TorchLight - a game that receive good critics - do you think that the differences between expensive engines (CryEngine, Unreal) and Open Source engines is getting low?
A9 I think it is starting to. The potential is definitely there. Many commercial engines are tightly integrated with all subsystems while with Open Source you can choose all systems yourself and create your own custom game engine. There may be some legwork that you will need to do to tie them all together. You may find wrappers already made to put it all together. While there may be some more work for the developer to do to get exactly the system and tools that they want, it gives them a large amount of freedom which can be invaluable.
The Open Source model also gives you the advantage of community support. Plugins and other code can easily be contributed to help others implement the same techniques that are used in commercial engines. Plus, commercial engines can cost thousands of dollars and engines such as Ogre are free. I would say that the development cost to assemble a game engine from Open Source projects is far less than licensing a commercial solution.
   
   
 
  Search on 3d-test with Google
      A PROPOS DE 3D-TEST            INFORMATIONS LEGALES               LINKS              TRANSLATE WITH GOOGLE
 
© 2001-2007 3d-test, Panorama of web 3D technologies, 3d-test is edited by Westimages Realtime 3D Solution Provider