background preloader

Unity Manual

Unity Manual
Welcome to Unity. Unity is made to empower you to create the best interactive entertainment or multimedia experience that you can. This manual is designed to help you learn how to use Unity, from basic to advanced techniques. It can be read from start to finish or used as a reference. The manual is divided into different sections. The first section, User Guide, is an introduction to Unity's interface, asset workflow, and the basics of building a game. The iOS Guide addresses iOS specific topics such as iOS-specific scripting API, optimizations, and general platform development questions. The next section, FAQ, is a collection of frequently asked questions about performing common tasks that require a few steps. The last section, Advanced, addresses topics such as game optimization, shaders, file sizes, and deployment. If you find that any question you have is not answered in this manual please ask on Unity Answers or Unity Forums.

How can I start learning Unity fast? ( List Of Tutorials ) The most recent version of this list can be found at I just compiled a list of Unity resources for a different purpose (hence my subjective comments and a shameless copy&paste). Some of the resources have already been mentioned here and some of it is only Unity-related and not strictly for learning Unity itself. Nonetheless, here we go: Download the free version of Unity to get started: If you have no previous experience with Unity, start with these six video tutorials which give a quick overview of the Unity interface and some important features Continue with a more in-depth text-based walk through of very basic Unity functionality and work flow To get you started with scripting, have a look at the following PDF document. Unity features three scripting languages; JavaScript, C#, and Boo.

Unity Script Reference: Welcome to the Unity Scripting Reference! This section of the documentation contains details of the scripting API that Unity provides. To use this information, you should be familiar with the basic theory and practice of scripting in Unity which is explained in the Scripting section of our manual. The scripting reference is organised according to the classes available to scripts which are described along with their methods, properties and any other information relevant to their use. The pages are extensively furnished with example code that you are free to use for any purpose without crediting Unity. Subsections of the reference can be selected using the menu to the left.

Morph « MegaFiers One of the most powerful features of MegaFiers is the Morpher. This allows you to change a mesh or part of a mesh from one shape to another which allows you do such things as facial animation, lip syncing, avatar systems or apply damage to vehicles and buildings. One of the feature of the morphing system used in MegaFiers is it allows for any number of channels of morphing and for any number of progressive targets to make up a channel and when playing back the morphs you can mix any amount of channels together. The best way to use the morphing system is by making use of one of the custom exporters available for either 3DS Max, Maya, or Blender (there is also a 3rd party tool available for Lightwave), currently the exporter is available for PC Maya 2011, 2012, 2013 and 2014, 32 and 64 bit and all versions of 3ds max from 2010 onwards both 64 and 32 bit and all versions of Blender since version 2.58. Info Life is much easier with the custom exporters for 3DS Max, Maya and Blender.

Motion-Twin | News General Performance Tips The following tips are not meant to be absolutes but rather guidelines for Unity users that want to learn how to make a well performing game. Official Tips from OverTheEdge General Tips on Optimization Profile first. Meshes When possible, combine the nearby objects into a single object that has a single material. Lighting Each pixel light rendered is effectively another rendering pass. Textures Keep the size of textures as small as possible while still looking nice. Audio Use .ogg for compressed audio. Physics Each rigidbody takes computation, so less are of course ideal. Shaders More complicated looking shaders probably cost performance compared to simpler ones. Scripting Are you using the right algorithm?

Read Manga Online for Free. Online Manga Reader GUI Basics Legacy GUI Scripting Guide This section will explain the bare necessities for scripting Controls with UnityGUI. Making Controls with UnityGUI UnityGUI controls make use of a special function called OnGUI(). The OnGUI() function gets called every frame as long as the containing script is enabled - just like the Update() function. GUI controls themselves are very simple in structure. This example is a complete, functional level loader. Let’s take a look at the details of the example code: The first GUI line, GUI.Box (Rect (10,10,100,90), “Loader Menu”); displays a Box Control with the header text “Loader Menu”. The next GUI line is a Button Control declaration. Since the OnGUI() code gets called every frame, you don’t need to explicitly create or destroy GUI controls. Here, GUI.Button() only gets called every other second, so the button will appear and disappear. As you can see, you can use any desired logic to control when GUI Controls are displayed and functional. Anatomy of a Control Type

Tutoriels Touch point to world coordinate and local coordinate Beware that 2D touch point when transformed to 3D scene becomes a ray rather than single point. This ray hits everything painted on the touched screen point. You will have to do a raycast to see what exactly was hit and where Touch position can be translated to ray as follows: Ray ray = Camera.main.ScreenPointToRay( Input.touches[0].position ); This ray is in world space and if you want to know what it hits (i.e. what is touched on screen with finger), do a raycast. RaycastHit hitInfo;if (Physics.Raycast( ray, out hitInfo )){ Vector3 worldSpaceHitPoint = hitInfo.point;} If you want to know local position of hit on object which was hit by raycast, you will simply transform worldSpaceHitPoint into object's local space. Vector3 localSpaceHitPoint = hitInfo.transform.worldToLocalMatrix.MultiplyPoint( worldSpaceHitPoint );