Unity için Genel Bakış Türü Mini Harita Eğitimi

Oyun seviyeleri, basit 2 boyutlu seviyelerden, geniş alanlar ve koridorlara sahip daha karmaşık 3 boyutlu seviyelere kadar birçok şekil ve biçimde gelir.

Mini Harita, genellikle ekranın köşesine yerleştirilen ve oyuncuların oyun seviyesinde gezinmesine yardımcı olmak için sıklıkla video oyunlarında kullanılan minyatür bir haritadır.

Bu derste UI canvas kullanarak Unity'te dairesel bir mini haritanın nasıl oluşturulacağını göstereceğim.

Adımlar

Oynatıcı kontrol cihazı için bu FPS Kontrol Cihazını kullanacağım.

Mini harita oluşturmak için aşağıdaki adımları izleyin:

  • Sahneyi oyun seviyenizle açın
  • Yeni bir UI Canvas oluşturun (GameObject -> UI -> Canvas)
  • Kanvas -> Kullanıcı Arayüzü -> Resim'e sağ tıklayarak yeni bir Resim oluşturun
  • Aşağıdaki hareketli grafiği görsele atayın (Resmi indirmek için sağ tıklayın)

dairesel mini harita sınır tasarımı

  • Görüntü hizalamasını sol üste ve pivotu (0, 1) olarak değiştirin

  • Canvas -> UI -> Raw Image'a tıklayarak yeni bir Raw Image oluşturun (Raw Image'ın Hiyerarşide Radar Image'ın önüne yerleştirildiğinden emin olun, böylece arkada oluşturulur).

  • Yeni bir Kamera oluşturun, "Minimap_Camera" olarak adlandırın, oynatıcınızın üzerine yerleştirin ve aşağıya doğru tutun
  • Ses Dinleyiciyi şuradan kaldır: "Minimap_Camera"
  • Yeni bir İşleme Dokusu oluşturun (Proje görünümünde Oluştur -> İşleme Dokusu) ve adını verin "MinimapTexture"
  • Yeni oluşturulan İşleme Dokusunu "Minimap_Camera" Hedef Dokusuna atayın

  • Ham Görüntü Dokusuna "MinimapTexture" atayın

Şimdi görüntünün güzel bir şekilde kırpılması için bir karakter maskesi eklememiz gerekiyor:

  • Radar görüntüsünü çoğaltın
  • Çoğaltılmış görselin dokusunu aşağıdaki hareketli grafikle değiştirin (Resmi indirmek için sağ tıklayın):

gri daire şeffaf

  • Maske görüntüsüne Maske bileşeni ekleme

  • Ham Görüntüyü Render Dokusu ile maske görüntüsünün içine taşıyın

Son görüntü şimdi kırpılmalıdır:

Gördüğünüz gibi, mini harita Kamerası, oynatıcı ve dinamik nesneler de dahil olmak üzere haritayı olduğu gibi gösteriyor, ancak istediğimiz bu değil, herhangi bir dinamik nesne olmadan sadece haritayı göstereceğiz.

  • Haritanın üst görünümünün ekran görüntüsünü alın (Bunu yapmadan önce oyuncular, düşmanlar vb. gibi dinamik nesneleri devre dışı bırakın.)

  • Yeni bir Dörtlü oluşturun (GameObject -> 3D Nesne -> Dörtlü) ve bunu haritanın altına şu şekilde yerleştirin:

  • Ekran görüntüsünü Quad'a atayın ve malzeme Shader'ı şu şekilde değiştirin: "Unlit/Texture"
  • Quad'daki ekran görüntüsü konumunun haritayla eşleştiğinden emin olun:

  • Mini harita Dörtlü katmanını şu şekilde değiştirin: "UI"
  • "Minimap_Camera"'de Ayırma Maskesini şu şekilde değiştirin: "UI"
  • Başka bir Quad oluşturun ve onu "Minimap_Camera" nesnesinin içine taşıyın, ona aşağıdaki resmi atayın:

  • Arrow Quad'daki Shader'ı şu şekilde değiştirin: "Unlit/Transparent"

  • Ok Dörtlü katmanını şu şekilde değiştirin: "UI"

İşte nihai sonuç:

  • yeni bir komut dosyası oluşturun, onu "SC_MinimapCamera" olarak adlandırın ve içine aşağıdaki kodu yapıştırın:

SC_MinimapCamera.cs

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SC_MinimapCamera : MonoBehaviour
{
    public Transform target;

    float defaultPosY;

    // Start is called before the first frame update
    void Start()
    {
        defaultPosY = transform.position.y;
    }

    // Update is called once per frame
    void Update()
    {
        // Apply position
        transform.position = new Vector3(target.position.x, defaultPosY, target.position.z);
        // Apply rotation
        transform.rotation = Quaternion.Euler(90, target.eulerAngles.y, 0);
    }
}
  • SC_MinimapCamera komut dosyasını "Minimap_Camera" nesnesine ekleyin.
  • Oynatıcınızı SC_MinimapCamera'daki Target değişkenine atayın.

Mini harita artık hazır, onu kullanmak için seviyede dolaşmanız ve konum değişikliğini gözlemlemeniz yeterli.

Sharp Coder Video oynatıcı

Önerilen Makaleler
Unity Projeniz için Doğru Kılıç Modellerini Seçmek
Unity'de Prototipleme için Yer Tutucu Dokuların Gücü
Modüler Avlu - Sanal Ortamlar için Sağlam Bir Temel
Unity'nin Kullanıcı Arayüzü Sistemiyle Çalışmak
Unity için Bölünmüş Ekranlı Aynı Bilgisayar Çok Oyunculu Eğitimi
Unity için Ana Menü Eğitimi
Unity için Gece Görüşü Görüntü Efekti İşlem Sonrası Eğitimi