Online learning resources - Unity in Action: Multiplatform game development in C# with Unity 5 (2015)

Unity in Action: Multiplatform game development in C# with Unity 5 (2015)

Appendix D. Online learning resources

This book is designed to be a complete introduction to game development in Unity, but there’s a lot more to learn beyond this introduction. There are lots of great resources online you can use to go further after finishing this book.

D.1. Additional tutorials

Many sites exist that provide directed information on a variety of topics within Unity. Several of these are even provided officially by the company behind Unity.

Unity Manual

This is the comprehensive user manual provided by Unity. Not only is the manual useful for looking up information, but the list of topics is useful by itself for giving users a full idea of what Unity is capable of:

http://docs.unity3d.com/Documentation/Manual/index.html

Script reference

Unity programmers end up reading this resource more than any other (at least, I do!). The user manual covers the capabilities of the engine and use of the editor, but the script reference is a thorough reference to Unity’s entire API (application programming interface). Every Unity command is listed here:

· http://docs.unity3d.com/Documentation/ScriptReference/index.html

Unity3D Student

This site provides a large library of tutorials covering an array of topics. Most importantly, the tutorials are all videos. This may be good or bad depending on your perspective; if you are someone who likes to watch video tutorials, then this is a good site to check out:

· www.unity3dstudent.com

Learn Unity3D

Part of the same family of websites as Unity 3D Student, the Learn Unity 3D site is similar in purpose but provides slightly different information in a very different format (more of a news site with articles of interest to learners). It’s another good site to browse through for tutorials:

· http://learnunity3d.com/

Game development at StackExchange

This is another great information site with a different format from the previous ones listed. Rather than a series of self-contained tutorials, StackExchange presents a mostly text QA that encourages searching. StackExchange has sections about a huge array of topics; this is the area of the site focused on game development. For what it’s worth, I look for Unity information here almost as often as I use the script reference:

· http://gamedev.stackexchange.com/

Maya LT Guide

As described earlier in appendix B, external art applications are a crucial part of creating visually stunning games. Many resources are available that teach about Maya, 3ds Max, Blender, or any of the other 3D art applications out there. Appendix C offers a tutorial about Blender. Meanwhile, here’s one online guide about using Maya LT (which is a less expensive and game development–oriented version of Maya):

· http://steamcommunity.com/sharedfiles/filedetails/?id=242847724

D.2. Code libraries

Although the previously listed resources provide tutorials and/or learning information about Unity, the sites in this section provide code that can be used in your projects. Libraries and plug-ins are another kind of resource that can be useful for new developers, both for using directly but also for learning from (by reading their code).

Unify Community Wiki

This wiki is a central database of code contributions from many developers, and the scripts hosted here cover a wide range of functionality. Throughout this book, I sometimes directed you to specific scripts hosted here (the event system and the JSON parser, for example). There are certainly many more useful scripts you can find here:

· http://wiki.unity3d.com/index.php/Scripts

Unity patterns

The library of scripts here isn’t nearly as extensive as at the Unify wiki, but there’s some useful code to look through, along with some illuminating tutorials:

· http://unitypatterns.com/

iTween

As mentioned briefly in chapters 3 and 8, a kind of motion effect commonly used in games is referred to as a tween. This is a kind of movement where a single code command can set an object moving to a target over a certain amount of time. Tweening functionality can be added to Unity via a number of libraries, and here’s one good option:

· http://itween.pixelplacement.com/index.php

prime[31]

Unity provides deployment to mobile platforms like iOS and Android, but the actual platform-specific features are limited to core features. You can add a lot of more specific features through plug-ins, and prime[31] has many such plug-ins:

· https://prime31.com/

Play Games Services from Google

On iOS, Unity has GameCenter integration built in so that your games can have platform-native leaderboards and achievements. The equivalent system on Android is called Google Play Games; although this isn’t built into Unity, Google maintains a plug-in:

· https://github.com/playgameservices/play-games-plugin-for-unity

FMOD Studio

The audio functionality built into Unity works well for simply playing back recordings but can be limited for advanced sound design work. FMOD Studio is an advanced sound design tool that has a free-to-use (but not necessarily publish) Unity plug-in. Scroll down to find it in their Downloads page:

· www.fmod.org/download/

ProBuilder and Prototype

ProBuilder and Prototype are add-ons that enable powerful level editing within Unity. ProBuilder costs money for professional features like flexible texturing, but Prototype is free and ideal for use in the white-boxing workflow from chapter 4:

· www.protoolsforunity3d.com/prototype/

FPS Control

FPS Control is a suite of tools and code designed to ease the creation of FPS (first-person shooter) games. This framework grew out of a popular series of video tutorials:

· www.fpscontrol.com/features