This page is a list of common Unity terms. It will be updated each week to cover new ideas introduced in the lesson.
All of the digital pieces which make up a game are known as 'assets'. A texture map, a model file, or a file on disk that tells how much health your character begins the game with are all examples of assets. Unity stores assets in the Project Folder
Calculating and storing complex computations ahead of time is known as 'baking'. Lightmaps, for example, are 'baked' diffuse illumination. Baked data is usually more efficient to compute (thus better for CPU performance) but uses a lot of memory.
The hierarchy of transforms that make up a skinned model are called bones. Bones are usually animated outside of Unity but they can also be controlled by scripts.
Games are limited by available memory and computing power. If the game demands too much memory (for example, because it's trying to draw a very complex 3d scene) or two much processing power (if it is attempting some extremely difficult calculations) it will slow down. For this reason most game teams set a budget for the amount of memory and computation they can use at a given time. Learning how to live within a budget is one of the keys to creating a game which plays smoothly.
3-D space is defined by the X,Y and Z axes. A location in 3-d space can be specified with 3 numbers (in the order XYZ). So (0,0,0) represents to the center of a scene, (1,0,0) a point 1 unit to the left of the center, and so on. When transforms are parented to each other, the child transforms are oriented around the center of their parent: as far as a child is concerned (0,0,0) is the location of the parent object and not the center of the world.
By default, gameObjects in Unity are visible but not tangible: they don't affect each other and aren't affected by gravity or other forces. A collider is a component which makes an object tangible to the physics system. Colliders are usually much simpler shapes than the objects they are attached to, which makes the physics calculations run faster.
Components are nuggets of code which define how your game will play. Components are attached to one or more GameObjects; each component usually only affects the object to which it is attached.
The Console is a Unity panel which displays messages from Unity or from your game code. It tells you when errors occur but is also a useful way to print out information as you're experimenting with new ideas.
. The most recent console messages is also displayed at the bottom of the main Unity window, even if the console is closed.
Diffuse lighting (as opposed to specular lighting) refers to the rendering of matte objects. Diffuse lighting depends entirely on the angle between the surface normal of an object and the light - it looks the same regardless of the viewer's position. Many shaders use the terms 'diffuse map', 'color map' and 'surface color' interchangeably.
A common format for storing 3d model files.
Any object - for example, a model, a light, or a camera -- is a GameObject. Other asset types which don't get physically placed into the game on their own (such as textures or animations) are not considered gameObjects. Only GameObjects can have Components.
A 3d view showing the game from the perspective of the currently active game camera.
Global Transform** Refers to a transform in absolute space. For example, a plate on a 3 foot high table may have a local transform height of zero if parented to the table -- but it's global transform height will be 3 feet. In Unity scripts we use transform.position, transform.rotation and transform.scale to access the global transform.
Hierarchy Window
------- Shows all of the objects in your current Unity scene, arranged in an outliner like indented view
For more information see the Unity docs
To bring an asset into Unity. Files cam be imported through the import menu, or by file drag-and-drop in the project folder. If you update a file already in the project folder, Unity will automatically re-import it.
The Unity inspector window is used to examine or set the properties of gameObjects and assets
A lightmap is a texture which stores pre-computed diffuse lighting for a scene. This allows the computer to skip many repetitive lighting calculations (at the cost of more memory). Lightmaps are often used to create the illusion of shadows.
Local Transform** Refers to a transform that is defined relative to another. For example, a plate on a 3 foot high table may have local transform height of 0 if it is parented to table - even though it's absolute position is still three feet above the zero plane. In Unity scripts we use transform.localPosition, transform.localRotation and transform.localScale to access the global transform. See also: parent
A collection of 16 numbers in a 4 row by 4 column arrangement which represents the mathematical desicription of a transform. For more info see this video course.
A mesh is a collection of vertices or 3D point. The computer draws the mesh as a collection of facets or polygons
The direction which a 3D polygon faces is it's 'normal'. It's mathematically expressed as a 3D vector. Normals are used to calculate light and shading, to figure out if objects are visible from behind, and to calculate the effects of physics collisions.
Transforms can be linked so that one transform is relative to another, and moves when the other moves: for example, moving your shoulder causes your elbow to move, moving your elbow causes your wrist to move, and so on. The transform which causes the other to move is known as the "parent", any transforms which are moved by a parent are "children". A parent can have many children, but each child has only a single parent. We also refer to the act of linking transforms in this way as "parenting". See also local transform and global transform.
3 or more vertices which form a planar facet than can be rendered in 3D.
Every unity game defines a 'Project Folder' where all of the assets are stored. Anything inside the project folder is available to the game. Usually the project folder will be stored in your Documents folder. Since all assets live in the project folder, we usually refer to them by relative paths such as Assets/levels/intro.unity or Assets/textures/bowling_pin.tif
The project window shows all of the assets in your project folder
Stores a collection of GameObjects, along with any components, materials, textures and settings. Prefabs are stored as ".prefab" files in the project folder.
Aka a "level." The basic work unit in Unity; a collection of gameObjects and their associated components. Scenes are saved in the project folder as files with a ".Unity" extension.
A 3d view showing your currently opened scene file.
A small, modular piece of computer code which controls one aspect of Unity game. Most components are created by scripts, and people will occasionally use the terms interchangeably.
Skinning is a way of allowing several different transforms (or 'bones' to move the vertices of a model. This allows for models which deform realistically rather than hard mechanical surfaces.
Specular ------- Specular lighting refers to the lighting calculations for shiny or glossy materials such as plastic or metal. Unlike diffuse lighting the size and intensity of specular lighting changes dependent on the position of the viewer as well as the position of the lights and the surface normals
A 2-d bitmap image that is applied to a 3d model.
The collection of movement, rotation and scale which defines an object's position in space is known as its transform. Transforms can be either local or global.
A collider with the IsTrigger checkbox turned on acts a trigger rather than a physics volume. Scripts can detect when a gameObject enters a trigger -- for example, a character walking into a trigger could spring a trap, or a ball entering a score trigger could give the player points.
Several times a second, the game will tell all of the active GameObjects and componentsto update themselves. This causes the scripts attach to each component to run their Update code, which can make objects move or take actions.
A vertex (pl. 'vertices') is one point of a 3d mesh. The visible surface of a model is drawn by the computer as a series of facets connecting vertices.
The coordinate system for a 3-d space has three main directions, or 'axes'. In Unity, the ground plane is defined by the X and Z axes, and the vertical dimension is Y. The origin is the 3-d point located at X=0, Y=0, Z=0. Positions, rotations and scales are all defined for each axis, so an object might be located at (0, 10, 0) -- that is, ten units off the ground -- and rotated (45, 0, 0) -- that is, rotated 45 degrees clockwise around the X axis.
By convention controls that manipulate the scene are colored coded so that red = the X axis, green = the Y axis and B = the Z axis.