Unity Game Engine lets you create real-time 3D projects for games, animation, film, architecture, engineering, manufacturing and construction. Unity includes tools to empower artists to create cinematic content and gameplay sequences without the need of an engineer.

Many high-profile games have been created using Unity, supporting multiple platforms including desktop, mobile, console and VR.

Is Unity free?

Unity offers a free Personal plan that includes all core features to create games and interactive experiences. It also includes support for Unity Ads and the in-app purchase plugin. You can download it and use Unity free of charge as long as your revenue (or funds raised in the last year) does not pass $100K.

Can I create AAA games with Unity?

Yes, you can. Unity has been used to create hundreds of popular games. Highlights include the likes of Among Us, Beat Saber, Genshin Impact, Pokémon Go, Super Mario Run, Iron Man VR, PC Building Simulator, Pillars of Eternity, Kerbal Space Program, Hearthstone, Temple Run, among many others.

Which is easier to use, Unity or Unreal Engine?

There is no right answer to that question. Both game engines are extremely robust and offer a fully featured free version to get you started. Both have strong communities in which you can participate and consult with. The general consensus at this stage is that Unity and Unreal Engine both are beginner friendly and won't require advanced programming knowledge for simple projects which will get the ball rolling as you learn.

Can I make money with Unity (free)?

Yes, you can create a game and legally sell it with the free version of Unity. You won't pay royalties or any revenue share unless you exceed sales of $100K in a year.

Can I create a game in Unity without coding?

Unity relies on the C# programming language and does require text-based programming. However, to be more welcoming to users with no coding experience, there is a "First-time Users" option that offers completed mini-games that you can edit and play around with, so you can get a better grasp at how the engine works. In that mode, Unity will guide you with step-by-step instructions to create your own tasks and build your own projects.

Features

Unity Personal

For beginners, students and hobbyists who want to explore and get started with Unity. Completely free --- no royalties, no credit card required. You fully own any content you create

Everything you need to get started

Unity Personal is a great place for beginners and hobbyists to get started. It includes access to all core game engine features, continuous updates, beta releases, and all publishing platforms.

Start creating

Move efficiently from prototyping to full production with a truly flexible editor and intuitive workflows supported by tons of tutorials and ready-made assets to guide your learning and development.

Work with the latest

Continuous updates allow you to develop with all the latest and most advanced features for high-end visuals, audio, animation, physics --- everything you need to make any kind of game.

Build for all audiences

Target more devices more easily --- with Unity, you can build once and deploy to the largest range of mobile, VR, desktop, Web, Console and TV platforms in the industry with a single click.

Note: You can download the latest version as well as the LTS (Long Term Support) version. The LTS stream is for users who wish to continue to develop and ship their games/content and stay on a stable version for an extended period. Note that Unity does not support downgrading a project to a previous version of the editor. However, you can import projects to a new version of the editor.

What's New

Known Issues in 6000.0.1f1

  • 3D Physics: 3D Physics Layer Collision Matrix elements are misaligned when new Layers are added (UUM-61750)
  • Asset - Database: Crash in CollectManagedImportDependencyGetters inside OpenScene in batch mode (UUM-57742)
  • Asset Importers: Unity crashes on strtol_l when importing a specific .obj file (UUM-42697)
  • IAP: [Android] The Player crashes with a "JNI ERROR (app bug)" error when the global reference table gets overflowed by BillingClientStateListener (UUM-55105)
  • IL2CPP: [Android] Crash on Android when AndroidJavaProxy is calling from multiple threads (UUM-49357)
  • Lighting: The Editor becomes unresponsive and memory allocation errors are spammed in the Console when Generating Lightning (UUM-58017)
  • Platform Audio: Crash on FMOD::CodecMPEG::setPositionInternal when a mobile platform is selected and a specific audio clip is played (UUM-62086)
  • Platform Audio: [Linux] No audio output when playing audio (UUM-53143)
  • Shaders: Unlit/Texture material shader is not rendered if added as a skybox in lightning settings
  • UI Toolkit Framework: The "StackOverflowException" error is thrown in the console and the Editor freezes when Spacebar is pressed after selecting the last element of a list (UUM-69616)
  • WebRequest: UnityWebRequest crashes if invoked when player is quitting (UUM-63150)
  • Windows: Two variants of a Windows editor only plugin, one targeting x86 and one targeting x64, prevents the player build (UUM-69382)

