Skapa en enkel 2D-plattform i Unity
I den här handledningen kommer vi att skapa en grundläggande 2D-plattformsspelare i Unity. Detta kommer att innebära att skapa en spelarkaraktär som kan röra sig, hoppa och interagera med plattformar. Vi kommer också att lägga till några grundläggande spelelement som hinder och samlarföremål.
1. Konfigurera projektet
Låt oss börja med att skapa ett nytt Unity 2D-projekt:
- Öppna Unity och skapa ett nytt 2D-projekt.
- Gå till File > New Scene och välj 2D Mode.
- Spara scenen som MainScene.
2. Skapa spelarkaraktären
Vi kommer först att skapa en enkel spelarkaraktär med hjälp av en sprite och lägga till rörelsefunktionalitet:
- Högerklicka i Hierarchy-fönstret och välj Create Empty. Ge detta objekt ett namn Spelare.
- Lägg till en Sprite Renderer-komponent till Player-objektet genom att klicka på Add Component i Inspector.
- Välj en sprite att använda som karaktär, antingen genom att skapa din egen eller importera en 2D-tillgång från Unity Asset Store.
- Lägg till en Rigidbody2D och en BoxCollider2D till Player-objektet för fysik och kollisionsdetektering.
3. Att skriva Player Movement Script
Låt oss nu skriva ett manus så att spelaren kan röra sig och hoppa. Följ dessa steg:
- Högerklicka i Project-fönstret och välj Create > C# Script. Döp det till PlayerController.
- Bifoga det här skriptet till spelarobjektet genom att dra det från projektfönstret till spelaren i hierarkin.
Ersätt innehållet i skriptet med följande:
using UnityEngine;
public class PlayerController : MonoBehaviour
{
public float moveSpeed = 5f;
public float jumpForce = 7f;
private Rigidbody2D rb;
private bool isGrounded = true;
void Start()
{
rb = GetComponent();
}
void Update()
{
// Player movement
float moveInput = Input.GetAxis("Horizontal");
rb.velocity = new Vector2(moveInput * moveSpeed, rb.velocity.y);
// Jumping
if (Input.GetKeyDown(KeyCode.Space) && isGrounded)
{
rb.velocity = new Vector2(rb.velocity.x, jumpForce);
isGrounded = false;
}
}
private void OnCollisionEnter2D(Collision2D collision)
{
// Check if player is touching the ground
if (collision.collider.CompareTag("Ground"))
{
isGrounded = true;
}
}
}
4. Skapa plattformar och miljö
Nu kommer vi att skapa plattformar för spelaren att hoppa på:
- I hierarkin högerklickar du och väljer Skapa tom, och döp den sedan Plattform.
- Lägg till en BoxCollider2D och Sprite Renderer till plattformen.
- Välj en sprite för plattformen (t.ex. en platt rektangel).
- Duplicera plattformen genom att trycka på Ctrl+D (eller Cmd+D på Mac) och placera kopiorna för att skapa en nivå.
- Tagga dessa objekt som Ground i Inspector för spelarens hopplogik.
5. Lägga till hinder
För att göra spelet mer utmanande, låt oss lägga till några hinder:
- Skapa ett annat tomt GameObject och namnge det Obstacle.
- Lägg till en BoxCollider2D och Sprite Renderer till detta objekt.
- Välj en sprite för hindret (t.ex. en spik eller fara).
- I spelarens OnCollisionEnter2D metod kan du upptäcka kollisioner med hinder och starta om spelet eller dra av hälsa.
6. Lägga till samlarföremål
Vi kan också lägga till samlarföremål, som mynt eller power-ups:
- Skapa ett annat tomt GameObject och namnge det Collectible.
- Lägg till en CircleCollider2D (ställ in den som en trigger) och en Sprite Renderer för att representera samlarobjektet.
- Skriv ett enkelt skript för att upptäcka när spelaren hämtar ett föremål:
using UnityEngine;
public class Collectible : MonoBehaviour
{
private void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Player"))
{
// Add points or other effects here
Destroy(gameObject); // Remove the collectible from the scene
}
}
}
7. Testa och finjustera spelet
Nu när grundmekaniken är på plats kan du testa spelet genom att trycka på Play-knappen. Prova att justera följande:
- Ändra värdena moveSpeed och jumpForce för att justera hur snabbt spelaren rör sig och hoppar.
- Duplicera plattformar och hinder för att skapa olika nivåer.
- Lägg till bakgrundselement eller dekorationer för att göra spelet visuellt tilltalande.
8. Förbättra plattformen
För att ta ditt plattformsspel till nästa nivå, överväg att lägga till:
- Animationer för spelaren, till exempel promenader och hoppande animationer.
- Ljudeffekter för att hoppa, samla föremål och stöta på hinder.
- En kamera som följer spelarens rörelser för en mer dynamisk bild av spelet.
Slutsats
Med denna enkla 2D-plattformsinstallation har du nu en grundläggande spelstruktur som kan utökas med fler funktioner, nivåer och polering. Experimentera med olika mekaniker och skapa ditt eget unika plattformsspel.