Picture of Nathan Kellman
Nathan Kellman
Nathan Kellman is a Level Designer at Escape Velocity Entertainment and lead instructor at Game Design Skills. Nathan has created levels for Diablo 4 and worked with Lost Boys Interactive. He's the lead Level Designer for the FPS Mantra. Design Portfolio | LinkedIn | Twitter/X
Skip To...

Unity Software: Definition, Requirements, Download, Coding

Unity Software: Definition, Requirements, Download, Coding
Picture of Nathan Kellman
Nathan Kellman
Nathan Kellman is a Level Designer at Escape Velocity Entertainment and lead instructor at Game Design Skills. Nathan has created levels for Diablo 4 and worked with Lost Boys Interactive. He's the lead Level Designer for the FPS Mantra. Design Portfolio | LinkedIn | Twitter/X

Unity is an established standard game design engine in the games industry, producing well-known titles like Pokémon Go, Call of Duty: Mobile, and Genshin Impact. Unity is considered one of the Big Three game design engines, along with Unreal and Godot. The engine has extensive market reach, creating over 50% of new games released on Steam in 2024 and 2025. Unity’s mobile market includes 50% of all games, over 70% of the top 1000 mobile games, and 82 of the top 100 games. The engine first started gaining prominence through its 2007 to 2009 mobile expansion, with its position as one of the dominant game engines firmly solidified in 2016 with the release of games like Pokémon Go. Unity’s community is established and active, shown through extensive Asset Store contributions, online support resources, and the engine’s game jam prominence. Unity caters to the AAA industry, solo developers, and indie studios simultaneously, and is considered user-friendly for beginners. Learn more about the Unity engine’s core features, architecture, system requirements, and workflow below.

Unity has an extensive Asset Store, with
free and paid community resources

What is the Unity engine?

The Unity engine is a game engine developed by Unity Technologies, which includes the Unity editor as a front-facing application used for game construction. Unity is able to create and power a variety of 2D and 3D games. The engine has even been used in the film, automotive, and architectural industries, and for applications like research and simulation. Unity’s workflow is based on creating GameObjects and assigning them properties. This core functionality is facilitated by the editor’s layout, which includes Scene and Game Views, Hierarchy and Project windows, and the Inspector. Integrated and third-party tools add support for physics, visual scripting, and coded functionality. The Unity editor includes a variety of graphics and animation features, as well as versatile rendering options through the Scripted Render Pipeline. Unity provides cross-platform support for over 20 platforms.

Unity’s architecture and core game design workflow are structured around objects, or GameObjects, which are fundamental building blocks in Unity, and components, which add functionality. Game design in Unity involves creating objects, such as characters, managing the objects’ properties, such as their size, attaching components to add functionality, such as appearance assets or scripted behaviors, and arranging the objects within a game’s scene.

In Unity, components like animations are
added to game objects via the Inspector

Scene View is where designers construct a game’s scenes. Scenes represent self-contained physical game spaces or environments, and are often used as game levels. Adding a GameObject, such as a character or a light source, to a scene makes it a physical object in the space. Users are able to resize GameObjects in the scene window or drag and drop to position them. Clicking on a GameObject brings up the Inspector Window for further modification of the object. Objects for a scene are tested and demoed in Game View.

Game View runs the game in Play Mode, rendering the scene from the perspective of the positioned cameras and showing performance data, such as FPS. The view allows for demoing games as well as performing interactive testing and debugging in real time. Users are able to simulate different devices, such as mobile device screens, modify resolutions, and toggle the visibility of objects like light sources or cameras. Changes made in Play Mode don’t persist beyond the current playthrough, requiring modification via Scene View, the Inspector, or the Hierarchy Window.

Designers can test out gameplay and
behaviors in Game View

The Hierarchy Window lets users view and modify all current GameObjects in a scene. The Hierarchy window allows designers to toggle object visibility and to view and modify parent-child hierarchies, nesting objects underneath other objects. Selecting a GameObject in the Hierarchy Window brings up the Inspector Window to modify its properties. Users are able to search and rearrange scene objects in the Hierarchy Window. Objects, by default, arrange themselves in the order they were added to a scene, whether created directly in Scene View or dragged in via the Project Window.

