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 2023.2.19f1

  • Asset - Database: Crash in CollectManagedImportDependencyGetters inside OpenScene in batch mode (UUM-57742)
  • Asset - Database: Crash on UnityEditor.AssetDatabase:OpenAsset because assertion fails on prefabInstance.GetRootGameObject().IsValid() expression while opening a specific Scene (UUM-66207)
  • Asset - Database: Fix for 2023.2.X: Crash on UnityEditor.AssetDatabase:OpenAsset because assertion fails on prefabInstance.GetRootGameObject().IsValid() expression while opening a specific Scene (UUM-66278)
  • Asset Bundles: Memory leak when building AssetBundle with Sprite Atlas enabled on macOS (UUM-56323)
  • Audio Authoring: Crash on AudioUtil_CUSTOM_HasAudioCallback when exiting Play Mode while the Inspector is displaying a GameObject with a script attached (UUM-58481)
  • 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)
  • Metal: Player hangs when re-focusing the Player window after switching to a window that covers the Player window (UUM-67400)
  • Platform Audio: Crash on FMOD::CodecMPEG::setPositionInternal when a mobile platform is selected and a specific audio clip is played (UUM-62086)
  • Progressive Lightmapper: The Editor becomes unresponsive and memory allocation errors are spammed in the Console when Generating Lightning (UUM-58017)
  • Scripting Runtime: [TypeCache] Crash on RaiseException when selecting "Quit" in a "Fatal Error!" pop-up (UUM-68119)
  • SRP Architecture & API: Stacked camera is not rendering when using custom post effects is done in PreRender PostRender and Camera is not in HDR (UUM-22444)
  • Text: Blurry Text (UUM-49006)
  • Text: Fix for 2023.2.X: Blurry Text (UUM-49008)
  • WebRequest: UnityWebRequest crashes if invoked when player is quitting (UUM-63150)

2023.2.19f1 Release Notes

Improvements

  • iOS: ProjectCapabilityManager.AddInAppPurchase() now also adds the required StoreKit.framework. (UUM-66002)

Fixes

  • 2D: Fixed Material Upgrade pop-up appears on opening 2D (URP) Template. (UUM-55300)
  • 2D: Set default projection orthographic for pixel perfect camera (UUM-31719)
  • Android: Fixed compass timestamp as time elapsed in seconds since the device was last turned on. (UUM-64955)
  • Apple TV: Fixed Unity editor not finding Xcode application when only tvOS module is installed. (UUM-65168)
  • Audio: Fixed an issue that would cause building and running the WebGL player to fail. (UUM-68108)
  • Audio: Fixed reloading domain while Audio Random Container window is hidden breaks the ability to remove clips. (UUM-65178)
  • Editor: Fixed a crash occurring in the FontAssetCreatorWindow. (UUM-66950)
  • Editor: Fixed an issue in the initial rendering of the preview in the inspector window, the ambient color of the default sky may not be ready (black ambient color), due to the lag of GPU readback of the SH coefficients. The ambient color is not updated until the preview is updated by some triggers like hovering the cursor over the inspector. (UUM-31320)
  • Editor: Fixed an issue where IMGUI TreeViews that don't allow dragging also did not allow items to be deselected via CTRL + Left click. (UUM-9236)
  • Editor: Fixed an issue where interacting with some Overlays did not stop mouse events from propagating further. (UUM-68629)
  • Editor: Fixed asset gray thumbnails when a project uses HDRP. (UUM-60000)
  • Editor: Fixed shader warnings in URP 2D template. (UUM-59543)
  • Editor: Fixed wireframe-rendering in the Editor when using Vulkan and GraphicJobs. (UUM-45832)
  • HDRP: Fixed a NaN issue in volumetric fog reprojection causing black to propagate in the fog. (UUM-63687)
  • HDRP: Fixed an assert triggered when the decal count goes over the light count. (UUM-68633)
  • IL2CPP: Fixed correctness of lock statement on ARM architectures under high contention. (UUM-65254)
  • IL2CPP: Fixed crash when calling special Array Set/Get/Address methods via reflection. (UUM-64457)
  • IL2CPP: Prevent additional IL2CPP arguments that contains --compiler-flags or --linker-flags from overriding the default values for these arguments. Instead combine them and pass them to the compiler or linker. (UUM-59355)
  • IL2CPP: Update zlib to v 1.3.1 (UUM-64803)
  • iOS: Fixed an issue with iOS Player Settings checkbox "Automatically add capabilities" did not detects Game Center usage (UnityEngine.Social). (UUM-65304)
  • Mono: Fixed a crash on Windows ARM64 when calling Thread.Abort. (UUM-64814)
  • Mono: Removed unhelpful mono icall warning message that was logged on domain reload. (UUM-64646)
  • Prefabs: Removing the root GameObject on a prefab instance, no longer crashes the editor. (UUM-58461)
  • Shaders: Fixed an issue where _KEYWORD_DECLARED defines were not guarded for stage specific keywords. (UUM-66001)
  • UI Toolkit: Fixed entering not activating rename on hierarchy elements on Mac, and focus being lost after renaming. (UUM-54133)
  • UI Toolkit: Fixed UI Toolkit scaling when opening a second GameView. (UUM-59583)
  • UI Toolkit: Fixed UIDocument errors when setting the PPU of a world-space PanelSettings to 0. (UUM-67345)
  • Universal RP: Fixed an issue where using the "Accurate G-buffer Normals" feature for deferred rendering on mobile platforms would cause a large amount of artifacts. (UUM-62216)
  • Universal Windows Platform: Fixed an issue by onlying sync capabilities if manifest exists. (UUM-68424)
  • URP: Fixed an issue where screen space decals wouldn't respect light cookies. (UUM-54231)
  • URP: Pass name when the pass is "LightMode" = "Universal2D". (UUM-36358)
  • Version Control: Fixed an issue where Perforce response was not supported during the login when it warned of an expiring license. (UUM-64620)
  • VFX Graph: Fixed activation slot was hidden when a block was collapsed. (UUM-59123)

Package changes in 2023.2.19f1

Packages updated

  • com.unity.adaptiveperformance: 5.0.1 → 5.1.0
  • com.unity.adaptiveperformance.google.android: 1.1.2 → 1.3.1
  • com.unity.render-pipelines.core: 16.0.5 → 16.0.6
  • com.unity.render-pipelines.high-definition: 16.0.5 → 16.0.6
  • com.unity.render-pipelines.high-definition-config: 16.0.5 → 16.0.6
  • com.unity.render-pipelines.universal: 16.0.5 → 16.0.6
  • com.unity.shadergraph: 16.0.5 → 16.0.6
  • com.unity.visualeffectgraph: 16.0.5 → 16.0.6