Category: 2D

Notespace Beat

Notespace, the incredible journey!

As many of you know, I have been working with Alexis Brandow, who is owner of Amorse Inc. on a great product, called Notespace Beat. Notespace is an interactive musical activity book for kids. Its a very different vision for mobile and its jammed full of content. Its first a storybook, with each page being its own interactive puzzle packed with unique little experiences. Secondly, its a bunch of mini games, all of them different. The experience revolves around musical concepts, some of them classical like scale and intonation and some, not so classical like LFO waves. Thirdly, Notespace is virtual instruments. Currently it has a mix machine and a synth with 40+ different synth instruments. Like I said, jam packed full of content. The game also sports a musical album, by musical artist Bosko, that the players can win and download. The album is pretty dope just as a stand alone but he worked with us through out the project, adding touches here and tracks there.

The first thing we knew going in to this is that it would be a tough sell. Its a tablet only game on musical concepts with the main protagonists being non stereotypical female roles… not quite the game selling formula everyone is used to. We weren’t trying to make any kind of statement on gender but Alexis did want female role models that weren’t a-typical. She didn’t want super girly girls and she didn’t want its antithesis, super tom boy tomb raiders. She wanted roll models…




Collective Mass Radio #9

As always, check out the rest of the blog as well as the other Collective Mass Radio podcasts on the site. You can follow Tic Toc Games on Twitter at @TicTocGames and give them all your monies for their Kickstarter, The Adventures of Pip.




Locking layers in the Unity scene

Every now and then, while working Unity, I find that they changed something. It’s Like Déjà vu in the Matrix, but in a good way. This time I found that you can lock assets in place in the scene view. Its really weird because I was just lamenting about this, and “poof”, there is it! Its incredibly useful when you are laying out a 2D scene or UI against a comp where you are trying to match the source image your artist gave you. The problem was that, while placing or moving items, I would continuously selecting the layout image and then moving that. OMG, the pain! Now, I just make a layer in my project called “layout”, place my source image on that and then lock it. I make my source image a Unity sprite because A) its super easy to drag and drop into the scene and B) the layer locking only works with Unity native objects… not with 2D Tool Kit sprites. So Here is how you do it

Nift Unity layer pop-up for locking and hiding layers

Click the “Layers” drop-down in your scene view
Click the little lock next to the layer
Enjoy (preferably with a cup of coffee)




Collective Mass Radio #6

As always, check out the rest of the blog as well as the other Collective Mass Radio podcasts on the site. You can follow Clark on Twitter at @kromenak, check out his portfolio at http://www.clarkkromenaker.com and blog at http://www.supersegfault.com. Clark works at Hidden Variable studios who are the talented individuals behind Tic Tactics and Bag It! Be sure to give them your support by checking out their games as well as checking out the game Threes, which they did the Android port of.




Resizing Textures In Unity

It sounds silly but its true! Unity does not have any methods for resizing textures. Experienced readers might object, “what about Texture2D.Resize?” you say. Well, turns out that Texture2D.Resize only resizes the texture container, like trimming an array. Unlike trimming an array, Texture2D.Resize also sets the pixels to undefined. So really, all its doing is changing the amount of memory allocated. Thats all a bit disappointing, especially when you might be wanting to build a multi resolution pipeline for mobile. The weird thing is that Unity does this already when generating mip maps. So, lets roll up the old sleeves and figure this out.

We can get pixel data from texture, check! We can alter the pixel data, check! We can put pixel data into a texture, check! So whats left? The algorithm to resample pixel data. Resample is really the operative word because we are going to sample the source texture from the destination texture, pixel by pixel. This is exactly how pixel shaders work. So, We have our source texture at 1024×1024 and a destination texture at 512×512. What we are going to do is iterate through that 512×512 grid, find the corresponding color from the source texture and fill out destination pixel. Now we get to words you might have heard but never have known what they meant. Bilinear sampling is most common in games and gives a good understanding of how to sample but we are going to start with a technique called Nearest Neighbor. Resampling is mapping one set of coordinates onto another. So…




Collective Mass Radio #3

As always, check out the rest of the blog as well as the other Collective Mass Radio podcasts on the site. Take a look at Dela’s project, Rebel Future at http://rebelfuture.com/ or on his Facebook page, https://www.facebook.com/TheRebelFuture. View the trailer on Vimeo at http://vimeo.com/68990084.




Unity Text

Unity Text Solutions

So we all know that text in Unity used to be a right pain in the rear. At least doing it without a gazillion draw calls using OnGUI. Things have changed slightly with all the current 2D solutions and Unity’s text mesh but I feel like each one fails at something, even be it a small thing. Through investigating a “read to me” system for my wife’s new game, Notespace Beat, I have taken a good hard look at some of the best solutions out there and am giving you a quick run down. Before we get into it, I had a very specific set of text requirements that I needed to satisfy. I need to be able to change size easily, change the style of the font (bold, italic), change the line spacing and pretty much everything you can do with in a text area in photoshop. It needs to be light and I need to get to the positional data of the text so I can find out if a user tapped a word.

First up, Unity Text Mesh.
I have never really played with Text Mesh before this project because I was always under the assumption that it would not work with my current work flow and 2D solutions. I was wrong about that and there are a lot of things to write home about here. First off, the dynamic font generation is pretty dope. Not having to make new font maps every time I change my font or its…