PC to MAC/Build to IOS workflow for single user, what's yours?

Like most of us I do most of my development on a PC for all level design and art creation, using 3ds max/photoshop and such. I am a 1 guy dev team, from programmer to artist to tech support, so I don’t require the use of the Asset Server and I am never worried about anyone else overwriting my work anything like that.

That said, up until Unity version 3.5, my workflow consisted of just “mirroring” my whole project back and forth between PC and Mac, so that both project folders would be identical after the sync. Of course this would force Unity to re-import assets, and when going from the PC to the Mac, I had to switch platform every-time from Standalone to IOS, forcing Unity to once again re-import certain assets for the IOS environment.

I didn’t mind the wait, and prior to Unity 3.5, once the platform switch and re-import process was done, I was able to make a new build and the project would compile in Xcode without hiccups, and within minutes I had the game running on the phone, so everything was great.

After installing Unity 3.5 however, I haven’t been able to do that. After switching platforms and re-importing assets, if I make a new build and try to compile and run in Xcode, I get hundreds of linker errors for missing symbols from “RegisterMonoModules.o”. Even if I shut Unity down and restart it, make a new build, I run into the same problems. The only way I can get the build to compile is to ‘completely’ uninstall Unity 3.5, then re-install it, open my project, make a new build, which then compiles fine in Xcode. Had to do that twice so far.

So I setup a SVN repo and I turned on “.meta” files in the editor (indie IOS version). I checked in the Assets and ProjectSettings folders, and tonight when I get home, I will try to checkout the project on my Mac, make a build and prey it will compile in Xcode with no linker issues.

I am wondering, as a 1 person dev team, what’s the best approach to working between PC/MAC/IOS ? Is SVN the right approach, or will I run into the same problems? What are you guys doing, and is it working for you?

Stephane

At the moment, I am using this setup (just me)
It will not scale well for larger teams, but for just me it’s a good setup.

If I get some more time, I am planning to setup a build server.
Like these ones for example:
http://www.cratesmith.com/archives/304

I use git, but otherwise do as you’ve done. You could skip the source control if you want to, though, to avoid having to submit broken files - if you do all your editing (including iOS bugfixing) on the PC, and use something like rsync to sync changes across to the mac before you press “Build and Run”. Just make sure you enable “external version control” and only copy the Assets and ProjectSettings folders across, just as you would with source control.

I really like the “Build Server” setup - for bigger teams of course - and the dropbox way seems easy to setup. Thanks for the links!

I use “Beyond Compare” to sync between PC and Mac, but I usually sync everything, including the Library folder…I think that’s the reason why things got messed up when making a build?! You’re right i probably don’t need to use SVN then, I’ll give it a try when I get home tonight.

Thanks for the help guys!

So i have another question, regarding project settings files between PC and MAC folders. Which settings files should NOT be overwritten when syncing/updating the project folder on the MAC, so that the platform under “Build Settings” stay on IOS, that way Unity won’t have to re-import all the assets?

Another question I have, about .meta files: When I checked out the project folder from my svn repo to my MAC, and then opened Unity, switched platform to IOS, and re-imported all the assets, all the .meta files showed up as modified. Now let’s say i go do some work on the PC and commit my last changes, then update on the MAC, there’s going to be some conflicts between .meta files in the svn repo and the modified .meta files on the MAC. If I revert all the .meta files on the MAC, this will force all assets to be re-imported, correct?

Stephane

Just revert. It shouldn’t import them because they already exist. Anytime I have conflicts on my Mac I just revert the whole asset folder and I’ve never had any problems.

Got it, thanks!