The Project Window shows the hierarchy of project directories and their files in a file browser layout. Designers use the Project Window to easily add, modify, locate, and arrange project files, like assets, in the editor. The Project Window allows users to save searches or folders for quick access and to switch between tree and icon view layouts. Users are to drag and drop certain files, like 3D Models or sprites, directly into the Scene View to create GameObjects. Selecting files like assets brings up their Inspector Window.

New scene objects appear in Unity's
Hierarchy Window in the order added

The Inspector Window lets users view and modify a GameObject, selected via Scene View or the Hierarchy Window, or asset files selected from the Project Window. Designers configure properties like size and position, or attach components that add behavior, such as a script for custom behavior, or a Rigidbody to give the object simulated physics.

Unity provides physics tools and integrations to affect the behaviors of GameObjects, simulating collisions and forces like gravity in realistic ways. Designers are able to add physics to 3D objects through Unity’s own physics engine or built-in integration with NVIDIA PhysX. 2D physics is available through built-in Box2D integration. Designers are able to customize the physics of GameObjects, such as modifying their friction or bounciness, or changing a joint from a hinge to one that has spring properties. Objects are able to have their physics modified in-game through behavior scripts or visual scripts.

Unity's toolset lets devs add in advanced
lighting and physics

Unity’s visual scripting is used to create game logic and behaviors, such as making an enemy notice and target the player when within a defined distance. Visual scripting involves configuring, dragging, and connecting nodes in graphs. Attaching a visual script to an object via a script machine component lets it affect the object’s behavior. Visual scripting is an alternative to coding, with every visual node in a graph representing coded functionality in C#.

using Visual Scripting in unity to create
game logic without code

Coding object behaviors is done in C# via an IDE outside of the Unity editor. Visual Studio is the default IDE Unity selects. Unity uses C# as its primary scripting language and sole integrated language, and supports the .NET runtime. Other languages have limited support in Unity and require workarounds, such as being added as DLLs or requiring other third-party solutions. Scripts are able to be attached to a GameObject as components that modify behavior, such as simulating day and night times by changing the brightness and positions of lights over time.

Unity’s editor includes graphics tools. Users are able to customize Unity’s real-time shaders via its shader language, HLSL, or by using Shader Graph, a visual interface that gives instant feedback of changes. Unity’s graphics suite includes integrations with Timeline for animations, and Cinemachine for camera control. The extensive Unity Asset Store provides importable templates, assets, and tools for creators wanting to save time through community resources. Unity has advanced lighting tools such as real-time ray tracing, available through the engine’s High Definition Render Pipeline.

unity lets users adjust lighting based on
real-time settings or actions

Unity has advanced rendering options through the Scripted Render Pipeline (SRP), which lets users customize and schedule render pipelines for a target platform and using C# scripts. The engine provides built-in pipelines, the High Definition Render Pipeline (HDRP) and Universal Render Pipeline (URP), both built on top of SRP. HDRP enhances graphics to achieve maximum fidelity and realism, and is intended for powerful platforms. URP optimizes performance for a diverse range of hardware needs, facilitating cross-platform releases.

Unity is known for cross-platform support, facilitating porting to over 20 platforms, which include PCs, mobile devices, XR platforms, consoles, web, and embedded systems. Levels of cross-platform support depend on what tier the user has. Support for major consoles, including PlayStation, Xbox, and Switch varieties, requires paying for the Pro tier or higher. Full Apple Vision Pro support additionally requires the Pro tier.

Studios like Supercell used Unity for its
cross-platform support

Who made Unity Engine?

The Unity engine was made by Unity Technologies (Unity Software Inc.), formerly Over the Edge Entertainment, and released in 2005. David Helgason, Joachim Ante, and Nicholas Francis were the creators of the initial engine as well as the company’s founders. Unity started as a tool to facilitate the team’s own game development, with the engine’s capabilities refined and expanded after the game’s release.

David Helgason, Joachim Ante, and Nicholas Francis were the original developers of Unity. The trio founded Unity Technologies, then named Over the Edge Entertainment (OTEE), Copenhagen, Denmark, in 2004. Ante was the company’s Chief Technology Officer (CTO) and was the lead architect on Unity, creating the majority of the core engine’s code. Francis was the Chief Creative Officer (CCO), who focused on Unity editor, as well as the graphics, gameplay, and general user experience aspects. Helgason was OTEE’s Chief Executive Officer (CEO) and business leader who provided additional development on the engine where needed.

