We’ve been using this tool for over a year now, internally. It’s still a hack–so your mileage may vary–but we’ve been quite happy with it! It’s taken us awhile to scrounge together a release, but here it is:
1) Get Windows. UnityDevelop is a modified FlashDevelop. Unfortunately, FlashDevelop is Windows-only, which means you’ll need to find some way to run Windows alongside your Mac (unless you’re using Unity 2.5 by now, in which case you’re probably golden)! We recommend using Synergy to share a keyboard/mouse between both monitors, or virtualizing Windows entirely.
If you virtualize Windows, seriously look into a stripped-down version of XP. You can use nLite to do this yourself, or you can download a pre-made ISO if you don’t mind dipping into the shadier areas of the Internet. This will reduce the memory footprint of XP tremendously (the popularity of Netbooks means there are endless tutorials and pre-made variants available). If you run multiple monitors, you probably don’t want to run the Coherence/Unity feature, which can be slow with a ton of desktop real estate. We run Parallels in windowed mode.
2) Download UnityDevelop (2.9 MB).
3) You probably want the classes for Unity 2.6 (replace the files in your UnityDevelopClasses directory).
4) Unzip, and copy the UnityDevelop directory to “C:Program Files”. There are some hard-coded paths in here; apologies if you organize your apps differently!
Creating a Project
UnityDevelop works best if you have your scripts in a single, scripts-only directory to begin with. Open up UnityDevelop, and go to Project->Create Project. We directly access our Unity project files via a network share; this is fine.
A “project” is just a pointer to a directory. If you add new files in Unity, they will show up here. If not, click the refresh icon in the “Project Explorer” pane, or, in a worst-case scenario, just restart UnityDevelop. In general it’s easiest to make new files in UnityDevelop directly. The same restrictions apply here, though–make sure you do all of your script renames in Unity itself (if you rename outside of Unity it’ll look like one file was deleted and the other freshly created).
Now, edit away! You’ll get autocompletion for built-in Unity scripts, as well as your own files.
Tips, Tricks, and Questions
Changing the Font
Our default settings file uses Consolas, which is a great programming font. If you want to change the font, close UnityDevelop, edit SettingsScintillaNET.xml, and restart.
CTRL-I is the shortcut to find in project. It populates the search terms with your selection–you can easily select something, hit CTRL-I, enter, and see results immediately. Nice!
F4 will go to the declaration of a function. You’ll end up in the intrinsic class files for anything Unity-specific.
Editing Into Two Directories
If you get crafty with symlinks you can edit into your “Scripts” directory and the “Editor” directory. On your Mac, create an empty folder, and then create symlinks into your project folder for both. Create the UnityDevelop project file in this new directory. If none of this makes sense, don’t worry (Pro Tip: Use a network share to access your Mac; this won’t work with VMWare/Parallels built-in sharing).
I Can’t It to Work. Can You Help Me?
Honestly, no, we can’t. Sorry! It took us forever just to release this, and all we had to do was zip up some files and write this post. We don’t have time to support it, so you’re kind of on your own.
I Added Some New Stuff. Do You Guys Want It?
Yes please! It would be awesome to see this grow. Just drop us an email! FlashDevelop 3 is almost done, too, if someone wants to take a stab and making the same hacks.
Here is the source code, by the way.