Advertisement
  1. Game Development
  2. Gamedev Glossary
Gamedevelopment

Oyun Geliştirme Terimleri Sözlüğü: ''Normal Map'' nedir?

by
Length:ShortLanguages:

Turkish (Türkçe) translation by Ece Karahan (you can also view the original English article)

Bu makalede, normal map'in ne olduğu ve neden her 3B oyun geliştirici için önemli ve kullanışlı bir yöntem olduğunu açıklayacağım. Ayrıca, bazı örneklerle birlikte bunları oluşturmak için gerekli birkaç mükemmel aracı da paylaşacağım.

Normal Map Nedir?

2B texture map, renk, transparanlık, parlaklık, yansıma ve yüksek detaylar gibi belli özellikleri uyguladığınız ya da değiştirdiğiniz herhangi 3B bir objenin çevresini sararak, uygulandığı 3B objede yüksek düzeyde ayrıntı elde etmenizi sağlayan bir görseldir.

3B sanatçılar için en faydalı maplerden biri normal map'tir.  Bump map kullanımındaki gibi siyah ve beyaz renk dağılımı yerine, normal map kırmızı, yeşil ve mavi renklerini içerir.  Bu RGB değerleri; derinlik oluşturmasını sağlayarak 2B görseli x, y ve z kordinatlarına çevirir. Bu şekilde, bir 3B uygulaması, 3B koordinatıyla ilişkili rengi temel alarak aydınlatma detaylarını taklit edebilir.

İşte normal mapin, 3B bir modele uygulanmadan 2B görsel olarak nasıl göründüğüne bir örnek:

NdoBox

Normal Map Neden Kullanılır?

Bellek Koruma

Video oyunları için 3B öğeler oluştururken, esasında 3B modelinizin ne kadar karmaşık olabileceğini sınırlandıran ''Poligon Limiti'' veya ''Poligon Bütçesi'' denilen şeye sahipsinizdir.

Poligon bütçeleri 3B oyununuzu nispeten küçük dosya boyutlarında tutmanızı gerektirir; karmaşık 3B modeller büyük miktarda alan kaplayabilirler.  Normal map; istediğiniz türde ayrıntılara sahip karmaşık 3B modeller gibi görünen öğelere sahip olabilirken, dosya boyutunuzu bütçeniz dahilinde tutmanıza izin verir.

Örneğin, bu öğenin 3B modeli çok basit bir küp, üstüne normal map eklenerek, çok daha karmaşık bir şekildeymiş gibi görünüyor.

NormalMappedBox

Civatalar ve ''Normal Maps'' sözcükleri düz yüzey üzerine basitçe boyanmış gibi görünmüyorlar.

Gerçekçilik

Normal Map, temel bir 3B uygulamasında (Maya, 3Ds Max, Cinema 4D) normalde yapmakta zorlanacağınız çeşitli detayları elde etmek için kullanılır. Normal mapler oluşturan çok çeşitli program türü vardır ama bunların hepsi daha yüksek detaylar sağlar.

Normal map'ler sahnenin ışıklandırmasından etkilenir, bu şekilde ihtiyaç duyduğunuz yerde ayrıntılar üzerinde oynamak kolaydır. Bu, bir yüze kırışıklıklar uygulamak veya yukarıdaki örnekte olduğu gibi metal nesneye cıvata ve çizikler eklemek için kullanılabilir.

Yüksek Poligondan Düşük Poligona

Yüksek poligonlu (yani oldukça karmaşık) 3D modellerin genelde çok fazla ayrıntıları vardır, ancak çok fazla bellek tüketebilirler. Sanatçıların eğilimleri düşük polygon modelleri kullanmaktır ve ayrıntıyı geliştirmek için normalleri uygularlar; bu, dosya boyutunun nispeten küçük kalmasını sağlar.

Yüksek polygonlu modeller aslında düşük polygonlu versiyon için kullanılabilen normal mape dönüştürülebilir. Bu, oyun şirketleri çok detaylı karakterler ürettikleri ve mümkün olduğunca çok ayrıntıyı korumak istedikleri zaman çok olur.