Unity was released in 2005. The company
was called Over The Edge Entertainment

Unity started as an in-house tool for developing Over the Edge Entertainment’s game, GooBall. Unity Technologies focused on building the engine after the game’s release and subsequent failure in 2005, launching Unity for Mac a few months later during a presentation at Apple’s Worldwide Developers Conference (WWDC). Unity was the runner-up for Best Use of Mac OSX Graphics at the Apple Design Awards in 2006, and started expanding to different platforms, porting games to over 25 platforms by 2018.

What are the system requirements for Unity Engine?

The system requirements for Unity Engine are shown in the table below.

Operating System Windows: 10 v. 21H1+ (X64) / 11 v. 21H2+ (Arm64)
MacOS: Ventura 13+
Linux: Ubuntu 22.04, 24.04
CPU Windows: X64 with SSE2 support or Arm64
MacOS: X64 with SSE2 support (Intel) or ARM M1 or above (Silicon)
Linux: X64 with SSE2 support
GPU Windows: DX10/11/12 or Vulkan
MacOS: Metal-capable Intel or AMD
Linux: OpenGL 3.2+ or Vulkan, Nvidia or AMD
RAM 8 GB
Storage Unity editor: 5-8 GB
Ideal for development: 512 GB or 1 TB SSD
Recommended: High IOPS disc drive for builds

Unity’s system requirements are affected by the type of games being created, so having a computer that exceeds the system requirements is ideal for a smooth experience. Creating large games with multiple dependencies requires more space. Intensive games, such as those that require complex 3D graphics, have higher performance requirements in order to run in the editor.

Make sure the system requirements are
sufficient to run the game you're making

Games with large files and dependencies will balloon the requirements for available storage. Assets and third-party libraries are able to occupy tens of gigabytes. This additionally inflates Unity’s cache if the maximum size isn’t configured to be small. Larger projects often require more RAM, even if well-optimized for performance, due to the amount of space needed to load assets such as high-resolution textures. Modern large games like Cyberpunk 2077 and Starfield pre-load assets to reduce loading times. Dense world environments that need to persist in order to track players and enemies, or to prevent “pop-in” assets from appearing, will have higher RAM requirements. Project size and complexity therefore affect runtime performance in addition to storage.

Designing intensive projects, such as games running complex 3D graphics, requires a beefier setup. Creating an MMORPG or using HDRP rendering are examples of high-performance situations where running the minimum requirements won’t be sufficient. Simple mobile or 2D games have light system requirements by comparison. Assets that aren’t well-optimized, however, are able to affect performance even on smaller games. Unity has some mechanisms to optimize game performance, such as using URP instead of HDRP rendering.

Modifying a render feature using Unity's
Universal Render Pipeline (URP)

How much does Unity Engine cost?

The Unity engine is priced according to a tiered model. Unity’s licenses include a free tier, commercial licenses for developers, a license for industrial applications, and education licenses. The Personal tier makes most Unity features available for free if earning below $200k annually. Unity’s Pro tier unlocks features like console porting at $2310 per year. Enterprise provides custom pricing options, and is required at over $25M in annual revenue. The Industry tier has similar offerings to Enterprise but with features targeting non-entertainment industries. Unity’s Education tier licenses included several free engine access options along with additional education-aimed resources.

Unity’s Personal tier, the free tier, is available if earning under $200k in annual revenue or funding over the past 12 months. Unity advertises Personal as being for hobbyists and small indie teams. Personal comes with cloud features, like 10GB per user on Asset Manager, access to 25GB of combined storage on Unity Version Control and Unity Build Automation, free build minutes (200 on Windows and 100 on Mac), and 100GB of free egress from Unity Cloud. Personal tier lets the account holder select one of Unity’s collaboration tools for integration and provides access to some Cloud Diagnostics features like crash data, user feedback, and exception reports. Users on this tier have access to Unity’s monetization features, namely Unity Ads and a plug-in for Unity’s In-App Purchases feature. Personal tier lacks certain features like console support, which require paying for a Pro tier subscription.

Hollow Knight's availability on the Switch
required Unity's paid console support

