İçeriğe geç

2D Sprite’lar için Normal Map Oluşturucu

Düz sprite’lara 2D ışıklar altında derinlik kazandır. Bir sprite bırak, önizlemede ışığı üzerinde gezdir ve Godot ile Unity’nin olduğu gibi okuduğu bir normal map indir. Hiçbir şey cihazından çıkmaz.

Cihazında oluşturulur. Görsellerin asla yüklenmez.

  • Asla yüklenmez
  • Canlı ışık önizlemesi
  • Birçok görsel aynı anda

Nasıl çalışır

Bir sprite’tan normal map nasıl çıkarılır

  1. 1. adım: Sprite’ını ekle

    Bir sprite, karo ya da doku seç, bırak ya da yapıştır. Bütün bir klasör de olur.

  2. 2. adım: Kabartmayı biçimlendir

    Derinliğin nereden geleceğini ve ne kadar güçlü olacağını seç; ışığın nasıl düştüğünü görmek için imleci önizlemenin üzerinde gezdir.

  3. 3. adım: PNG'yi indir

    Map, motorların sprite ile eşleştirdiği adla, ad_n.png olarak ve sprite’ın kendi boyutunda kaydedilir.

Normal Map Oluşturucu

Işığa tepki veren 2D sprite’lar

  • Çalışırken aydınlatılır

    Önizleme, sprite’ı kendi normal map’iyle aydınlatır; mor bir resmi değil, sonucu değerlendirirsin.

  • Şekilden ya da parlaklıktan derinlik

    Düz renkli bir sprite’ı dış hattından yuvarlat, bir dokunun kabartmasını açık ve koyusundan oku ya da ikisini karıştır.

  • Motoruna uygun

    Godot ve Unity için yeşil yukarı, Unreal için ters çevrilmiş; sprite’ın saydamlığı korunur.

  • Asla yüklenmez

    Her şey tarayıcında gerçekleşir; resimlerin cihazında kalır.

Ayrıntılı olarak

2D oyunlar için normal map’ler

Normal map ne yapar

Sprite düzdür; bu yüzden 2D oyundaki bir ışık onu çıkartma gibi her yerinden eşit aydınlatır. Normal map, aynı boyutta ikinci bir görseldir ve renkleri her pikselin hangi yöne baktığını söyler. Onunla motor, sprite’ın lambaya bakan yanını aydınlatır, diğer yanını gölgeler.

Hiçbir çizim bu bilgiyi taşımaz, bu yüzden tahmin edilmesi gerekir. Bu araç her piksel için bir yükseklik tahmin eder ve o yüksekliğin eğimlerini map’e dönüştürür.

Derinliğin nereden geleceğini seçmek

  • Şekil, sprite’ı dış hattından ortaya doğru yuvarlatır. Parlaklığın derinlik hakkında pek bir şey söylemediği, düz renklerle çizilmiş karakter ve nesnelere uygundur.
  • Parlaklık, açık pikselleri yüksek, koyu pikselleri alçak sayar. Dokulara uygundur: taş, tuğla, ağaç kabuğu, zemin karoları.
  • İkisi de, ikisini karıştırır ve çoğu sprite için en iyi başlangıçtır.
  • Güç ve düzgünleştirme: daha derin gölgeler için gücü, daha yumuşak ve yuvarlak ışık için düzgünleştirmeyi artır. Yuvarlaklık, yüzeyin dış hattan içeri doğru ne kadar yükselmeye devam edeceğini belirler.

Map’i motorunda kullanmak

Godot’ta bir CanvasTexture oluştur, sprite’ı Diffuse’a, map’i Normal Map’e koy ve sahneye bir PointLight2D ya da DirectionalLight2D ekle. Unity’de map’i Sprite Editor’da _NormalMap adlı ikincil doku olarak ekle ve sahneyi Universal Render Pipeline’ın 2D ışıklarıyla aydınlat.

İkisi de yeşili yukarı olarak okur; map de böyle kaydedilir. Yeşili aşağı okuyan Unreal gibi motorlar için Yeşil kanalı ters çevir’i aç.

Normal Map Oluşturucu

Sık sorulan sorular

Görsellerim bir yere yükleniyor mu?

Hayır. Her şey tarayıcında, kendi cihazında çalışır. Görsellerin Moriqa'ya ya da başka birine asla gönderilmez; sayfayı kapattıktan sonra hiçbir şey saklanmaz.

Bir sprite’tan nasıl normal map çıkarırım?

Sprite’ı ekle, derinliğin nereden geleceğini seç, aydınlatılmış önizlemeye bak ve PNG’yi indir. Sprite ile aynı boyuttadır.

Normal map neden mor ve mavi?

Renkleri renk değil, yöndür: kırmızı soldan sağa, yeşil yukarı aşağı gider, mavi ise izleyene bakar. Düz bir yüzey o bildik açık mor olarak çıkar.

Piksel sanatında işe yarar mı?

Evet. Map, sprite’ın tam boyutunu ve sert kenarlarını korur. Net ve iri görünüm için düzgünleştirmeyi düşük tut, daha yumuşak ışık için artır.

Üretilen map elle boyanmış kadar iyi mi?

Hayır. İyi bir başlangıç noktasıdır; eşyalar ve karolar için çoğu zaman yeterlidir. Ana karakterde çizerler map’i genellikle elle düzeltir.

Yeşil kanalı ters çevirmeli miyim?

Godot ya da Unity için hayır. Yalnızca ışık yukarıdayken aşağıdan geliyor gibi görünüyorsa çevir; bu, motorunun yeşili ters okuduğu anlamına gelir.

Önce sprite mı lazım?

Sprite çizip canlandırmak için Moriqa’nın piksel sanatı editörünü aç; tarayıcında, ücretsiz.