Bu örnekte, yüksek poligon modelini normal map ile düşük poligon bir modele dönüştürme işlemini göreceksiniz. Görüntüleri gezerken her bir resimdeki poligonların sayısına dikkat edin.

HiPolyTOLowPoly01
Orijinal yüksek poligon modeli
HiPolyTOLowPoly02
Düşük poligonlu model
HiPolyTOLowPoly03
Normal map (yüksek poligonlu modelden oluşturulan) uygulanmış düşük poligonlu model

Zaman Verimliliği

Normal map kullanmak, üzerinde çalıştığınız projenin türüne bağlı olarak size çok zaman kazandırabilir. Kutuyla birlikte verilen örnekte tüm yaptığım, bir 2B normal map üretmek ve onu kutuya koymaktı. Eğer aynı proje için her bir nesneyi yaratacak olsaydım, daha uzun sürerdi.

Ayrıca, sahnedeki daha fazla 3B nesneyle, daha fazla bellek gerekecektir. Şimdi, karakterler gibi daha fazla organik işler için bunun harcadığım zamanı büyük ölçüde azaltacağını söyleyemem, ancak sert yüzeyli nesneler için gerçekten yardımcı oluyor. Öğelerde daha az zaman harcarken yeni şeyler denemek için daha fazla esnekliğe sahip olursunuz.

Endüstri Standartı

Yüksek detaylı bir oyun görürseniz, onların normal map kullandığını neredeyse garanti edebilirim.

Daha önce, 3B öğeleri oluştururken kullanılan birçok texture mapin, en değerli olanın renk haritası ve normal harita olduğundan bahsettim. İnsanlar sürekli olarak daha iyi görünen şeyleri istemekte oldukları için, kendilerini daha fazla ayrıntı gerekliliğinin içinde bulurlar. Bu daha karikatürsel olan ve el çizimi gölgeleme gibi teknikleri kullanan oyunlar için geçerli olmayabilir, ancak AAA başlık oyunlarında bunları kullandığına bahse girebilirsiniz.

Nasıl Normal Map Oluştururum?

Normal map yapmak veya üretmek için kullanabileceğiniz birçok araç vardır:

CrazyBump

CrazyBump, fotoğraflardan, height maplerden (gri tonlamalı olan) veya diğer normal maplerden normal mapler üretir. CrazyBump ile normal değerlerinizi referans görüntüden daha fazla veya daha az ayrıntı gösterecek şekilde ayarlayabilirsiniz.

CrazyBump

xNormal

XNormal, yüksek poligonlu ve düşük poligonlu 3B modellerden normal mapler üretir. Zbrush gibi bir 3B heykel uygulamasına başlamak istiyorsanız bu gerçekten harika ama yine de modelinizin poligon bütçeniz dahilinde olmasını istiyorsunuz.

Yukarıdaki 3B karakter için normal map oluşturmak amacıyla xNormal kullandım.

xNormal

nDo2

nDo2, seçimler ve diğer özellikleri kullanarak normal oluşturmanıza olanak tanıyan bir Photoshop eklentisidir. Photoshop araçlarının esnekliği ile birlikte, CrazyBump ile aynı işlevselliği içerir.

Civatalı kutuyu yapmak için nDo2 kullandım.

NDO2

Photoshop

Photoshop, farklı renk kanallarını (R,G,B) kullanarak normal mapi manuel olarak boyamak için kullanılabilir.

Bu tekniği sıfırdan yapmak çok zordur, bu nedenle sanatçılar genellikle başka bir program tarafından oluşturulan bir map üzerinde ufak değişiklikler yapmak için yalnızca Photoshop kullanır. Normallerinizi oluştururken rastgele nesneler varsa, sorunları manuel olarak düzenlemek için Photoshop'u kullanabilirsiniz.

İşte bu yüzden normalleri boyamak için Photoshop kullanmıyorum:

PhotoshopNormalExample
PhotoShopeExample

Normal mapping hakkındaki bu gönderiyi okuduğunuz için teşekkürler! Umarım çok şey öğrenmiş ve bunu yaparken eğlenmişsinizdir.

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.