Pro tier is the lowest of Unity’s paid tiers, costing $2310/yr or $210 per month and advertised as being for solo developers and experienced teams. Unity Pro expands on Unity’s Personal tier offerings, adding support for console porting and full support for Apple Vision Pro. Pro expands the allocation for Asset Manager to 50GB per seat. Unity’s Cloud Suite offerings increase on the Pro tier, extending integration to all of Unity’s collaboration tools and expanding Unity’s Cloud Diagnostics offerings. Pro tier offers users access to Unity’s priority customer service queue. Add-ons like additional technical support and build server license capacity cost extra.

Unity’s Enterprise tier offers custom pricing options available via the Unity sales team, and is required for businesses earning over $25M in annual revenue. Enterprise builds on the Pro tier offerings, providing users with extended LTS support and read-only access to Unity’s source code. The ability to adapt source code, via Unity’s Source Code Adapt feature, is an optional paid add-on. Enterprise expands the Asset Manager allocation to 120GB per account. Users receive enhanced technical support and training options, including 1 to 19 seats for Standard Technical Support, and over 100 seats for dedicated bug-fixing and LTS backporting. Enterprise comes with a further 20+ seats access to Premium Technical Support, On-Demand Training (3 subscriptions per 20 seats), and a Partner Relations Manager.

Genshin Impact required Unity's
Enterprise Tier and Source Code Adapt

The Industry tier Unity offers is for teams building industrial applications and is available at custom pricing options via the Unity sales team. Industry tier is designed for customers outside of the gaming and entertainment industries, such as automotive, architecture, and manufacturing applications. Industry is required for companies using Unity for non-gaming purposes if earning over $1M annually. The tier includes industry-specific toolkits along with the editor. Industry’s other offerings mirror Enterprise’s, except in its support and learning resources. Standard Technical Support provides 1 to 9 seats, while Premium Technical Support starts at 10 seats. Industry’s Partner Relations Manager support starts at 4 seats, and there is no seat limit for On-Demand Training. Support for dedicated bug fixing and LTS backporting has no specified seat limit, but requires contacting sales for options. Unity provides additional licenses for educational purposes.

Unity’s Education offerings provide licenses for students and teachers, which give access to the engine along with additional educational resources. The Unity Student, Educator, Education Grant License, and Learn packages are all free. Unity’s Education offerings additionally include paid training and certification products.

Unity has free and discounted options
available for students and educators

How to download the Unity software?

To download the Unity software, go to Unity’s website and follow the instructions below. Click on the “Download Unity” button, or select “Download” from the Games menu dropdown, then click the download link for your Operating System (OS), as in the image below. On Windows or MacOS, the Unity Hub installer downloads automatically. For these OSes, run the downloaded UnityHubSetup.exe or .dmg file to install it. Downloading for Linux redirects to instructions to install the Unity Hub for various Linux distributions.

Open the installed Unity Hub, and then log in or make an account when prompted. Click the Install button under Get set up or Installs to install the latest version of the engine. Alternatively, start a tutorial or create a new project in the Unity Hub, and the latest version of the engine will download automatically.

Download the Unity Hub version for your
operating system via Unity's site

How to code in the Unity Engine?

To code in the Unity Engine, use the Visual Studio IDE and .NET environment to write C# scripts that manage GameObject behaviors, and attach the scripts to GameObjects as components in the Unity Editor’s Inspector. To add code as external libraries, build the code as a Dynamic Link Library (DLL) in a different solution in an IDE, such as Visual Studio, and then import the DLLs into the project’s Assets/Plugins folder in Unity. Coding in Unity involves understanding core building blocks of Unity’s architecture – GameObjects and components– and how to add a script to a GameObject in Unity, as well as how to code the object’s behavior in the script. Additional free learning resources, provided by Unity and other outlets, help with building a solid foundation of coding in Unity.

GameObjects and components are core building blocks in Unity. A GameObject is any object in a game, such as a character, interactive item, or visual effect, like a particle system. Designers create GameObjects in the engine. Adding scripted functionality to an object involves creating a script component.

Creating a cube-shaped GameObject in
unity

To add a script to an object, create the GameObject, if not already in existence, in the Scene View or Hierarchy Window, as shown in the above gif. Select the object to bring up the object’s Inspector pane. In the Inspector pane, click “add component”, as shown in the gif below, and enter the name of the new script.

Attaching a script via the inspector and
modifying it in Visual Studio

