Tag: Unity3D

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…




Adding the Dolby API to your Unity Project

While developing Notespace with Amorse Inc, we decided to implement the Dolby API into our tablet based game. The game is a interactive musical activity book for girls so it makes a whole bunch of sense. As of the date of this post, the Dolby API is integrated into the following:

Acer Iconia Tab 10 2014
Amazon Kindle Fire HDX 7 2012
Amazon Kindle Fire HDX 8.9 2012
Amazon Kindle Fire HD 7 2013
Amazon Kindle Fire HDX 7 2013
Amazon Kindle Fire HDX 8.9 2013
Amazon Fire HDX 7 2014
Amazon Fire HDX 8.9 2014
Amazon Fire HD 6 2014
Fujitsu Arrow F-06E
Lenovo Yoga 8 2013
Lenovo Yoga 10 2013
Lenovo Yoga Tablet 2 8” 2014
Lenovo Yoga Tablet 2 10” 2014
Lenovo Yoga Tablet 2 Pro 2014
Samsung Galaxy Tab 3 8.0 2013
Samsung Galaxy Tab 3 10.1 2013
Tesco Hudle2 Tablet
ZTE Grand S Flex
ZTE Grand S
ZTE Grand Memo LTE
ZTE Grand Memo N5S
ZTE Nubia Z5S
ZTE Nubia Z5S Mini
ZTE V975
ZTE N5S
ZTE Geek U988S
ZTE Boost Max
ZTE ZMax
ZTE BladeBox

As you can see, we know that its not on iOS devices (boo) but is on every Kindle Fire device past first gen. Thats a sizable market to optimize our experience for! We also know, for development down the road, that every Windows 8 device will have Dolby hardware. This is not necessarily true for Windows 8 mobile though, so don’t get them mixed up.

First, we are…




Collective Mass Radio #12

As always, check out the rest of the blog as well as the other Collective Mass Radio podcasts on the site. Huge thank you to the guys from Fract OSC for a great chat, it was really good to hear about both the ups and the downs. I hope that other indie game devs will hear your comment about scope and designing around technical limitations. Go visit the Fract site and buy the game NOW! It is a great experience with stunning shader work! Follow Fract on twitter at @FRACTgame, Richard at @phosfiend and Henk at @henkboom.




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.




Collective Mass Radio #5

As always, check out the rest of the blog as well as the other Collective Mass Radio podcasts on the site. You can follow Emil on Twitter at @angryant, check out his site at http://angryant.com/ or view his LinkedIn. Emil is currently available for interesting projects, so hit him up if you have something that requires his level of AI awesome!




Collective Mass Radio #4

As always, check out the rest of the blog as well as the other Collective Mass Radio podcasts on the site. You can follow Aras on Twitter at @aras_p. Send him your thoughts on just how cool the new Unity tech is!




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…