6000.0.1f1 Release Notes

Features

  • Android: Added the Addressables for Android (com.unity.addressables.android) package. This package provides Play Asset Delivery support for Addressables.
  • DX12: Added support for indirect Dispatch Rays (part of DXR 1.1). The method is similar to RayTracingShader.Dispatch, but the three dispatch dimensions are retrieved from a GraphicsBuffer. Added RayTracingShader.DispatchIndirect and a new CommandBuffer.DispatchRays signature. Added SystemInfo.supportsIndirectDispatchRays capability status.
  • Editor: Added a custom menu on IRenderPipelineGraphicsSettings.
  • Editor: Added a piercing menu that you can open with Ctrl + Right-click in the Scene view. The piercing menu provides a UI that lists all GameObjects under the pointer. GameObjects in the menu can be highlighted and selected.
  • Editor: Added the ForceNoCrunch option to the Build Windows > Asset Import Overrides > Texture Compression dropdown which forces all textures to disable crunch compression and re-import.
  • Editor: Added Additional App IDs to Steam ID Provider Editor Settings for Multiple App ID support.
  • Editor: Integrated new build profile icons.
  • Editor: Introduced IRenderPipelineResources to host SRP resources, which uses the ResourcePath to auto-load resources.
  • Editor: The Build Profile Diagnostic checkbox is no longer available because the Build Settings window has been replaced with the Build Profile window.
  • Graphics: Added a new backend rendering path for rigid GameObjects in Unity that puts them through the Batch Render Group API when the option is enabled on the Render Pipeline asset ('GPU Resident Drawer'). This functionality creates a persistent GPU state for these objects and they will be rendered by the same fast batching path as used by the entities renderer.
  • Graphics: Added small-mesh culling for gpu-driven instances.
  • Graphics: Added support for GPU occlusion culling of instances that are compatible with the 'GPU Resident Drawer', which can be enabled in the Render Pipeline asset.
  • Graphics: Added UITK support for CustomPostProcessOrder.
  • Graphics: Adding a new per batch layer filtering setting for BatchRendererGroup. This setting is useful for the context of culling out specific batches that go through the batch renderer group.
  • Graphics: Enabled SpeedTree GameObjects rendering using GPU Resident Drawer.
  • Graphics: Updated the default IRenderPipelineGraphicsSettings Inspector to trigger notifications when a value is modified.
  • HDRP: Added AMD FidelityFX Super Resolution 2 (FSR2) Unity script bindings and HDRP integration.
  • HDRP: Added support for overriding material properties such as smoothness, albedo, and normal maps on all materials to facilitate material and lighting debugging. The material override feature in HDRP is available through the Rendering Debugger's Lighting panel when rendering through the path tracer pipeline.
  • HDRP: Added support for Spatial Temporal Post-Processing (STP) upscaling solution.
  • HDRP: Added the Sky Occlusion feature to Adaptive Probe Volumes (APV), to allow time of day with static probe volumes.
  • HDRP: Disabled storing of baked data as Streaming Asset in Adaptive Probe Volumes (APV) to make it compatible with Asset Bundles and Addressables.
  • HDRP: Improved on existing Mipmap Streaming debug views and added more. The current offering in HDRP is consistent with what URP offers.
  • iOS: Added Apple Privacy Manifest support.
  • Package: Improved the user experience in the 2.0.8 patch of the User Reporting package.
  • Package Manager: Improved Project manifest files to repopulate with default dependencies when the files are empty or contain only whitespace.
  • Particles: Add BakeTexture and BakeTrailsTexture scripting methods.
  • Particles: Added the Custom Vertex Streams feature for particle trails.
  • Shadergraph: Added a customizable Heatmap color mode, which by default displays the estimated performance impact of each node in a Shader Graph.
  • Shadergraph: Added a new sample content pack that can be installed with the Package Manager. The samples contain descriptions, examples, and break downs for a majority of the nodes in Shader Graph. These samples help users understand the inner workings of the nodes and see examples of how they work and how they can be used.
  • Shadergraph: Added a zoom step size option in the user preferences.
  • Shadergraph: Added new shortcuts for adding new nodes and toggling sub-window visibility, and moved several existing shortcuts to the Shortcut Manager.
  • Shadergraph: Added the Feature Examples Sample to Shader Graph to show users how to achieve specific effects in Shader Graph.
  • SpeedTree: Added the SpeedTree9Importer, which supports .st9 files exported by SpeedTree Modeler 9 and includes the following:
  • Support for SpeedTree Games Wind and SpeedTree Legacy Wind effects
  • The ability to configure wind strength and direction responsiveness through the Importer Settings
  • New SpeedTree9 shaders for built-in (.cg), URP, and HDRP renderers (.shadergraph)
  • New shaders for the new wind effects, but no major changes to lighting
  • SRP Core: Added the option to cache Render Graph compilation for both URP and HDRP.
  • TextCore: Native TextGenerator Rewrite.
  • UI Toolkit: Added a debugger for the UI Toolkit dynamic atlas.
  • UI Toolkit: Added missing UxmlAttribute converters to support UXML authoring: Gradient, AnimationCurve, ToggleButtonGroupState, Unsigned Int and Unsigned Long.
  • UI Toolkit: Added support in PropertyField for ToggleButtonGroupState serialized properties.
  • Universal RP: Added a Camera History Texture manager and basic interfaces to access per-camera history textures.
    History textures are wrapped and stored in types which contain all the textures, additional data, and API methods specific for that history.
    History textures are useful for rendering algorithms that accumulate samples over multiple frames or use data of previous frames as input.
  • Universal RP: Added a new config package that allows you to override the maximum number of lights visible on screen.
  • Universal RP: Added C# script templates to create a post-processing ScriptableRendererFeature that uses a custom VolumeComponent.
  • Universal RP: Added per-camera color and depth history and history access for custom render passes.
  • Universal RP: Added support for foveated rendering in the Forward+ rendering path.
  • Universal RP: Added the 8192x8192 option in Shadow textures.
  • URP: Added Adaptive Probe Volumes (APV) Lighting Scenario Blending to URP
  • URP: Added APV Sky Occlusion support for URP.
  • URP: Added Render Graph Viewer. Access it through the Window > Rendering menu. The tool helps to visualize and debug resource usage of Render Passes in the Render Graph framework.
  • URP: Added six Mipmap Streaming debug views to the Rendering Debugger. These views can be found in the Rendering tab, under Mipmap Streaming. The available debug views are: Mip Streaming Performance, Mip Streaming Status, Mip Streaming Activity, Mip Streaming Priority, Mip Count, and Mip Ratio.
  • URP: Added support for Spatial Temporal Post-Processing (STP) upscaling solution.
  • VFX Graph: Added Camera Buffer Access support in VFX with URP.
  • VFX Graph: Added collision events that allow specific processes upon contact.
  • VFX Graph: Added new profiling/debugging panels in the VFX window.
  • VFX Graph: Added particle count readback for strips, which also allows strips to go to sleep state.
  • VFX Graph: Added support for per-particle sorting in strips.
  • VFX Graph: Allowed instanced rendering of VFX that have exposed textures or graphic buffers.
  • VFX Graph: Built-in and custom attributes can now be handled from the blackboard panel.
  • VFX Graph: Enabled Frustum Culling for strips.
  • VFX Graph: Improved the Shader Graph Cross Pipeline workflow.
  • VFX Graph: Reworked Flipbook player block.
  • VFX Graph: Strips now support the "Indirect draw" option. "Indirect draw" renders only the particles that are active, instead of full capacity.
  • VFX Graph: Support of ShaderKeyword declared in Shader Graph.
  • VFX Graph: The following improvements have been made to shortcuts in VFX Graph:
  • Registered the shortcuts in the global Unity Shortcut window.
  • Synced shortcuts with ShaderGraph where possible.
  • Added new shortcuts.
  • Web: Implemented the following LocationService methods and properties in Web platform:
  • Start()
  • Stop()
  • isEnabledByUser
  • lastData
  • status
  • Web: [Web Platform] Added the ability to copy and paste to and from the Unity player.
  • WebGL: Added support for WebAssembly 2023, which is a Unity-coined term for a collection of newer WebAssembly language features such as, sign-ext opcodes, non-trapping fp-to-int, bulk-memory, bigint, wasm table, native Wasm exceptions, and Wasm SIMD.
  • WebGL: Implemented the following LocationService methods and properties:
  • XR: Added support for Foveated Rendering on Vision Pro.

Read the complete release notes here.