Introducing String Manager


Attention: String Manager has recently been refactored with expanded functionality for even easier usage and has shaved off 178KB from your final build size. If you are using an older version please delete the previous version’s folder and install the new version available from the download link below.

Read more →

Tunneling in Augmented Reality

A magician never reveals his secrets… most of the time.

Since this post I did on augmented reality I’ve received a ton of requests for how to pull off tunneling and penetration effects in augmented reality. This blog post marks my giving in on trying to keep this effect a secret and I’m giving away a sample of how to pull off tunneling in Unity with depth masking. While this effect is geared towards augmented reality I hope the depth masking technique I used opens the flood gates of creativity for other effects.

Read more →

Simplifying Screen Positioning in Unity

User interface resides in one of the nine sections of any screen it’s designed for: Upper Left, Upper Middle, Upper Right, etc. and maintaining consistent positioning for your UI while trying to centralize game code to be run on multiple device resolutions can be annoying and tedious.

Read more →

Maximizing Mobile Augmented Reality

You can’t stop progress.

Mobile Augmented Reality (MAR) should be flooding the consumer landscape within the next 6 months – whether you like it or not. I know a decent amount of the design and development community considers augmented reality in ANY form a gimmick but I fear they’ve forgotten what its like to say “wow”. Don’t get me wrong – it’s difficult to remain innocent when you know how all the special effects work but if you neglect the innocence of our audience then you will inevitably be left behind.

Read more →

Working with String

Please note that as of version 1.1 String no longer requires the preprocessor macro.

Let’s be honest, desktop augmented reality was a whole lot of something wrapped up in a whole lot of awkward. Static, integrated cameras and us looking like idiots proudly displaying black and white blocky printouts across our chests trying to convince our wives that this is “really cool”. Fast forward to now and let’s all embrace the new proper augmented reality: mobile augmented reality (MAR).

Read more →

Understanding iTween Callbacks

One of the most frequent problems I see people have with iTween is with callbacks that don’t fire.

At it’s core iTween leverages Unity’s SendMessage method for carrying out it’s 3 callbacks: “onStart”, “onUpdate” and “onComplete”. When you add an iTween to a GameObject, iTween will throw all callbacks against the GameObject that is being animated. Where most people have difficulties is when they assign iTweens to GameObjects that don’t physically contain the methods they are attempting to call.

Read more →

Masking in Unity

Masking is a fundamental technique that has hundreds of usages. Just take a look through some of the Flash work in my portfolio and you’ll see where masking really shines with respect to animating the introducing of visual elements. Coming from a Flash background, I was dumbfounded when I realized Unity didn’t have any technique for masking geometry and images. Luckily I finally found the answer in the “Depth Mask” shader.

Read more →

StressBall for Unity

Life’s problems are best solved when you aren’t worrying about them and waiting for a lightmap or occulsion area to bake can be pretty darn boring. Battle the difficult moments in your day with StressBall when you need a breath of fresh fun while still looking completely productive.

Read more →

Image backgrounds in Unity

There’s many aspects of 3D interactive development that hurt my brain but two in particular have caused the most trauma after I switched from 2D: How do you use an image as a backdrop and how do you render an image in 3D so that it appears at its exact pixel dimensions. After banging my head against several near clip planes I think I’ve constructed a strong solution to both of these issues. Say hello to Backdrop.

Read more →

Changing iTween defaults

I was recently asked whether the default easing type in iTween could be changed so it didn’t have to be set to what was desired in every hash created. The simple answer is “Yes!”, the better answer is “Not just the easing type!”. iTween has a handful of defaults you can override at any time to help remove repetition from you calls and ensure your animations are consistent throughout your project (only the most useful are shown here):

Read more →