August 2010 by psneville
1 Response
Here’s a tutorial and some source code I put together for loading, caching, and streaming audio from Amazon Cloudfront into Unity and Unity iPhone. It lets you keep those gi-normous backing audio files out of your core game distribution, but then persists them to your players’ local systems after the first request; it also manages iPhone playback through a native player (but controlled from your Unity script) to work around some Unity AudioSource issues on the iPhone.
Although the iPhone audio playback mechanism is native, it doesn’t require a plugin from Unity, so it ought to work with Unity iPhone Basic (although I believe plugins are expected to be available for free once 3 is out of beta). Anyway, some of that code originally came from the awesome power that is Jeff Murray at Psychic Parrot Games (http://psychicparrotgames.com/) who in turn was inspired (I think) by a tutorial from the amazing guys at Blurst (http://blurst.com).
I updated the objective-c and added a bunch of things, so obviously anything that breaks is my fault, not theirs.
Here’s a zip archive containing the source files and documentation. After you extract it, open the index.html file in the docs directory for all the details.
It’s free for any kind of use you like, commercial or otherwise, and you can make any changes to it that you desire (standard BSD license, to be specific).
MusicLoader_Unity.zip
February 2010 by psneville
2 Responses
When implementing a soundscape for games, it is not enough to attach audio clips to the correct game objects and hope the game engine handles the audio placement in 3D space correctly. Unless the engine includes a sound propagation engine and advanced audio occlusion and DSP API’s (and an audio engineer who can use them well), the result of merely tagging audio in space are usually weak, watered-down sounds, particularly for the local player in a multiplayer game.
It’s also subtly disconcerting to have a single sound — an explosion, for example — with the exact same waveform representing both local and remote audio, even though that is realistic; that is, it’s often more effective to diverge from realism in some cases, and employ different filters and even sometimes different waveforms altogether. I won’t argue for this statement intellectually, but we can trust our ears to tell us when it is true.
Continue Reading
November 2009 by psneville
8 Responses
Unity creates a game engine for 3D game creation targeted at PC, Mac, Wii, web and iPhone. In scoring a couple of recent iPhone games in Unity, I needed a means of adding interactive music; usually I would employ fmod or wWise for this sort of thing in a console or standalone desktop game, but the footprint issues are such that it’s not workable for iPhone, and those features are overkill for what I’ve needed.
It is possible to integrate fmod with Unity, by the way; it’s just not very practical on the iPhone. The startup time alone appears to be increased by 6-10 seconds on a 3Gs (and Unity already has a 7-12 second startup time on the iPhone as it is). Cool interactive audio is not worth making an iPhone user wait 20 seconds or more for the game to start!
So I wrote a simple engine for managing interactive music in Unity specifically for iPhone game development. It’s below, along with a simple demo app that exercises some of its capabilities. I’m placing it under a Creative Commons license, so feel free to grab it if you deem it useful in your project. I will also continue to iterate over it and improve it with further Unity games. I’ve zipped this up in an example project, but you’ll find the example audio files are missing; just add your own if you want to run it.
Continue Reading
June 2009 by psneville
NOTE: I’ve since removed this app from iTunes — thanks for the support, but there are now several tuners which DO operate well, and there seemed to be no need for me to continue this one.
Frustrated that none of the tuners in the app store seem to be particularly accurate, especially at high and low frequencies, I ended up writing my own chromatic tuner app. It’s in the app store now: http://itunes.com/apps/chromatuner
Continue Reading
May 2009 by psneville
2 Responses
As a big Propellerheads fan I’m happy to see this and will enjoy giving “Record” a try and comprehensive review. Despite my steady upgrades to higher-end studio equipment and software, I always find Reason among the most fun software to use, and it’s been more stable than just about anything else I employ.
This is the video announcement on YouTube.
Continue Reading
May 2009 by psneville
I’ve posted a couple of articles on how to set up PLAY with multiple computers and audio interfaces in networked fashion, and on how to run PLAY standalone with Logic on the same machine. The latter article employed Soundflower, which is handy especially if you’re on a laptop out on the wild and don’t have big clunky metal things cabled together, but it seems a lot of people want to use the networked approach — cabling hardware interfaces — on a single desktop computer, which has some advantages over Soundflower and other software buffering approaches.
This basically entails cabling an audio out of one interface such that it connects to an audio in of the same interface. But there are some gotchas in making it work on a single computer that you don’t run into if you do this with multiple interfaces across multiple computers.
Gerald Berliner of More Human Than Human has put up some YouTube videos explaining how to set this up. Here’s the link:
http://www.youtube.com/view_play_list?p=B7F3CA4BF0FF6D1F
December 2008 by psneville
41 Responses
I was asked how to run the EastWest Quantum Leap PLAY engine in standalone mode with Logic on the same computer. Below are the steps for doing so.
Continue Reading
December 2008 by psneville
A couple of times on my Intel Macs running OS 10.5 I’ve hit performance problems related to syslogd eating up CPU — even if you don’t know how to monitor your processes or check the Activity Monitor, you can tell when this happens when, with nearly no apps open, your windows seem to consist of molasses, and open and respond really slowly.
The cause is often syslogd and an enormous /var/log/asl.db file. In one case, mine was nearly 80 MB.
Solution:
Continue Reading
October 2008 by psneville
Most of a producer’s modern-day studio is virtual these days, and software has absorbed a lot of outboard gear. I know several composers who employ a simple keyboard controller and a small desktop control surface and nothing else other than a computer and monitor. This may sound obvious and uninteresting to some, but it’s an enormous change. I have a ton of virtual goodies myself, but only one piece of software really stands out as fun to use. How much does “fun” matter in software?
Continue Reading
October 2008 by psneville
12 Responses
NOTE: The instructions below refer to a setup on a PPC (non-Intel) Mac — I added separate steps I took for Intel Macs here.
Setting up EWQL Symphonic Choirs with WordBuilder in Logic Studio is not as straightforward as doing the same in other DAW’s, mainly because of the way Logic handles routings, which is (imho, as someone who otherwise likes Logic) ridiculously complicated.
Continue Reading