Windows to IOS or Android porting!!

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Windows to IOS or Android porting!!

      As the book stats

      "one would rewrite most of the code in the application layer"

      I been trying my luck on google to find a good way or the right way to port the engine to other platforms but haven't found any info.

      I'am hopping for good practical advise -site or Book :) to help me along as i don't want to apply this good book to a hole java engine as just started my way back to c++ :)

      so any help would be more than welcome, thanks in advance.
    • RE: Windows to IOS or Android porting!!

      Porting GCC4 to android or iPhone is not a trivial task. Mike and I could write a whole other book just on mobile game development.

      Are you familiar with basic mobile development, such as setting up a hello world app or rendering a spinning cube in OpenGL? If not, I would strongly recommend that you start there. Once you understand how to build, load, and execute a 3D application on a mobile device, you can come back and basically rip out the entire Application layer and a lot of the view code (the DirectX stuff, specifically) to get it to work.

      When I worked at PlayFirst, my job was porting PC games to the iPhone and iPad. It took several months per game, so you're in for a long ride. :)

      -Rez
    • Ooouh i was afraid you would say that.

      Been doing some small tick tack game with OpenGL on Android tablet, but still only a scratch on the surfes by all things.

      I was looking for a more solid engine so one could apply it to more games down the line :) not one that was all integrated with the game.

      I was working with C# to make an engine then back to java, be for i got your book and inn my wide collection of books.

      -With inn Game making which really stand out as the best-

      and with it i was happy to be back with c++ and was hoping to be stuck with it for a time lol.

      So looks like it would be to use your way of thinking with android java to make the game instead of trying to port any thing i make inn c++ tho i say, i dreading going back to it.

      sorry for my ranting, and thanks for the advise.

      Robin.
    • Porting GCC4 to Android or iOS would be pretty wicked hard - interface is different, OS is very different, programming languages aren't even the same (Java or ObjectiveC).

      Rather, I might grab an existing engine that works on one or more of those platforms first, play around with it, then port some of the bits/systems from GCC that made sense.

      For example, if you really liked the LUA scripting system or the sockets based network code, the cooperative multitasker or the event system, you could certainly move those over one at a time.

      The scene graph portion of the graphics system you could move over too, most likely.

      But, I wouldn't do it all at once, unless you were a complete guru at both Windows C++/DirectX AND mobile development at the same time. I'm not too slow at either myself, and I'm not sure I'd even give it a go.

      Perhaps a better question is why you want to do it? What do you hope to achieve ultimately? Maybe the answer to that question will illuminate a direction for you that will be more fun and fruitful.
      Mr.Mike
      Author, Programmer, Brewer, Patriot
    • I have experimented with porting to Android, and you are going to have to face a ton of hurdles to get your C++ engine to android.

      - Either you expose your program with JNI stubs, which isn't too hard if your main is essentially a few program calls, or use use the NativeActivity from the native SDK, you need to know though that older devices don't support NativeActivity, I believe it's everything below 'Froyo'

      - If you use a lot of libraries in your engine like me, your biggest challenge is going to be building the libraries for Android and HOPE there aren't any android specific bugs
      - There is no proper debugging for your android code, so expect to have more trouble than usual in that area
      - Don't expect the virtual android device to run your game, you will likely have to continuously load your game onto an actual device
      - Use eclipse, this isn't a necessity but for the love of all that is good use Eclipse for Android development

      Currently my engine compiles on Android, but doesn't link, I don't have the time currently to build my library set, that being said though, I am close and maybe some time when I get the chance I will finish it up and hopefully have some cool examples to show.

      I do have a port of my engine to Flash, sort of, it uses the flash framework for the application layer, however the actor and state systems are essentially the same. I have a flash game due for my 4th term assignment and I decided why not use the GCC style architecture? The reason I am mentioning this is because I don't think it is overly hard to port your code to another language or platform as far as compilation goes, I think the hard part is

      - Having a good environment set up, this includes in the androids case, a toolchain for building your libraries
      - Dealing with platform specific bugs that pop up, for instance in my Linux build of my game, I had a ton of 'strange' bugs, likely to do with slight differences in certain implementations of the standard library set

      The new engine I am working on has an android build, as I would like to play with the Ouya a bit, but even from scratch the task of concurrently keeping a stable android build of a C++ engine is difficult.
      PC - Custom Built
      CPU: 3rd Gen. Intel i7 3770 3.4Ghz
      GPU: ATI Radeon HD 7959 3GB
      RAM: 16GB

      Laptop - Alienware M17x
      CPU: 3rd Gen. Intel i7 - Ivy Bridge
      GPU: NVIDIA GeForce GTX 660M - 2GB GDDR5
      RAM: 8GB Dual Channel DDR3 @ 1600mhz

      The post was edited 1 time, last by mholley519 ().