Resources for Game Development in Unity

These resources may be helpful for those new to game development in Unity

General

 * These tutorials are categorized by topic and the projects are also helpful in starting out in Unity.
 * Unity has a manual and a scripting API .  This website provides some good tutorials on several topics, including scripting.
 * Unity also has forums on various topics and a space for questions and answers.
 * This tutorialhits many major topics in 2D game development.
 * More tutorials on various topics from making simple games to using certain Unity features.  Some videos require logging in to the website but a fair number can be watched without logging in.
 * Here is another good site on getting started in 2D. There is a complete tutorial for creating Pong in Unity as well as a great 2D Platformer tutorial that is currently still in progress.

Resources Specific to Touch Controls (for mobile devices)

 * This Information about the Inputclass discusses how to read in information from the tablet in terms of variables and functions.


 * The Touchstructure includes variables relating to the status of a finger touching the screen.


 * This tutorialexplains how to make a button for a touch screen (and highlights the differences between this and keyboard or mouse input)

More general resources for developing on mobile devices:
 * This tutorialmore broadly discusses implement touch controls in games
 * A list of tutorials covering various kinds of touch control features (ex. pinch zoom, swipe rotation)


 * Getting started with iOS and Android development.
 * This tutorial seemed helpful to get the Apple developer account and certificates all set up.

Developing Games on Android (specifically Kindle Fire) Need to install:


 * Java Development Kit


 * Android SDK


 * Kindle Fire Device Dependencies - found in Android SDK


 * Unity

 ​                Need it from the Unity Asset Store on computer and either Google Play App Store or Apple App Store. Note: Unity Remote 4 does not actually run the game on the device, it merely displays and allows input from the device (multi-touch appears to be disabled). Depending on the case, it may be more efficient to export the apk and install it on the device.
 * Unity Remote 4 - For testing on the device, n eed at least Unity 4.5 for this and devices may require additional setup (Kindle / Android devices must be seen by adb in order to work correctly).

Java Development Kit and Android Software Development Kit:


 * Helpful step-by-step instructions for Java Development Kit and Android Software Development Kit installation
 * Other tutorial

Unity Remote:


 * To get Unity Remote on Kindle Fire


 * Make sure you get the Unity Remote 4 app not just the Unity Remote app


 * Need to get it by circuitous means since the Google Play App store isn't on the Kindle Fire because Amazon and Google are not friends


 * This method may not work for all Google Play apps since they weren't designed for the Kindle Fire- might not be compatible
 * ​ For other androids that have the Google Play App Store, it should be simply a matter of installing the Unity Remote 4 app onto the device from there directly


 * Also install ES File Explorer on the Kindle to be able to install the apps you are testing

<p class="MsoNormal">Unity Links:


 * About Getting Started

<p class="MsoNormal">Android links:


 * Android developing resources

<p class="MsoListParagraph" style="text-indent:-.25in;mso-list:l2level1lfo3"> ·           Amazon links- these are Kindle Fire specific:


 * Kindle developing resources
 * How to set up development kits specifically for Kindle Fire
 * Creating your first Kindle Fire app
 * Setting up tablet for testing (talks about drivers)

Setting Up a Database Connection
<p class="MsoNormal">
 * If you are planning on storing information in a database this code template may help set up the various connections necessary to get this done.  This code is especially useful to understand the different parts that go into getting information from the game and sending it to a database and vice versa.
 * The basic idea is to have tables in the database that can hold information (such as player user name or answer to a question) and then have a certain action tigger and update wihch adds an entry to the appropriate table in the database (such as when the player answers the question).
 * Helpful unity classes and functions to look into for interacting  with URLs/webservers include Networking , WWW, and WWWForm.
 * When using databases, knowing SQL and PHP is very helpful.  These links will help you gain a basic understanding.
 * Using 000webhost is a good (and free) way to experiment with setting up a database and the necessary connections to Unity.
 * If you are only looking at keeping information within the game for the player, then PlayerPrefs is probably what you are looking for. However, this method is somewhat insecure, PlayerPrefs was created specifically to store player preferences (sound settings, video settings, etc). This tutorial from Unity communicates a more secure method of saving data that may be preferable when saving values that influence gameplay.

<h2 class="MsoNormal" style="margin: 0in 0in 10pt;">Other Helpful Resources


 * A good explanation of game state flow can be found here .   This may provide insight into where to place certain events.
 * This is a series of videos on how to make a 2D platformer; however, you may want to consider carefully whether to use ray casting or the built-in Unity collision detection mechanisms.
 * This video series shows one way of making an inventory system in Unity.