Beyler uzun bir süredir forumdan uzağım ancak Alan Wake 2’nin çıkışıyla beraber projede çalışanların paylaşım yapma ambargosu kalkmış oldu, bu fırsat üzerine foruma uğrayıp paylaşım yapmak istedim. Alan Wake 2’nin geliştirme sürecine yaklaşık bir buçuk yıl önce katılma fırsatı buldum, ben ekibe katıldığımda yapım sürecinin ortalama yarısıydı. Yani projenin kabaca son 1 yıllık sürecinde çalışma fırsatı bulmuş oldum, ve oyun içerisinde oynanabilir alanlarda kullanılmak üzere pek çok farklı tip ve boyutlarda 3D Assetler hazırlamaktan sorumluydum. Aşağıda yapmış olduğum ve oyunu oynarken de karşınıza çıkacak olan bazı Assetleri paylaşacağım.
Yaptığım işler arasında büyük binalardan tutun küçük sokak lambalarına kadar, iç veya dış mekanlarda yeniden kullanılabilir olarak ayarlanmış kaplamalara ve irili ufaklı çevresel objelere kadar farklı tiplerde pek çok asset mevcuttur. Bu assetlerin çoğunluğu oyunun farklı bölgelerinde yeniden kullanılabilir tarzdadır.
Bu oyun için bize verilen grafik kalitesi kriterleri içerisinde bulunduğumuz nesilden bekleneni karşılamayı hedefliyordu. Gerek modelleme, gerek kaplama, gerekse shader/material oluşturma noktasında çok titiz çalıştık, hatta bazı durumlarda ince teknik detaylarda çok uzun uğraşlar verip detaylara gömülüyorduk. Ama işin sonunda gerçekten çok güzel grafikleri olan, görsel uyumu göz dolduran bir oyun çıkardık ortaya. Ben de bunun bir parçası olmaktan mutluyum, bu profesyonel bir ekip ile uzun süreli çalışma fırsatı bulduğum ilk 3A oyun geliştirme deneyimimdi. Daha öncesinde Destroy All Humans 2 Remake’de çalışmıştım ancak çok kısa süreliydi ve Alan Wake 2 kadar teknik bir proje değildi doğal olarak. Alan Wake 2 çok farklı bir tecrübe seviyesi oldu benim için.
-- Şu anda ise gelecek dönemlerde çıkarılacak olan yeni bir Call of Duty oyunu üzerinde çalışıyorum, bu ay başında yeni CoD projesinin geliştirme sürecine dahil oldum ve hiç şüphesiz oldukça uzun sürecek olan yapım süreci tamamlandığında, oyun esnasında bizzat göreceğiniz işlerimi paylaşmak için sabırsızlanıyorum. Tabi Allah ömür verirse o güne ömrüm vefa ederse. :) Ekipçe NDA gizlilik sözleşmesine tâbi olduğumuz için hiçbir paylaşımda bulunamıyorum doğal olarak.
Şimdi gelelim ana konuya, aşağıda göreceğiniz assetlerle Alan Wake 2’yi oynarken karşılaşacaksınız, pek çoğu büyük, kameraya yakın ve göz önünde olacakları için oynarken gözünüze çarpacaktır. Benim paylaşım için almış olduğum Render’lar Remedy’nin oyun motoru olan Northlight Engine’den değil, ben assetleri ayrıca Unreal Engine 5’e import edip oradan render aldım özel olarak paylaşım yapmak için. Burada göreceklerinizin haricinde irili ufaklı başka assetler de yapmış olsam da bunların geneli küçük ve odak dışı alanda kaldıkları için konuyu ekran resimlerine boğmadan, en genel çalışmalarımı paylaşıyorum.
Ama ilk olarak bitiş jenerğinde geçen ismimi paylaşıyorum, çünkü eminim burayı herkes skip'leyecektir. Resimler yüksek çözünürlüklü ancak forumda küçük görünecektir, üstlerine tıklarsanız gerçek boyutunda görüntülenir.
---------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------
NOT: Aşağıda göreceğiniz Post Office ve Bookstore isimli iki büyük bina, yanlarındaki demir çitler ve binaların üstlerindeki lambalar haricinde kalan ortam tasarımı Alan Wake 2’den değildir, bahsettiğim assetler haricindeki ortamı ise güzel bir render almak maksadıyla ben kendim tasarladım.
---------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------
BİLGİ: Aşağıdaki ahşap ve beton duvar/zemin/tavan kaplamaları oyunun her alanında yeniden kullanılabilir assetlere iyi bir örnektir. Bunlar birer 3D modelleme değil, yalnızca bu oyuna özel olarak oluşturduğum fotoreal Shader materyalleridir teknik anlamda. En kısa yoldan 2D kaplama olarak oyun motorunda bölümleri tasarlayan ekip tarafından uygun görülen her yerde kullanılabilir. Aynı anda bir ev duvarına da uygulanabilir, bir kafe veya dış mekânlarda duran binalara da uygulanabilir.
Bir oyun oynarken aynı assetlerin karşınıza defalarca çıkıyor oluşunun farkına pek varmazsınız, çünkü her mekânın kendine has bir ışıklandırması, sisli veya temiz bir atmosferi, kirli, dağınık veya derli toplu ortam tasarımları vardır. Bu tasarımlar, yeniden kullanılan assetleri gözünüze benzersiz gösterir, oysa ki bilhassa tekrar-tekrar kullanılmak üzere tasarlanmış olan assetlerle sık sık karşılaşırsınız, sadece çoğu kez bunu algılamazsınız.
UNREAL 5 ile Sci-Fi Oyun Ortamı
Bir şirket portfolyosu için istek doğrultusunda oluşturmuş olduğum Sci-Fi türündeki bu proje için, henüz Epic Games motorun nihai sürümünü yayınlamamış olsa da mevcut hali ile Unreal Engine 5 kullandım. Projenin bitişi ve onaylanmasının üzerine paylaşım yapıyorum.
Bu sahnenin aydınlatması için yeni nesil ışık motoru olan Lumen ile beraber RTX kullandım. Sıfırdan oluşturduğum için Lumen teknolojisi üzerine daha net bir analiz yapma fırsatım oldu. Her ne kadar RTX'in yerini çoğu zaman tutabilen ve performans bakımından da üstünlük sağlayabilen bir teknoloji olsa da, isabetlilik bakımından tam olarak RTX'i yakalayamadığını fark ettim. Ancak bu fark, özellikle de oyun oynarken farkına varılacak büyüklükte değildi.
Motor içerisinden alınan Renderlar, DH'de düşük çözünürlüklü ön izleme olarak görünüyor ancak üstüne tıklarsanız gerçek çözünürlüğünde görebilirsiniz:
Arkadaşlar kolay gelsin, bu defa iş bakımından farklı bir konu açıyorum. THQ Nordic ve Black Forest Games tarafından geliştirilen, yakında PC, PlayStation 5 ve Xbox konsollarına çıkacak olan Destroy All Humans 2: Reprobed, üzerinde benim de çalıştığım CGI fragmanı ile duyuruldu. Projede yer aldığım için paylaşmak istedim.
Şirketle Şubat ayından beri sözleşmeli - Freelance olarak çalışmaktayım. Oyunun resmi duyurusu yapıldığı için artık projede çalışan insanlar konu hakkında paylaşımda bulunabilirler, bu sebeple uzun süredir çalışıyor olsam da konuyu henüz yeni açabiliyorum. Geniş bir ekiple çalıştık, çoğunluğumuz Freelance olarak çalışıyor, Türkiye'den bir tek ben varım. Diğer arkadaşlarım çoğunlukla Avrupa ülkelerinden.
İlk olarak fragmanı bırakayım, ardından oyun için kullanılan Assetler arasından benim yaptıklarımın bazılarını paylaşacağım.
Oyun üzerinde çalışmalar devam ediyor ancak 2022 yılında çıkış yapması planlanıyor. Şu an size bahsedeceğim şey CGI fragman üzerindeki çalışmalarım. Benim görevim, aynı işi yapan ekip arkadaşlarımla birlikte San Francisco'nun bir caddesindeki Assetleri hazırlamaktı. Aşağıdaki resimde sarı renkle çarpı koyduğum Assetlerin tamamı bana ait olanlar. Ağaçların tamamı, bazı binalar, kaldırımlar, yollar vs.
Aşağıda ise sıra sıra bu Assetler'den paylaşım amacı ile kendi aldığım hızlı render'ları paylaşacağım.
----- Aşağıda paylaşacaklarım kendi kişisel paylaşımımdır, oyun içi görsellerden alınmış render'lar değildir. -----
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
==========================================================================================================
------ NOT: Bu aşağıdaki binanın yalnızca Texture çalışması bana aittir, 3D modellemesi Fabio Guedes'e aittir.
==========================================================================================================
==========================================================================================================
Sanırım şimdilik bu kadarı yeterli. İlerleyen dönemlerde Call of Duty türevlerine de imzamı atacağım Allah izin verirse. Ama tabi o dönem geldiğinde büyük ihtimalle vize sponsorluğu alıp yerinde çalışıyor olurum, bu aralar virüs dolayısıyla evden çalışma modeli oldukça yaygın bu sektörde ki böylesi çok daha iyi ve rahat.
Unreal Engine 5'in geliştiriciler için erken erişime açılmasıyla birlikte motoru indirip en belirgin özelliklerini bizzat test etmek istedim. Motorun yeni nesil halinin grafik & performans odaklı yaklaşımını normalde Epic Games kendi yaptığı açık dünya bir Demo oyun üzerinden PlayStation 5 ile oynatarak göstermişti. Epic'in demo sahnesi gerçek dünya'dan 3D Scan yöntemi ile kaydedilmiş, film kalitesinde Assetlerden oluşuyordu.
Ancak oyun geliştirirken her zaman Megascan Assetleri kullanmayız, oyunlarda genellikle kurgusal dünyalar oluşturulduğu için ve aynı zamanda benzersiz ortamlar inşa edilmek istendiği için, 3D sanatçılar yoğun olarak yapılacak oyuna özel sıfırdan Assetler hazırlarlar. Bu geleneğe uygun bir test olması için, daha öncesinde UE4 ile tamamını kendim yapmış olduğum kapalı mekanda geçen oyun ortamımda test ettim UE5'i. Ayrıca bu çalışmayı daha önce Gameplay videosu eşliğinde konu açıp paylaşmıştım, bunun hakkındaki detayları ve yapım aşamasına dair bilgileri görmek istiyorsanız burada konu linki mevcut:
https://forum.donanimhaber.com/korku-oyunu-cevre-tasarimi-tamamlandi-gameplay-ss--141897117
Orijinal hali UE4 olan sahnemi Unreal Engine 5’e convert edip, motor içerisindeki çeşitli render özellikleri üzerinden test ettim. Tecrübe ettiğim ana özellikler şunlar:
- Lumen Global Illumination
- Lumen Reflections
- Nanite
LUMEN GI VE LUMEN REFLECTIONS
UE5'in Lumen isimli ışık motorunun oluşturduğu farkı en iyi şekilde gözlemlemeniz için motor içerisinden video kaydettim. Aşağıdaki ilk video Lumen GI ile ilgili. Video’nun ardından resimler ile açıklama paylaşacağım.
Global Illumination, 3D ortamlarda Indirect Lighting olarakta bilinen, ışık fotonlarının bir yüzeye çarptıktan sonra, o yüzeyin üzerindeki Diffuse rengini alarak yüzeyden etrafa sıçraması ve bu foton sıçramaları esnasında renkleri yeniden tanımlanmış fotonlar ile etrafı aydınlatmasıdır temelde. Gerçek dünyada’da gölgeleri %100 olarak karanlık görmeyişimizin sebebi, ışık kaynağından yüzeylere direkt olarak çarpan fotonların, çarptığı objelerin üzerinden sekerek ışığın vurmadığı bölgelere saçılmasından kaynaklanıyor. Fotonlar bu şekilde davranmasaydı ışık vuran yeri aydınlık görürken, direkt olarak ışık vurmayan yerleri zifiri karanlık görürdük ve hayatımız zehir olurdu heralde. :) İşte 3D ortamda da bunun taklit edilmesine Global Illumination(GI) deniyor.
Şimdi aşağıdaki resimlerde yine video'da gördüklerinizi göreceksiniz, fark ettiyseniz kapağı farklı renklere sahip olan dolaba ve sarı renkteki duvara direkt olarak yansıttığım ışığın, Lumen GI teknolojisini kullanarak fotonların objelerin üzerinden etrafa saçılması ile oluşan aydınlanma etkisini görüyorsunuz. Ana ışık, vurduğu objenin üzerindeki Diffuse rengini alarak etrafa ikincil fotonlar şeklinde dağıldığı için, ortam genelinde objelerin üzerlerindeki renklerle oluşan bir aydınlanma olduğunu fark etmişsinizdir.
Normalde bu etkiyi Nvidia RTX ile de yakalamak mümkün, ancak Lumen ile aynı etkiyi elde ederken daha yüksek performans aldığımı fark ettim. Bu sebeple verimlilik anlamında Lumen GI, RTX GI'dan daha verimli teknoloji gibi duruyor şu an için.
======================================================================
======================================================================
LUMEN REFLECTIONS
Lumen Reflections’da Lumen GI’ın ikiz kardeşi diyebiliriz. Yine kendi sahnem üzerinden farkı en iyi şekilde gösterebilmek için video kaydettim. Daha sonrasında yine resimler üzerinden açıklayacağım.
Video’da da gördüğünüz gibi eski Screen Space Reflections’ın(SSR) yerini Lumen Reflections ile doldurduğum zaman, pürüzlü ve yansıtıcı yüzeylerde bile SSR’dan çok daha isabetli yansımalar elde ediyorum. Üstelik tıpkı RTX Reflections'da olduğu gibi, yansıyacak olan objelerin kamera kadrajına girmesine gerek yok, çünkü Lumen Teknolojisi de aynı RTX gibi bir teknoloji. Lumen, yapacağı hesaplamalarda Software RayTracing ve Signed Distance Field temeline dayanıyor.
Bir açıklama: Signed Distance Field ise Raymarch(Sphere Tracing) yöntemi ile kamera vektöründen her bir pixel için sahneye gönderilen ışınlar, çıkış noktasını ilk örnekleme noktası olarak baz alıp kendisi ile birlikte küre biçiminde ek bir ışın cinsi daha gönderiyor, bu küre biçimindeki örnekleyiciler bir objenin kameraya en yakın yüzeyi, en uzak yüzeyi ve arada kalan yüzeyler gibi derinlik mesafelerini ölçüp, yapılan ölçüm neticesinde elde edilen verilerin Fragmant Shader iş akışında istenilen şekilde işlenmesine olanak veriyor. Raymarch (Sphere Tracing) görsel betimlemesi şu şekilde:
Bu yöntem etkili bir şekilde ilk olarak PS4’e özel olarak çıkmış olan Horizon: Zero Dawn oyununda özelleştirilmiş Volumetric bulutları render etmek için kullanılmıştı. Ardından Red Dead Redemption 2’de de Volumetric bulutlar oluşturmak için kullanılmıştı. Genellikle Sis, Volumetric Light, Volumetric Bulut gibi hacimsel Atmosferik efektleri render etmek için Raymarching yöntemine başvuruluyor. RayTracing’den farklı bir çalışma şekli var ama temelde aynı mantığa sahipler. UE5’in Lumen teknolojisi de derinlik bilgileri için Mesh Distance Field yöntemi üzerinden veri ölçümü yaptığına göre, bu iş akışının kökeninde Raymarch (Sphere Tracing) teknolojisinden faydalandığını söyleyebiliriz.
======================================================================
======================================================================
NANITE
Son aşamada Nanite’den bahsedeceğim. Aşağıdaki video’da gördüğünüz gibi sahnem üzerinde tek bir obje var ve gereksiz seviyelerde yüksek Vertex sayılarına sahip olduğu için tek başına sistemi çökertmeye yeterli durumda. Daha önceki bir proje için direkt olarak ZBrush’tan Sculpt ettiğim bir modeldi, şu anki halinde ise bunu hiç optimize etmeden olduğu gibi UE5’e çıkardım Nanite ile sistem performansını ölçmek için. Ayrıca bu model için 4K kaplamalar hazırlamıştım. Modeli bu testteki hali ile ultra seviyelerde Tesellate edilmiş gibi düşünebilirsiniz, normal şartlarda Bake edilmiş Normal Map’ler ile elde edebileceğim bazı yükseklik verilerini direkt olarak 3D Mesh’in kendi üzerinde kullandım. Yani optimize edilmemiş ham 3D modelden bahsediyoruz.
Yüzeyinde Milyonlarca Vertex’e sahip olan modeli, video’nun ilk yarısında Nanite teknolojisine uyarlayarak kullandım ve FPS cinsinden performans sonuçlarını gösterdim. Video’nun diğer yarısında ise yine aynı objeyi hiç Nanite teknolojisine uyarlamadan olduğu gibi ham şekilde kullandım ve yine FPS değerlerini gösterdim. Nanite'in sistem performansına olan etkisini görmek için video'yu izleyin:
Sonuç şu ki Nanite ile gerçekten de yüzlerce milyonluk Vertex sayılarında bile minimum seviyede performans kaybı yaşıyorsunuz ve bu durum özellikle de oyun konsolları açısından çok büyük bir avantaj sağlamak anlamına geliyor. Nanite temel olarak şu şekilde işliyor:
- 3D obje bütünüyle analiz edilip hiyerarşik şekilde obje Triangle gruplarını barındıran kümelere bölünüyor.
- Render esnasında obje gerçek zamanlı olarak, önceki aşamada analiz edilmiş olan Triangle kümelerini baz alarak detay seviyesi düşürülmüş bir objeye dönüştürülüyor ancak bunu yaparken kamera açısını ve yakınlığını baz alıyor, yani detay seviyeleri görünülürlük oranına göre aşamalı şekilde düşürülüp kümeler kesiksiz şekilde birbirine bağlanıyor, böylece objenin 3D detaylarında bir bozulma ya da kusur hissettirmiyor.
- Objedeki bütün Mesh detaylarının bellekte saklanması yerine, sadece gerekli olan kısımlar detaylı biçimde bellekte tutuluyor.
- Ancak bu işlemi yaparken obje detaylarının gerektiği anda Stream edilebilmesi için, ana obje depolama ortamında saklanıyor ve hızlı bir biçimde işleme alınması gerektiği için iyi bir SSD kullanmak gerekiyor.
Ben 970 Evo Plus NVMe M.2 SSD kullanıyorum ve sonuçlar video’da gördüğünüz gibiydi. Bu tip bir data Streaming işlemi için PlayStation 5’in özelleştirilmiş SSD çözümü çok uygun. Bundan ötürü Epic Games, ilk sunumu PS5 üzerinde yapmaktan oldukça memnundu.
UE5’in Animasyon, Görsel Efekt ve ortam oluşturma teknikleri alanlarında da yenilikleri var ancak kısa süre zarfında her şeyin derinine inmek mümkün değil. En çok dikkatimi çeken ikincil özelliklerden biri Full Body IK oldu, karakterlerin 3D dünya ile olan hareket ve temas etkileşiminde yüksek isabetlilik oranı yakalanabiliyor yeni geliştirilen sistem ile. Artık UE5’in içerisinde Inverse Kinematic (IK) Rig oluşturup karakterleri hareket ettirmek mümkün.
Daha önceleri karakter modellerini Maya gibi 3D ortamlarda Rigleyip hiyerarşik kemik sistemi ile oyun motoruna atardık. Şimdi Rigleme sekansını motor içerisinde de detaylıca yapmak mümkün hale gelmiş. UE5’i erken erişim ile hızlıca da olsa test etmek çok güzel bir deneyimdi. Bu motor ile uzun vadeli keşifler yapmak ve yeni teknolojilerine adapte olmak da keyifli olacaktır. İlerleyen yıllarda farklı geliştiricilerle çok muazzam projelere imzalar atılacağını düşünüyorum. Sadece oyun değil, sinema sektöründe de kullanılabilecek bir oyun motoru bu.
Özel Modifiyeli AK-47 [Oyun Assetleri]
Arkadaşlar geçenlerde bir konu açmıştım The Last of Us oyunlarından esinlenerek yaptığım bir 3D oyun ortamıydı, aşağıdaki link o konuya ait. Bu konu ise onun tam olarak devamı, ortamın ikinci parçası yani.
https://forum.donanimhaber.com/the-last-of-us-benzeri-3d-cevre-calismasi--147143502
Üstteki linkten görmüş olduğunuz sahnedeki Karavanın iç kısmına da bir Workbench sahnesi yapıyordum, yani silah modifikasyonu yapılan basit bir masa. Asıl aktör silahın kendisi tabi.
Bu silah teknik olarak optimize edilmiş bir oyun objesi, sahne arkası paylaşımlarında yüksek ve düşük poligon versiyonlarından resim koyacağım. Üzerindeki Shader sistemi ve Texture çalışması yeni nesil oyun motorlarında render edilmeye uygun hazırlandı. Yani herhangi bir oyun motorunda buradaki ile aynı ışık şartları ve post efektler oluşturulursa resimlerde gördüğünüz grafiklerin aynısının gerçek zamanlı olarak işlenmesi mümkün.
Render'lar yüksek çözünürlüklüdür, ince detayları ve ayrıntıları görmek istiyorsanız resimlere tıklayıp zoomlayın.
===========================================
===========================================
===========================================
Bu tip bir çalışmayı THE LAST OF US 2'yi oynadığım ilk günden beri yapmayı düşünüyordum. Bunun başlıca sebebi TLOU 2'nin bana göre en güçlü yanının 3D çevre tasarımı olmasıydı. Mesleki bakımdan da tam olarak benim alanıma girdiği için bu oyunu oynarken sürekli duraksayıp etraftaki detayları incelerdim, yaptıkları işi teknik incelikleri bakımından izleye izleye ilerlerdim. Çok bilgili ve çok yetenekli bir teknik ekibin elinden çıktığı belli olan bir oyundu. 3D sanatlar bakımından söylüyorum bunu. Dolayısıyla oyundakiyle aynı tarzda alternatif olabilecek bir çevre inşa etmek istedim.
Tabi oyundan esinlendiğim için ona benzer bir ortam geliştirmeye çalıştım.
Ayrıca sahneyi son kullanıcıların bilgisayarlarında ya da konsollarda çalıştırmak gibi bir kısıtlamam olmadığı için sahnemdeki her şeyi, tüm ışıkları, tüm render efektlerini (gölgeler, AO, yansımaların tümü, Indirect (GI) aydınlatmaları vs) - özetle bütün render elementleri tamamen RayTracing tabanlıdır. Metod olarak ise PBR sistemine Texture & Shader'lar oluşturdum.
Render'lar yüksek çözünürlüklü olduğu için DH'de küçültülmüş olarak açılacaktır, üzerine tıkayıp Zoomlayarak gerçek çözünürlüğünde görebilirsiniz:
================================================
================================================
BONUS: Bu sahne karavanın iç kısmından, tam olarak kırık pencerenin arka tarafı. TLOU 2'de Workbench denilen silah upgrade masaları bulunuyordu, o mantıkla yaptım burayı. Henüz bu sahne üzerinde farklı açılar için çalışıyorum, bittikten sonra bu silah sahnesi için ayrı bir konu açacağım, çünkü bu kısım yapılan iş bakımından başlı başına ayrı bir proje büyüklüğünde:
==========================================================
==========================================================
==========================================================
|
|
|
Korku Oyunu Çevre Tasarımı - [Gameplay Video + SS]
|
Meslek: VFX / 3D (Game Assets) Artist
Artstation:https://www.artstation.com/evren01 |
Son Giriş: 10 ay önce
Son Mesaj Zamanı: 10 ay
Mesaj Sayısı: 2.696
Gerçek Toplam Mesaj Sayısı: 5.129
İkinci El Bölümü Mesajları: 149
Konularının görüntülenme sayısı: 177.367 (Bu ay: 518)
Toplam aldığı artı oy sayısı: 11.079 (Bu hafta: 0)
En çok mesaj yazdığı forum bölümü: Oyun