Player Death In Unity: Best Beginners Guide

Player death in unity is an important part of many games since it provides challenge and consequence to the gameplay. In this article, we’ll look at how to create player death logic in Unity 2D with basic yet effective ways. We’ll concentrate on developing a spike object that causes a death animation when the player collides with it.

player death in unity

Player Death Logic In Unity:

1. Setting Up the Spike Obstacle

To begin, we’ll construct a spike GameObject and attach a box collider to it. Make sure the collider is the right size for your game, then identify the spike as “bad”. This tag will help us detect collisions with the player.

assign tag and add collider

2. Creating the Death Animation

Create a death animation for your player character. Once built drag and drop the animation onto the player’s GameObject. When the player is confronted with a fatal predicament, this animation will play.

create player death animation

3. Configuring the Animator

Open the Animator window and add a transition from any state to the death animation. Make sure to create a “death” trigger parameter in the Animator. This trigger will launch the death animation.

Create parameter named “death” of type trigger

And then set the transition condition to death trigger.

Add the trigger Into conditions

Learn More About The Unity Animator Here

4. Implementing PlayerDeath Script

Now, build a script called PlayerDeath and attach it to the player GameObject. Declare and assign variables for the Animator and Rigidbody components in the Start function.

using UnityEngine;

public class PlayerDeath : MonoBehaviour
    private Animator anim;
    private Rigidbody2D rb;

    void Start()
        anim = GetComponent<Animator>();
        rb = GetComponent<Rigidbody2D>();

    // The Death() Function Will Be Written Here

5. Handling Collisions

Use the OnCollisionEnter2D method in the PlayerDeath script. Check whether the collided GameObject has the “bad” tag (given to the spike). If true, call the Death function.

void OnCollisionEnter2D(Collision2D collision)
    if (collision.gameObject.CompareTag("bad"))

6. Implementing the Death Function

Define the Death function to trigger the death animation, set the Rigidbody2D body type to Static (making the player immobile), wait for one second which will add a bit time for the player to see that he has collided with a spike, and then restart the level to complete the process of player death in unity.

using UnityEngine.SceneManagement;

void Death()
    rb.bodyType = RigidbodyType2D.Static;
    Invoke("RestartLevel", 1f);

void RestartLevel()
    // Get the current scene index
    int currentSceneIndex = SceneManager.GetActiveScene().buildIndex;

    // Reload the current scene

Learn To Make Collectables For Your 2D Platformer From Here

You Might Ask

How do I implement player death logic in Unity 2D?

First, create a spike object, assign a “bad” tag to the spike game object then in the player’s script add the logic that when you collide with a gameobject with “bad” tag, restart the level.

What components are essential for Unity 2D player death implementation?

Understanding key features such as spike GameObjects, death animations, Animator, and Rigidbody components is essential for a smooth player death experience.

Can I customize the player death logic for my Unity game?

Yes, discover how to customize the player death process to fit your game’s theme and requirements, adding a personal touch to improve the gaming experience.

How does the script for player death work in Unity?

It check if the player collided with a GameObject that might have a “bad” tag assigned, then if it does have a bad tag then the player dies and the level restarts, else nothing happens related to player death in unity.

Is testing player death logic important in Unity game development?

Absolutely! Understand the importance of rigorous testing to guarantee that your player death logic runs smoothly, resulting in a polished and entertaining gaming experience.


Congratulations! You’ve successfully implemented player death in Unity 2D. By adding a spike obstacle, a death animation, and the Animator and Rigidbody components, you’ve contributed an important gameplay element to the event of player death in Unity. Feel free to customize and expand on this base to improve your game even further.

Remember to thoroughly test your game to ensure that the player death in Unity works as expected. Enjoy game development in Unity and build immersive gaming experiences!