Unity3D for Beginners – Unity Terminology

If you are a complete beginner, one awesome resource for getting into Unity3d game engine and getting the idea of what it is capable of is 3D Buzz. There is a section Unity Fundamentals which provides lots of videos explaining different aspects of the game engine. This article’s content is mostly from videos in the link above.

You can quickly get acquainted with basic Unity3d terminology below.

The purpose of this post is to give you the essence of these videos for your reference. So you could just look up the key points and knowledge from the desired video. You can also use this post to when watching video to get an overview of it.

Basic Unity3d Terminology

  • Project – everything you need to create a game (Assets – sounds, textures, models, scripts, prefabs, etc.) wrapped together. For the most time one project is one game. Project is an organizational system for your game (folder structure).
Folder structure inside your Unity3d project corresponds to the folder structure on your hard drive. Changes to files on your hard drive are reflected on your project files. Modifying some project files outside unity is not a good idea, especially those that are not showed inside unity, it may break your game.
Important. Try not to make any adjustments to your project at the OS level. Make all the changes to your game from the project panel inside unity.
  • Scene – is like a level of the game but a little different, it is more robust. Each scene is used to create a part of your game. The game usually contains of several scenes. Each scene is saved to a file with .asset extension.

To sum up – it is and area of 3d space that contains a series of GameObjects.

  • Package – you can think of them like compressed file such as .zip or .rar but they are special for unity. Package allows you grouping your project files along with their metadata and save them. You can import some files from Unity3d website or Asset Store.
To import a package inside unity go to Assets -> Import Package… You can also export your own packages by selecting Assets -> Export Package… You can import lots of useful packages shipped with unity when creating a new project.
  • Prefab – (prefabricated object) generally speaking, is a container or a way to group assets an their settings together. It is sort of a template that we can use to instantiate multiple copies of this grouping of assets.
There will be two ways you will be applying prefabs:
  • as a level designer – make multiple copies of GameObjects by dragging them into scene
  • as game programmer – instantiating prefabs with scripts
Changes on your prefab will be reflected on its instances. The cool thing about prefabs is that the relationship is not one-directional. You can change the child and make it a completely unique object. You can then save these unique changes to a master prefab.
  • GameObject – pretty much everything that is in your scene. GameObject is a container that depicts something inside of the scene. Everything in your Hierarchy view is a GameObject.
What can you do with a GameObject:
    • Move, Rotate and Scale (Every GameObject has Transform component)
    • Name it
    • Hierarchy
    • Defined via Components
    • You can apply Tags and Layers to your GameObject
To create empty GameObject go to GameObject -> Create Empty or press ctrl (cmd) + Shit + N.
  • Component – Grouping of functionality and parameters to define what a GameObject does. Components define GameObjects. For instance, a Point Light is a GameObject with a Light Component attached. You can enable and disable components attached to GameObject.
Generally speaking, components are modular definitions of functionality that you can add to your GameObjects.
  • Assets – You can think of an asset as an aspect (building block) of your game that will be referenced by some component/asset.
Examples of external Assets (Created outside of unity):
    • 3D Models
    • Textures
    • Sound Effects
    • Scripts
Examples of internal Assets (Created inside unity):
    • Materials
    • Shaders
    • Cube Maps
    • Prefabs
    • Physic Materials
  • Scripts – script is a type of an Asset that adds functionality to GameObjects. A Script is not a program and is only functional in terms of unity. You MUST have scripts to make a playable game.

Now you are familiar with basic Unity3d terminology. Good luck in further learning!