Unity 6.3 LTS — Deprecated APIs

Last verified: 2026-02-13

Quick lookup table for deprecated APIs and their replacements. Format: Don't use XUse Y instead


Input

DeprecatedReplacementNotes
Input.GetKey()Keyboard.current[Key.X].isPressedNew Input System
Input.GetKeyDown()Keyboard.current[Key.X].wasPressedThisFrameNew Input System
Input.GetMouseButton()Mouse.current.leftButton.isPressedNew Input System
Input.GetAxis()InputAction callbacksNew Input System
Input.mousePositionMouse.current.position.ReadValue()New Input System

Migration: Install com.unity.inputsystem package.


UI

DeprecatedReplacementNotes
Canvas (UGUI)UIDocument (UI Toolkit)UI Toolkit is now production-ready
Text componentTextMeshPro or UI Toolkit LabelBetter rendering, fewer draw calls
Image componentUI Toolkit VisualElement with backgroundMore flexible styling

Migration: UGUI still works, but UI Toolkit is recommended for new projects.


DOTS/Entities

DeprecatedReplacementNotes
ComponentSystemISystem (unmanaged)Entities 1.0+ complete rewrite
JobComponentSystemISystem with IJobEntityBurst-compatible
GameObjectEntityPure ECS workflowNo GameObject conversion
EntityManager.CreateEntity() (old signature)EntityManager.CreateEntity(EntityArchetype)Explicit archetype
ComponentDataFromEntity<T>ComponentLookup<T>Entities 1.0+ rename

Migration: See Entities package migration guide. Major refactor required.


Rendering

DeprecatedReplacementNotes
CommandBuffer.DrawMesh()RenderGraph APIURP/HDRP render passes
OnPreRender() / OnPostRender()RenderPipelineManager callbacksSRP compatibility
Camera.SetReplacementShader()Custom render passNot supported in SRP

Physics

DeprecatedReplacementNotes
Physics.RaycastAll()Physics.RaycastNonAlloc()Avoid GC allocations
Rigidbody.velocity (direct write)Rigidbody.AddForce()Better physics stability

Asset Loading

DeprecatedReplacementNotes
Resources.Load()AddressablesBetter memory control, async loading
Synchronous asset loadingAddressables.LoadAssetAsync()Non-blocking

Animation

DeprecatedReplacementNotes
Legacy Animation componentAnimator ControllerMecanim system
Animation.Play()Animator.Play()State machine control

Particles

DeprecatedReplacementNotes
Legacy Particle SystemVisual Effect GraphGPU-accelerated, more performant

Scripting

DeprecatedReplacementNotes
WWW classUnityWebRequestModern async networking
Application.LoadLevel()SceneManager.LoadScene()Scene management

Platform-Specific

WebGL

DeprecatedReplacementNotes
WebGL 1.0WebGL 2.0 or WebGPUUnity 6+ defaults to WebGPU

Quick Migration Patterns

Input Example

// ❌ Deprecated
if (Input.GetKeyDown(KeyCode.Space)) {
    Jump();
}

// ✅ New Input System
using UnityEngine.InputSystem;
if (Keyboard.current.spaceKey.wasPressedThisFrame) {
    Jump();
}

Asset Loading Example

// ❌ Deprecated
var prefab = Resources.Load<GameObject>("Enemies/Goblin");

// ✅ Addressables
var handle = Addressables.LoadAssetAsync<GameObject>("Enemies/Goblin");
await handle.Task;
var prefab = handle.Result;

UI Example

// ❌ Deprecated (UGUI)
GetComponent<Text>().text = "Score: 100";

// ✅ TextMeshPro
GetComponent<TextMeshProUGUI>().text = "Score: 100";

// ✅ UI Toolkit
rootVisualElement.Q<Label>("score-label").text = "Score: 100";

Sources:

Built with LogoFlowershow