To code a Unity object’s behavior in a script, open the script attached to the object (double click) to edit the script in the IDE, which is Visual Studio by default. Write the code for the GameObject’s behavior in C# inside the built-in object functions that correspond to when the behavior must run. Start() and Update functions are created by default when a new script is added to a Unity object in the editor. Functionality coded in the Start() function runs once, at the start of the game. Code written inside Update() gets called once for every frame. Adding an Awake() function lets its code run before the start is called. Adding a FixedUpdate() function calls functions at set intervals (by default every 0.02 seconds). FixedUpdate() is used for handling physics calculations.

To learn more about how to code in Unity or C#, check out Unity Learn on the Unity website for free starting tutorials, game-building guides, and courses at different levels of experience. The Brackeys YouTube channel also offers easy getting-started playlists, as well as teaching how to build specific types of games in Unity, such as a 2D platformer or a basic 3D game. Brackeys was a huge help to me in learning Unity for my masters at Michigan State University, which is why I consider it a great first step. Even though I had game engine experience from working in Unreal, which has similarities in terms of moving objects around in the world, there were enough challenges from Unity that I decided to find a crash course. The first thing I did was search on YouTube. The combination of Brackeys and experimentation got me on track and has gotten me through many school projects. If you need to learn the basics in something technical, my recommendation is to always look for YouTube tutorials.

Brackeys on YouTube has beginner to
advanced Unity game design courses

What is the Unity editor?

The Unity editor is an application that developers work in to create a game. The editor has a visual interface that allows users to drag and drop objects into game scenes and to inspect and configure objects with properties, relationships, and behaviors. Unity’s robust tools for physics, audio, and visual effects are managed via the editor through similarly configurable ways, such as a visual interface to preview shader configurations. The visual interface includes visual scripting, which builds game logic by connecting and configuring node-based graphs. Integrating C# code is supported by the editor, such as attaching scripts as object behaviors, although writing the code takes place in an external Integrated Development Environment (IDE) such as Visual Studio. The editor lets game designers demo and test games, including real-time testing, as well as use cloud services, manage dependencies, optimize performance, and handle exports.

What is the difference between the Unity Engine and the Unity Editor?

The difference between the Unity engine and the Unity editor is that the Engine is the full platform functionality used to both build the game and run it on the target platforms, while the Unity Editor is an application that serves as the front-facing part of the engine during game creation, interacted with by designers directly.

Unity engine powers many indie 2D and
3D games, such as Untitled Goose Game

The Unity engine is the entire platform and suite of tools used to create and run a game. The engine abstracts away low-level concerns during design by managing standard game development functionality, like how to render game graphics or handle multiplayer networking. Using the engine during design means that all the creator needs to focus on are game-specific design concerns. When a game is released for a specific platform, the core engine files that run the game are included with the release.

The Unity editor is the part of the engine that game designers interact with directly to create a game, i.e., the application with the visual design interface. The editor is not shipped with the game’s final release. Creating game scenes, modifying GameObjects, or visual scripting game logic are all processes configured through the editor interface, but powered by the engine. Unity’s robust tools for physics, audio, and visual effects are editor-accessible in similarly configurable ways, such as providing a visual interface to let the designer tweak and preview shader configurations before applying a change.

Join the Funsmith Tavern to get exclusive game dev tips that we don't share anywhere else

