Torque Game | 3. Aşama Karakter Değiştirme

UPBGE oyun motoru ile yapımına devam ettiğim bilgisayar oyununun bu aşamasında karakter değişimini yapmaya çalıştım.


İndir “UPBGE Torque Game | Step 3” Torque_Game_3.rar – 14 defa indirildi – 24 MB


LICENSE TERMS / LİSANS KOŞULLARI


Hami Cihat SERTCAN isimli yazarın UPBGE Torque Game başlıklı eseri bu Creative Commons Atıf 4.0 Uluslararası Lisansı ile lisanslanmıştır.
https://hamisertcan.com/2020/06/09/torque-game-1-asama-temel-karakter-hareketleri/ bağlantısındaki esere dayalı olarak.


Bu oyunun yapımı hakkında yazdığım ilk yazımda oyun içerisinde farklı özelliklerde karakterler olacağını ve bu karakterleri gerekli yerlerde değiştirerek oyunu tamamlamaya çalışacağımızı yazmıştım. Bu kapsamda üç farklı karakter belirledim. Karakterlerin en temel farklılıkları ağırlıkları.

Ana karakterin mesh yapısı

Blender da kullanılmak üzere bazı temel objeler mevcut bunlardan birisi de sphere olarak adlandırılan küre objeler. Benim ana karakterimde bir küre. Ancak ben ana karakter olarak bu küre objesini kullanmadım. Onun yerine bir küpün yüzeylerini subdive ettim daha sonra elde ettiğim objeyi ise blender komutlarında to Sphere komutu ile küreye çevirdim. Direk eklenebilen kürenin üst ve alt kısımlarında sert köşeler oluşurken bu yöntemde elde edilen kürenin hiçbir sert köşesi olmuyor. Ayrıca kaplama koordinatları da diğer küre objesine göre daha iyi oluyor.

Karakter için hazırladığım materyaller

Oyunu yaparken dikkat etmeye çalıştığım hususlardan birisi de oyun yapımı sürecinde blender kullanma kabiliyetlerimi geliştirmek. Bu kapsamda hazır şeyler (modeller, dokular, kodlar vs.) kullanmamaya gayret ediyorum. Mümkün olan her şeyi kendim yapmaya çalışıyorum. Objeler için kullanacağım dokuların çoğunu da kendim hazırlıyorum. Daha önceki yazılarımda bu konu hakkında yaptığım birkaç çalışmayı paylaşmıştım. Merak ediyorsanız buradan ulaşabilirsiniz.

Açıklama videosunda da görebileceğiniz üzere ana karakter için hazırladığım materyaller, ilgili dokuyu üretiyorlar. Daha sonra bu dokuları bake edip karaktere bake edilmiş dokuları kaplıyorum. Bu yöntemin en büyük avantajlarından biri karakter üzerinde herhangi bir doku birleşim noktası oluşturmuyorlar. Doku tam anlamıyla kesintisiz şekilde objeyi sarıyor.

Karakter değişim mantığı

Aslında tam olarak karakteri değiştirmiyorum. Yani obje hala aynı obje ancak objenin materyalini değiştiriyorum. Ayrıca materyal değişimi ile birlikte hazırladığım kod objenin bazı temel özelliklerini de değiştiriyor. Değişim işleminde kilit özellik karakterin ağırlığının değişimi. Ağırlık değişimi sayesinde birçok farklı aksiyon elde etmem mümkün olacaktır. Örneğin hafif obje bazı yerlerdeki hava akımlarından etkilenebilecek, ya da oyun içerisinde konuşlandıracağım bazı engeller daha ağır olan metal karakterle yıkılabilecek.

Karakter değişimi için hazırladığım düğüm

Videoda gösterdiğim ve karakter değişiminde kullandığım düğüm temel olarak bir noise texture dan elde edildi. Bir takım math düğümleri sayesinde noise texture un 1 ile 0 aralığındaki yapısını 3 parçaya ayırdım. Mix node düğümlerinin alpha soketlerine bu parçaları bağlamak suretiyle de birinci materyali, ikinci materyali ve son olarak iki materyalin birleşim bölgesindeki emit materyalini birbirlerinden ayırdım.

Oyun içerisinde materyal geçişlerini sağlamak için de bu düğüme ve temel materyalleri birbirlerine bağlayan mix shader ların karışım miktarlarına keyframeler atadım ve hazırladığım kod ile bu animasyonların çalışmasını sağladım.

Bir cevap yazın