
Explore the fundamentals of Unity, including navigating the user interface, projects, assets, and game objects, and learn about the basic and pro versions.
Learn how to set up the Unity interface from scratch, open or download the angry box project via the assets store, and prepare data files to begin development.
Configure the interface to the default wide layout and use the spacebar to switch between windowed and full-screen views. Select textured from the top option to unify the level appearance.
Explore the Unity GUI, including the scene view, project panel, hierarchy, and inspector, and learn how selected objects reveal editable properties and how to navigate the viewport.
Discover essential viewport navigation techniques in Unity, including maximizing the game view, using the pencil to pan, dolly with the middle mouse, and rotating to move freely through the scene.
Master first-person navigation with right-click and WASD, plus arrow-key plane movement. Orbit objects with Maya-style controls, frame with F, and zoom with the scroll wheel.
Learn how the Unity object inspector shows context-sensitive properties for selected objects, highlights the transform with position, rotation, and scale, and lets you edit values precisely by typing or dragging.
Learn to manipulate objects in the Unity scene using the translate, rotate, and scale tools via the gizmo, with axis arrows and shortcuts (W, E, R) and undo (Ctrl+Z).
Compare the scene tab and game tab when you press play, use the game viewport as the run time view, and pause to move the player for debugging.
Explore Unity's scene view tools for asset creation, including shading modes, wireframe and textured wireframe overlays, triangulation checks, and preview options for grid, skybox, and sounds.
Create a new blank Unity project, save your first scene, and explore the project panel and asset packages before importing models or resources.
Export four Maya mesh assets to Unity by preparing coordinates and world-space origin, renaming items, deleting history, and exporting each mesh as ASCII using export selection.
Import assets into your Unity project via the project panel, file menu, or drag and drop from Windows Explorer. Unity copies the assets into the project folder and references copies.
Drag in mesh pieces, duplicate and align them to the world origin, then use translate and rotate with vertex snap to assemble a complete level with textures.
Explore your newly built level in first person by importing a character controller asset and configuring the first person camera, then address lighting and collision issues.
Address collision detection by applying colliders to four meshes so the camera no longer falls through the floor. Add point lights and adjust their range and intensity to brighten scene.
Finish the scene by fixing camera clipping near walls in a first-person setup, adjusting the clipping plane to 0.1, and validating the main camera within the first-person controller.
Explore Unity's fundamental concepts by linking projects, scenes, assets, and game objects within a treelike hierarchy, and note their time-space position, rotation, and mesh or texture origins.
Explore how game objects are built from components by adding a mesh, a mesh filter, a mesh renderer, and a collider, then create an empty object and assemble its components.
Learn how prefabs let you group multiple objects into a single reusable game object, and how layers tag groups of objects to show and hide them in the scene viewport.
Explore Unity asset management, texture import, and material setup from diffuse and specular maps to quality builds, then cover textures, terrains, and texture painting best practices.
Explore assets in Unity by managing the project panel, importing diverse files like design documents, organizing textures, sounds, and prefabs in folders, and using the content browser.
Learn how to efficiently find Unity assets by name and tag using the search box and tagging workflow, and understand the importance of sensible asset naming.
Explore the asset browser in Unity to swap textures and materials, preview mesh assets, and understand context-sensitive asset windows that show textures or meshes based on your selection.
Prepare textures for import into Unity by following rules: use power-of-two sizes for 3D textures and ensure even dimensions for UI textures, importing high-quality PSD files for automatic compression.
Explore Unity asset packages and learn to export a whole environment as a Unity package, include dependencies, and import it into a new project for easy asset transfer.
Explore materials, shaders, and textures in Unity by creating a diffuse material, applying grass textures, and duplicating materials to vary terrain while noting Unity's single-material per mesh rule.
Learn to set up a bumped diffuse material in Unity, create and apply a normal map from a grass texture, and understand how normal maps affect surface bumpiness and lighting.
Learn to create a bumped specular material in Unity with a configurable specular color and shine, and use the max size texture setting to adjust textures without editing images.
Explore advanced materials, textures, and shader effects in Unity by downloading the Boot Camp asset, playing through a textured environment with bullet holes, water, rocks, and dynamic terrains.
Create a Unity project to demonstrate terrain tools by building a 500 wide by 500 long terrain with a 600 meter height, using a pixel-based heightmap and highlighting mobile limitations.
Master terrain sculpting in Unity by using raise, lower, smooth, and set white brushes with adjustable size and opacity, while testing terrain collision with a first-person controller.
Learn to paint terrain textures in Unity by adding base textures, adjusting tile size, and blending multiple textures with brush controls, opacity, and target strength.
Import skybox assets, add a skybox component to the main camera, assign a skybox material, and preview the surrounding sky in play mode while exploring the terrain.
Learn to enhance Unity terrains by importing tree assets from the asset store and painting trees onto the terrain using brush tools, adjusting density, height, and color variation.
Paint grass on a Unity terrain using the grass texture and detail brush, adjusting brush size and opacity, then tune min/max height, noise spray, and color variation with detail distance.
Scatter rocks and foliage on terrain with detail meshes in Unity, adjust density and color, and rely on the detail resolution map for placement while noting these meshes lack collisions.
Explore Unity's lighting types and light mapping with global illumination, then create dynamic effects using the Shuriken particle system editor for fire, rain, sparkles, fairy dust, and smoke.
Explore Unity's three light types—directional, point, and spotlight—and learn how rotation, range, color, and intensity shape scene illumination. Compare deferred and forward rendering paths to understand lighting.
Explore ambient light in Unity, its uniform scene illumination, and how to disable it by setting the ambient color to black in render settings.
Investigate render paths in Unity—vertex lit, forward, and deferred lighting—and learn how lighting choices affect shadows, graphics quality, and performance by changing settings in the project options.
This lecture explains lightmapping in Unity, showing how baked lighting uses pixel-based textures to render shadows and highlights at design time while outlining its limits for moving objects.
Bake lightmaps in Unity to illustrate global illumination on a Cornell box, using the light mapping workflow, static object tagging, and viewing resulting light maps.
Explore light mapping resolution in unity, showing how texel density and per-object scaling control light map texture quality and performance, with practical tweaks to balance detail across surfaces.
Master lightmap settings to balance quality and bake time with high or low presets and direct illumination. Tune ambient occlusion with max distance and contrast to create shadows and realism.
Discover how dual lightmaps use far and near light maps and shadow distance to blend indirect and direct illumination with real-time lighting, noting deferred versus forward rendering and real-time shadows.
Explore particle systems in Unity using the Shuriken editor, examining emitters, gizmos, and textured particles, with examples like dust devil, explosion, fireworks, and flare.
Import a textures package for particle systems, create a particle system object in Unity, and configure the emitter, render, and optional modules while exploring global properties and the wireframe view.
Explore how a particle system uses a graph-driven curve to set the starting lifetime values, adjust duration and looping, and control speed, size, rotation, color, and the maximum particle count.
Increase emission to 80 particles per second and use curves to create bursts, shaping a magical energy field. Apply textures via the render module with billboard quads and sparkle materials.
Refine the particle emitter with the shape module, narrowing the cone beam; apply color over lifetime and alpha fades, then add rotation and size growth for a magical energy field.
Explore Unity scripting and audio by building a marble maze game: import assets, configure scenes, set up physics, script in JavaScript with MonoDevelop, handle input, and add audio.
Create a new blank Unity project, save the scene as the marvel maze scene, set the main camera background to black, disable ambient light, and enable the lighting render path.
Import assets into a Unity project, organize them into meshes, textures, and scenes folders, and create and position a floor plane to align the imported mesh with the world origin.
Learn how to add and adjust a directional light, apply textures to surfaces, and align the camera to match the play view for Unity game development.
Add a ball in the maze using Unity primitives, attach a rigid body and a collision mesh, and enable isKinematic to ensure responsive physics with gravity and proper maze collisions.
Create a physics material, set its bounciness to 1, and apply it to the ball's collider to make the ball bounce off the maze when you press play.
Choose a single scripting language in Unity, explore UnityScript and JavaScript variants, and create a hello world script to demonstrate basic coding, project organization, and using the mono development editor.
Learn how to create a hello world script in Unity using start and update functions, declare a string variable, print to the console, and customize it in the object inspector.
Create a JavaScript script in Unity to control a ball in a maze with WASD and ID keys, guiding it to the center hole, using the Unity API.
Define global rotation speed of 50 degrees per second and cap rotation at 30 degrees for the x and z axes, using private variables and update logic for input-driven behavior.
Detect keyboard input in Unity with the update function using the input class to check W, A, S, D keys, addressing case sensitivity and common compile warnings.
Calculate frame rotation with delta time and speed of 50 degrees per second, applying positive or negative angles to W and S keys and to x, y, and z rotation.
Attach a script to the top maze piece and rotate it with transform.rotate in Unity using Vector3 space, and test with w s a d controls; then apply rotation constraints.
Constrain rotation in Unity by tracking current and total x and z rotations, applying an s-curve rotation, and clamping to a max angle to keep the ball inside.
Add and offset a mesh collider to enclose the maze and prevent the ball from escaping, then implement a win condition that prints you have won at the center hole.
Learn to add a trigger collider, enable isTrigger, and use on trigger enter to print game completed when the ball enters the trigger.
Explore how to add audio assets in Unity by importing sound effects and music, organizing assets, and configuring compression, 3d sound, and streaming options for efficient playback.
Learn to add a 3d audio source and an audio listener in Unity, assign a music track, control play, loop, volume, and distance attenuation, and test with a moving listener.
Learn how to set up a looping music track in Unity, disable 3D sound so it plays as non positional music, and configure an audio source on a game object.
Learn post-processing and debugging in Unity, applying blue sepia and chromatic aberration, benchmark performance with the stats panel and profile window, and compile the final game for PC or Mac.
Learn to set up a Unity project with third-person shooter assets, import the image effects package, and apply real-time post-processing to camera renders with color correction.
Apply greyscale and sepia tone image effects as camera components in Unity, previewing changes in real time on main and first-person cameras while managing performance overhead.
Add the fisheye effect to the camera, then adjust its X and Y properties to distort the image, and explore the twirl effect with radius and center controls.
Learn to add a noise image effect in Unity, adjust monochrome color, tune intensity and grain size, and blend with other effects to simulate an old film look.
Explore how the bloom effect in Unity enhances scene highlights with adjustable intensity, threshold, and blur, creating a dreamy glow. Learn practical controls before moving to chromatic aberration.
Apply the vignetting and chromatic aberration effects to the camera, adjust intensity and outer radius to create edge darkness and color separation, illustrating uses for non-human perspective and altered perception.
Import a toon shading asset package in Unity to apply toon shading and outlines to primitives. Adjust outline color and width, and tweak shading through the shader.
Discover how to use Unity’s stats panel to debug and optimize performance by monitoring frames per second, frame time, triangles rendered by the camera, RAM usage, and visible skinned meshes.
Explore how the Object inspector serves as a debugging tool to view and edit properties—such as transform and health—during gameplay, with runtime changes being temporary.
apply debug printing to the unity console to verify function calls by printing messages, open the console for full logs, and observe outputs during play.
Master Unity's profiler to diagnose performance issues by analyzing cp usage, gp usage, rendering memory, and physics across frames, focusing on spikes and frame distribution.
Master the Unity build process by selecting scenes, choosing a target platform, configuring player settings, and exporting a standalone executable for distribution to testers and publishers.
In this extensive tutorial series, instructor Alan Thorn takes us through a comprehensive look at the Unity Game Engine. If you've ever been curious about making games, or wondered what Unity has to offer, this course has everything you need to get you started with the engine. Ranging from an overview of the UI, all the way through Terrain, Lighting, Scripting, Post Processing, Debugging, and so much more!
(Students - please look under Section 1 / Lecture 1 downloads for the source files associated with the lesson.)
More about the Instructor:
Alan Thorn is a freelance game developer and author with over 12 years of industry experience. He is the founder of London-based game studio, Wax Lyrical Games, and is the creator of award-winning adventure game Baron Wittard: Nemesis of Ragnarok.
He has worked freelance on over 500 projects worldwide including games, simulators, kiosks and augmented reality software for game studios, museums and theme parks. He has spoken on game development at universities throughout the UK, and is the author of nine books on game development, including Teach Yourself Games Programming, Unity 4 Fundamentals and the highly popular UDK Game Development.