Each Friday, get a shot of 2-min TL:DR update in your inbox on the latest
Actionable tips, templates, or in-depth guides by game dev experts
— Entry-level Game design job listings(+ playtesting and internships)
— Private community workshops, events, and discussions
    Share
    Share
    Share
    Send

    The Funsmith Tavern

    Weekly Game Design Newsletter

    Level-up your game design knowledge, skills, career, and network

    Bi-weekly on Tuesday, get a shot of 2-min TL:DR update in your inbox on the latest

      All tactics. No fluff. Pro advice only. Unsubscribe any time

      Get Exclusive Game Design Tips that I Share Only with Funsmith Tavern Subscribers

      Weekly Game Design Newsletter

      Level-up your game design knowledge, skills, career, and network

      Bi-weekly on Tuesday, get a shot of 2-min TL:DR update in your inbox on the latest

        All tactics. No fluff . Pro advice only. Unsubscribe any time

        EXPERIENCE & BACKGROUND:

        [STUDIO] Blizzard Entertainment: Content, mechanics, and systems designer

        (Creator of Apex Legends & former Creative Director at Respawn)

        [GAME] World of Warcraft: MMORPG with 8.5 million average monthly players, won Gamer’s Choice Award – Fan Favorite MMORPG, VGX Award for Best PC Game, Best RPG, and Most Addictive Video Game.

        • Classic:
          • Designed Cosmos UI
          • Designed part of Raid Team for Naxxramas
        • Burning Crusade:
          • Designed the raid bosses Karazhan, Black Temple, Zul’Aman
          • Designed the Outlands content
          • Designed The Underbog including bosses:
            • Hungarfen, Ghaz’an, Swamplord Musel’ik, and The Black Stalker
          • Designed the Hellfire Ramparts final bosses Nazan & Vazruden
          • Designed the Return to Karazhan bosses: Attumen the Huntsman, Big Bad Wolf, Shades of Aran, Netherspite, Nightbane
        • Wrath of the Lich King:
          • Designed quest content, events and PvP areas of Wintergrasp
          • Designed Vehicle system
          • Designed the Death Knight talent trees
          • Designed the Lord Marrowgar raid
        • Cataclysm:
          • Designed quest content
          • Designed Deathwing Overworld encounters
          • Designed Morchok and Rhyolith raid fights
        • Mists of Pandaria: 
          • Overhauled the entire Warlock class – Best player rated version through all expansion packs
          • Designed pet battle combat engine and scripted client scene

        [GAME] StarCraft 2: Playtested and provided design feedback during prototyping and development

        [GAME] Diablo 3: Playtested and provided design feedback during prototyping and development

        [GAME] Overwatch: Playtested and provided design feedback during prototyping and development

        [GAME] Hearthstone: Playtested and provided design feedback during prototyping and development

        [STUDIO] Riot Games: Systems designer, in-studio game design instructor

        (Former Global Communications Lead for League of Legends)
        (Former Technical Game Designer at Riot Games)

        [GAME] League of Legends: Team-based strategy MOBA with 152 million average active monthly players, won The Game Award for Best Esports Game and BAFTA Best Persistent Game Award.

        • Redesigned Xerath Champion by interfacing with community
        • Reworked the support income system for season 4
        • Redesigned the Ward system
        • Assisted in development of new trinket system
        • Heavily expanded internal tools and features for design team
        • Improved UI indicators to improve clarity of allied behaviour

        [OTHER GAMES] Under NDA: Developed multiple unreleased projects in R&D

        Game Design Instructor: Coached and mentored associate designers on gameplay and mechanics

        [STUDIO] Moon Studios: Senior game designer

        (Former Lead Game Designer at Moon Studios)

        [GAME] Ori & The Will of The Wisps: 2m total players (423k people finished it) with average 92.8/100 ratings by 23 top game rating sites (including Steam and Nintendo Switch).

        • Designed the weapon and Shard systems
        • Worked on combat balance
        • Designed most of the User Interface

        [GAME] Unreleased RPG project

        • Designed core combat
        • High-level design content planning
        • Game systems design
        • Game design documentation
        • Gameplay systems engineering
        • Tools design
        • Photon Quantum implementation of gameplay

        [VC FUNDED STARTUP] SnackPass: Social food ordering platform with 500k active users $400m+ valuation

        [PROJECT] Tochi: Creative director (hybrid of game design, production and leading the product team)

        • Lead artists, engineers, and animators on the release the gamification system to incentivize long-term customers with social bonds and a shared experience through the app

        [CONSULTING] Atomech: Founder / Game Design Consultant

        [STUDIOS] Studio Pixanoh + 13 other indie game studios (under NDA):

        • Helped build, train and establish the design teams
        • Established unique combat niche and overall design philosophy
        • Tracked quality, consistency and feedback methods
        • Established company meeting structure and culture

        Game Design Keynotes:

        (Former Global Head of HR for Wargaming and Riot Games)
        • Tencent Studio
        • Wargaming
        • USC (University of Southern California)
        • RIT (Rochester Institute of Technology)
        • US AFCEA (Armed Forces Communications and Electronics Association)
        • UFIEA (University of Florida Interactive Entertainment Academy)
        • West Gaming Foundation
        • Kyoto Computer Gakuin – Kyoto, Japan