Unity Encyclopedia

3D development in Unity through a web programmer's eyes

A practical guide to Unity 6 for people coming from browser and server-side JS/TS apps. With parallels to familiar concepts — DOM, React, requestAnimationFrame, Webpack — and without the myth that gamedev takes magic.

Introduction

3D Development in Unity

02.01
The Unity Editor, the Scene, and the Hierarchy

The main editor windows, plus GameObject and Transform — the DOM of the 3D world.

02.02
Scripts and the MonoBehaviour Lifecycle

How Unity calls your code — Awake, Start, Update, and everything in between.

02.03
Input — the Input System and Legacy Input

Keyboard, mouse, gamepad, and touch — two paths and why you should take the new one.

02.04
Physics — Rigidbody, Collider and Collisions

How to move objects with physics and react to collisions.

02.05
Camera and Cinemachine

First/third-person views, virtual cameras and smooth follow without the math.

02.06
Rendering, Materials and Shaders

URP, Material vs Shader, Shader Graph, and why "multicolored cubes" are expensive.

02.07
Lighting and Shadows

Directional, Point, Spot — and why static light can be "baked" in advance.

02.08
Animation and the Animator Controller

Animation clips, state machine, blend trees — how a character doesn't look like a puppet.

02.09
3D Audio and AudioMixer

AudioSource, AudioListener, 3D attenuation, and routing through the mixer.

02.10
UI in a 3D Game — uGUI and UI Toolkit

Canvas, RectTransform, EventSystem — and two competing UI systems.

02.11
Prefab and ScriptableObject

Reusable objects and data-only assets — without them a project falls apart.

02.12
Practice — a First-Person Controller

We'll build a minimal FPS character with movement, jumping, and raycast shooting.

02.13
Building and Optimization

Build Settings, Profiler, the frame budget — from a finished prototype to a build.

02.14
NavMesh and AI — Pathfinding and a Simple AI Enemy

Navigation Mesh, NavMeshAgent, a basic state machine for an enemy.

02.15
Particle System and VFX Graph

Two visual-effects systems — when to choose each, and the basic techniques.

02.16
Timeline and Cutscenes

Multi-track direction inside Unity — animation, sound, and effects by timecode.

02.17
Multiplayer — Netcode for GameObjects

NetworkObject, NetworkVariable, ServerRpc/ClientRpc — the basics of a networked game.

02.18
Addressables — Modern Asset Loading

Asynchronous loading by address, a replacement for Resources.Load and AssetBundles.

02.19
HLSL Shaders in Unity in Depth

ShaderLab + HLSL structure, vertex/fragment, custom URP shader.

02.20
Practice — Third-person Platformer with a NavMesh Enemy

Orbit camera, physics controller, double jump, coyote time, a chasing enemy, and checkpoints.

02.21
Splines and Procedural Paths

The built-in Splines package in Unity 6, Bezier/B-Spline curves, Cinemachine SplineDolly, and spawning along a path.

02.22
Job System and Burst — Parallelism and SIMD

IJob, IJobParallelFor, the Burst compiler, NativeArray — a working path to high performance.

02.23
2D in Unity 6 — Box2D v3 and Hybrid Scenes

The 2D pipeline, Box2D v3 in Unity 6.3, multi-threaded physics, Hybrid 2D/3D Scenes.

02.24
XR / OpenXR — VR Applications in Unity

XR Interaction Toolkit, OpenXR plugin, a basic VR scene with teleport, grab, and hand-tracking.

02.25
Editor Scripting — Extending the Unity Editor

Custom Inspectors, EditorWindow, MenuItem, Gizmos, ExecuteAlways — extending the Unity Editor.

02.26
Sentis — ML inference in Unity

ONNX models in real time, IWorker, a practical image classification example.

02.27
Cinemachine — Advanced Techniques

Confiner, Impulse, Composer, FreeLook, blending, state-driven cameras — a deep dive into Cinemachine 3.

02.28
Animation Rigging — Procedural Animation and IK

TwoBone IK, Aim Constraint, Multi-Parent — layering procedural layers over a ready-made animation.

02.29
Save / Load — Saving Progress

PlayerPrefs, JSON, binary serialization, encryption, save versioning.

Glossary