Jump to content

  • Log In with Google      Sign In   
  • Create Account

FREE SOFTWARE GIVEAWAY

We have 4 x Pro Licences (valued at $59 each) for 2d modular animation software Spriter to give away in this Thursday's GDNet Direct email newsletter.


Read more in this forum topic or make sure you're signed up (from the right-hand sidebar on the homepage) and read Thursday's newsletter to get in the running!


#ActualMikeS

Posted 29 May 2013 - 12:48 PM

Hello GameDev Community,

I am currently developing a game framework for the Android system using Java. I have a small runtime scripting language that users can utilize to create models, move them around, and do various things.

However, I would now like to start targeting iOS applications.

So as a case study, how is an engine like Unity3D implemented? They have various scripting languages(Javascript, C#, etc.), and they can target multiple platforms.

Do they implement the same codebase on multiple platforms? For example: They have a Java codebase that implements all of the functionality needed to create android apps, and then they duplicate that codebase to implement all of the functionality they need for iOS apps, etc.

How do they deploy to multiple platforms? Are they simply translating source from a target language(C#, Javascript, etc.) and then generating Java code for Android from there Java codebase, Objective-C code for iOS from their separate Obj-C codebase, etc?

The overall theme of my question is how do I structure my codebase so that I am not duplicating a lot of work to support multiple platforms. Should I build my own VM that is deployed to each of these systems(I'm aware this will be a cost in performance)?

Thanks for your insight.

#1MikeS

Posted 29 May 2013 - 12:11 PM

Hello GameDev Community,

 

I am currently developing a game framework for the Android system using Java.  I have a small runtime scripting language that users can utilize to create models, move them around, and do various things.

 

However, I would now like to start targeting iOS applications.  

 

So as a case study, how is an engine like Unity3D implemented?  They have various scripting languages(Javascript, C#, etc.), and they can target multiple platforms.  

 

Do they implement the same codebase on multiple platforms?  For example: They have a Java codebase that implements all of the functionality needed to create android apps, and then they duplicate that codebase to implement all of the functionality they need for iOS apps, etc.

 

How do they deploy to multiple platforms?  Are they simply translating source from a target language(C#, Javascript, etc.) and then generating Java code for Android from there Java codebase, Objective-C code for iOS from their separate Obj-C codebase, etc?

 

The overall theme of my question is how do I structure my codebase so that I am not duplicating a lot of work to support multiple platforms.  Should I build my own VM that is deployed to each of these systems(I'm aware this will be a cost in performance)?

 

Thanks for your insight.


PARTNERS