Unite 2015 - Melbourne

Last year Unity presented a strong front with their announcement of the Unity 5 Beta for pro licence holders. Since then, 2015 has been a great year for the engine with the steady rollout of feature updates in the 5x cycle as shown through the Unity Roadmap. Many of us were left wondering if Unity could maintain the excitement in subsequent presentations. This year Unite not only met the high expectations of their users, but also brought us a focus on community growth and support.

 

 

Starting off the event in the Keynote was a demonstration of fluid live motion capture by Deakin Motion Labs. From organically rhythmic environments to intertwined particle systems, the performance was mesmerising to say the least. A Unity representative followed up with a small talk about analytics of recent Unity games released on mobile platforms and the integration and ease of developing for VR systems such as Oculus, Gear VR, Playstation VR, and Microsoft Hololens. Next came the mention of a new 2D feature coming in the following years pipeline, the Smart Sprite. This would serve as the teaser for a sneak peak demonstration later in the day.

 

Of course a great Keynote is incomplete without some guest developers to speak their piece. First up to bat was Tony Cocoluzzi, the lead developer of Cuphead. He discussed how many developers look at the art and animation quality of Cuphead and are then surprised when they learn it was developed in Unity. He went on to explain how the Sprite Packer and Mecanim systems were instrumental in the implementation of their immense collection and size of their sprite assets created through traditional animation techniques. He continues on to mention his experience with developing tools with Unity to hasten the development process. Initially he made a personal tool for making the management and implementation of dialogue trees quicker and more intuitive. He later released this tool onto the Asset Store under the name Dialoguer. After showing more tool-work focused on making game balancing simpler to change for his designers, we bid adieu to our ceramic friend.

 

Our second guest was Adam Brennecke of Obsidian talking about their work on Pillars of Eternity. When they began the project, the team had zero experience with the engine. However due to having a team of seasoned developers they were able to use Unity to its fullest potential, managing to deliver the high-level artistic vision of the world environment they wanted to create and promised to their Kickstarter backers. Finally to close off the Keynote came the man himself, Patrick Bell of Unity. This was the moment where they announced the next big thing that would drive the hype for the rest of the day, the Made WIth Unity Showcase. Unity Developers can now sign up, share their work and most importantly, tell their story. Additionally every Unite going forward will feature a video showcase of new Unity games. This is a great step forward with big potential for smaller developers to get more notice in the industry. Although at the moment the audience seems like it will be primarily other Unity developers witnessing the showcase, I hope Unity will push the showcase further into the public eye of the consumer.

 

The multiplayer workshop showcased the changes to the networking workflow. In the past the process was heavily code based with practically zero editor involvement. In the new system, components are used to make the process intuitive and seemless. I was excited to partake in this workshop since networking is something I want to utilise at some point (hint: possible Blast Panic remake). The presentation started with a basic overview of networking in order to communicate the importance of invoking commands on server and client respectively. After ensuring that everyone had the workshop files and a current version of Unity, the practical part of the session began. Using networking code in your scripts requires a couple of changes including the UnityEngine.Network namespace, changing Monobehavior to Networkbehaviour, and casing client and non-client dependent logic using Network Identity. Through the network components we could set multiple spawn points that could spawn players in a round robin method, determine the send rate for transform information and many more things. Soon enough we were able to have a LAN networked game working.

 

The workshop also presented the matchmaking feature that can be accessed through the new Services tab. By default the service has a limit of 100 CCU at anytime. This is a great boon as before we would have had to either rely on PTP or services like Photon Unity Networking by Exit Games. The free version of Photon allows for only 20 CCU which leaves me to wonder if they will up the numbers to compete with the default service. This kinda makes me want to try working on an Arena Battle style PC game. Curse you Unity you drive me to create.

 

DIY Game Testing was a pretty standard talk about effective testing methods. It started out discussing the importance of tracking tests (test management software, spreadsheets) and determining which tests are more crucial than others. Chances are that fixing large bugs can sometimes resolve smaller bugs at the same time. Testing your networking code early in the project is quite beneficial in order to avoid problems later on in production. It allows you to pay attention to how you write your future code in terms of ‘Will this interface well with my current networking system?’. Every time you add a feature, you should be testing to ensure there are no broken interactions that could cause disastrous scenarios. Just as important is testing for every scenario. After all not every player is going to be executing the most optimal plays that you’ve been constantly thinking about in your design. Some players will try things you’ve never thought of doing. What if a player is trying to fail on purpose? Is there a broken exploit that results from this style of play? Learning to play your game with different playstyles and not doing the same things every time you test a feature will improve the results of your bug hunting. Of course it’s important to have other people testing your game, although some people will not yield much in terms of useful data. A good tester should be methodical, curious, mischievous, communicative, dedicated, understand the product, and have excellent attention to detail.  

 

Building 2D worlds with new 2D features in Unity: A demonstration of the Smart Sprite and Tile Map features. The Smart Sprite is a 2D shape that initially functions in a similar manner to a vector. The borders of the sprite can be turned into sprites such as wall textures while the main space can be filled in with something entirely different. Essentially it’s a spline with a fill area. You can also set multiple sprites in a collection with rules that determine which sprite is used. For example if you have a wall sprite and a grass sprite, you can have the wall sprite only appear on vertical edges and grass on horizontal edges. The purpose of this is to allow the hastening of your level building workflow. Tile Maps allow you to paint sprites onto a grid. This will allow artists/designers to easily create backgrounds in the editor.

 

Finally time to talk about the Made With Unity Showcase Awards. There were quite a few games featured this year such as Armello, Shooty Skies, Skedaddle, Tahira, Defect, and a few others. A couple of these games you’ve likely already heard of before. I will be covering my experiences with some of these games in my PAX writeup. Personally I felt that Tahira was the highlight of the showcase. I can’t recall exactly what the awards were or which games won. I do know that Defect won something. Still I am excited to see new Unity games and eagerly await the release dates for the various games on display.

 

Overall Unite was a wonderful experience. Learning new techniques, awing over previews of new features, interesting talks, a great games showcase, and stories of developers and their experiences with Unity. There were a few talks I wanted to attend but were unable to due to scheduling. I hope there will be some recordings of what I missed, especially the tips and tricks talk by Obsidian. Regardless I can’t wait to see what Unity has in store for us next year. Maybe we’ll finally get an announcement about multiple Audio Listeners (I can hope damn it).