How does one efficiently develop for multiple platforms? Specifically, I will be building a game for iOS and windows desktop. Is it possible to have 2 versions of an art asset (e.g. a texture) within the Unity Editor - one optimized for iOS and a "heavyweight" one for desktop version? Then when I run the game, the appropriate asset will be used depending on which platform I want Unity to target at that time. The only way I can think of trying this is some sort of source control mechanism which involves branching my project into an iOS and a Windows branch. Common files will somehow be symbolic links ( like in Unix file system).
1 Answer
1Any new ideas on this?
I’ve tried three methods:
-
use separete resources foders (not good as it increases build size)
-
use different skins (combersome)
-
replaceing stuff manually when switching platforms (also very combersome)
I have this same issue. I specifically need to use lower-poly models for mobile (which I've done with scripts), but more annoyingly, materials which crash mobile (Android) but work fine on iOS and web/pc/mac. I'd hate to have to script those as well.
– DaveAWindows has also had symbolic links for a while now, and with Windows 7 they're actually usable! Run "mklink /?" from a command shell for more info. You could set up a folder structure with common/win/ios sub-folders and re-link them prior to loading Unity. I'm not sure how the Unity asset loader and scene cache would cope with this though.
– yoyoSee also http://answers.unity3d.com/questions/32734/how-do-you-change-meshes-between-different-target-platforms
– yoyoA big problem for me too. I need Windows and Android deployment
– eormeno_idei