1 puan yazan GN⁺ 2023-07-07 | 1 yorum | WhatsApp'ta paylaş
  • Godot 4.1, 4.0'dan 4 ay sonra gelen artımlı bir sürüm olarak kararlılık, performans ve olgunluğu iyileştirirken AI navigasyon kaçınması ve ayrılabilir kod düzenleyici gibi özellikler ekliyor
  • Bu sürüm, Godot 4 kullanımı sırasında bildirilen veya 4.1 ön sürümlerinde bulunan 900'den fazla sorunu düzeltti ve 300'den fazla katkıcının gönderimleriyle hazırlandı
  • Performans iyileştirmelerinde en büyük değişiklik, alt düğüm ekleme ve kaldırma işlemlerinin hızlı hash map tabanlı bir yapıya geçirilmesi; bu, karmaşık projeleri hızlandırırken bazı nadir işlemler ve Node bellek kullanımı için bir maliyet yaratıyor
  • Script yazımı ve editör iş akışı, GDScript statik değişkenleri, C# [GlobalClass], GDExtension genişletmeleri ve ayrılabilir script düzenleyiciyle genişliyor
  • 4.0 projelerini 4.1'e taşımak genel olarak güvenli, ancak C# ve GDExtension kullanıcılarının önce uyumsuzluk olasılıklarını ve port etme / yeniden derleme gereksinimlerini kontrol etmesi gerekiyor

Godot 4.1 sürümüne genel bakış

  • Godot 4.1, Godot 4.0'dan sonra 4 aylık bir çalışmanın ürünü olan bir güncelleme ve 4.0'ı sık artımlı sürümlerle geliştirme yönünü sürdürüyor
  • Bu sürümün odağı kararlılık, performans ve son rötuş kalitesi, ancak yeni özellikler de içeriyor
    • Geliştirilmiş AI navigasyon kaçınması
    • Kod düzenleyiciyi ayırıp başka bir ekrana yerleştirme özelliği
  • Kullanıcıların Godot 4 kullanırken bildirdiği veya 4.1 ön sürüm testlerinde keşfedilen 900'den fazla sorun giderildi
  • 4.0 ile yapılmış çoğu oyun ve uygulama 4.1'e nispeten güvenli şekilde taşınabilir
    • C# ve GDExtension kullanıcıları bazı uyumsuzluklar beklemeli
    • Taşımadan önce yedek alınması gerekiyor ve Git gibi bir sürüm kontrol sistemiyle proje durumunu commit etmek öneriliyor
    • Migrasyon rehberi hazırlanıyor
  • Godot 4.1, indirme sayfasından edinilebilir

Topluluk katkısı ve geliştirme finansmanı

  • Godot, bireysel katkıcıların motoru geliştirmeye katıldığı topluluk temelli bir proje
  • Son yıllarda kullanıcılar ve şirketlerin bağışları sayesinde bazı kilit katkıcılar tam zamanlı istihdam edildi ve bu da hızlı sürüm döngüsünü mümkün kıldı
  • Şu anda aylık giderler, aylık bağışlardan yüksek; bu nedenle geliştirme finansmanı hâlâ büyük tek seferlik şirket bağışlarına bağımlı
  • Godot 4 güncelleme hızını korumak ve daha fazla katkıyı inceleyecek bakım geliştiricileri işe almak için daha fazla aylık bağış gerekiyor
  • Maddi destek dışında projeye farklı yollarla katkı sunmak da mümkün
    • Ayrıntılı hata raporları yazmak
    • Kod tabanına katkı vermek
    • Dokümantasyon yazmak
    • Resmî dokümanlarda veya kişisel web sitelerinde rehberler hazırlamak
    • Topluluk platformlarında soruları yanıtlayıp ipuçları paylaşmak
  • Bu sürüm, 300'den fazla katkıcının gönderimleriyle hazırlandı ve hata düzeltmeleri ile iyileştirmelerin tam listesi interactive changelog üzerinde görülebilir

Performans iyileştirmeleri

  • Godot oyunları, oyun varlıklarının temel yapı taşı olan düğüm ağaçları ile oluşturulur ve düğüm ekleme ile kaldırma motor içinde çok sık gerçekleşen işlemlerdir
  • 4.1'de alt düğüm ekleme ve kaldırma algoritması hızlı hash map tabanlı bir yapıya taşınarak bu işlemler birkaç kat daha hızlı hâle getirildi
    • Nadir bazı düğüm işlemleri biraz daha yavaş oldu
    • Temel Node sınıfının bellek kullanımı %10 arttı
    • Özellikle çok yoğun düğüm manipülasyonu içeren karmaşık projelerde önemli fayda sağlıyor
  • Sahneler için deneysel multithreading eklendi
    • Yeni düğüm özellikleriyle düğüm işleme biçimi sıralı veya paralel olarak kontrol edilebiliyor
    • Hâlâ deneysel bir özellik olduğundan uç durumları bulmak için kapsamlı test gerekiyor
    • Production kullanım önerilmiyor
  • Çok iş parçacıklı yüklemede de birçok sorun ve kısıt düzeltildi
  • Vulkan renderer'a pipeline cache eklendi
    • Mevcut shader cache, shader derleme takılmalarını azaltmıştı ancak pipeline derlemesi yine de takılmalara ve yavaş yükleme sürelerine neden olabiliyordu
    • Pipeline derleme kaynaklı takılmalar tamamen çözülmüş değil, ancak RenderingDevice tabanlı rendering backend'lerde yükleme süreleri biraz azalabilir
    • Bu önbellek proje ayarlarından kapatılabilir ve Godot 4.1'de varsayılan olarak etkin
    • Tüm duraksama nedenlerini çözmediği için çalışma gelecek sürümlerde de sürecek

Çekirdek motor değişiklikleri

  • Godot ile model içe aktarırken modelin arkaya dönük gelmesi sık karşılaşılan bir sorundu
  • 4.1'de bu sorunu azaltmak için çeşitli değişiklikler yapıldı
    • Editörde ön/arka kamera yönleri değiştirildi
    • look_at() fonksiyonuna, kameranın -Z ekseni yerine model uzayını ileri yön referansı olarak kullanan bir argüman eklendi
    • Bu değişiklik, eski path-following hatalarının düzeltilmesine de yardımcı oluyor
  • Godot 4'e frame delta smoothing eklendi
    • Hareket akıcılığını belirgin biçimde iyileştirip daha pürüzsüz oynanış sağlayabiliyor
    • Varsayılan olarak etkin
    • Yalnızca VSync açıkken çalışıyor

Script geliştirmeleri

  • GDScript

    • Daha önce aynı scriptin birden çok instance'ı arasında veri paylaşmak için resource veya autoload kullanmak gerekiyordu
    • Godot 4.1 ile birlikte statik değişkenler oluşturulup kullanılabiliyor
    • Statik değişkenler veriyi her instance'ta değil sınıfta tutar ve aynı sınıfın tüm instance'ları bu değeri paylaşır
    • Scriptin en üstündeki değişken tanımının önüne static anahtar sözcüğü eklenerek kullanılır
    • Godot 4 ile eklenen adlandırılmış sınıf dokümantasyonunun otomatik üretilmesi de geliştirildi
    • Enum'lar artık tür olarak ele alındığı için üretilen dokümantasyon daha doğru oluyor
    • Yalnızca değişken veya fonksiyon tanımlarının üstünde kullanılan docstring'lere ek olarak satır içi docstring de kullanılabiliyor
  • C#/.NET

    • Bu sürümde C# tarafındaki odak, GDScript ile özellik eşdeğerliğini artırmak
    • GDScript'te scriptlere genel sınıf adı eklenerek editörde kullanılacak yeni düğüm türleri tanımlanabiliyordu
    • Godot 4.1 ile C# tarafında da dosyaya [GlobalClass] özniteliği eklenerek aynı şey yapılabiliyor
    • [Icon] özniteliğiyle genel sınıfa özel bir ikon da atanabiliyor
    • Ancak 4.1 itibarıyla C# ile yapılmış projeler hâlâ mobil ve web platformlarına export edilemiyor
    • Destek çalışmaları sürüyor
    • Bu kısıtın çözümü büyük olasılıkla 2023 sonundaki .NET 8 sürümüne bağlı
    • Mobil ve web platform desteği üzerindeki gerçek çalışmalar 2023'ün ikinci yarısında ancak ciddi biçimde başlayabilir
  • GDExtension

    • Godot, motoru yeniden derlemeden C++ gibi düşük seviyeli dilleri oyun script dili olarak kullanmayı sağlayan bir teknoloji sunuyor
    • GDExtension bu sürümde de hâlâ beta aşamasında
    • 4.1 ile GDExtension'ın scripting yetenekleri GDScript ve C#'a daha da yaklaşıyor
    • Yeni visual shader node'ları uygulanabiliyor
    • GDExtension ile editör eklentileri oluşturulabiliyor
    • Gelecekteki API değişikliklerine rağmen Godot 4.1 için yazılmış kodun çalışmaya devam etmesine yardımcı olacak bir geriye dönük uyumluluk sistemi uygulandı
    • Ancak GDExtension'ın temel sorunlarını çözmek için 4.1'de büyük bir uyumluluk kırılımı gerekti
    • Mevcut Godot 4.0 extension'larının 4.1 için port edilip yeniden derlenmesi gerekiyor
    • GDExtension API'sini gelecekte daha genişletilebilir kılmak için mimari çalışma da yeniden yoğun şekilde ele alındı

Editör iş akışı

  • Godot 4, proje ayarları, editör ayarları ve çeşitli açılır pencerelerde çoklu pencere desteği sunuyordu
  • 4.1 ile dokümanlar kayan pencere olarak ayrılabiliyor; shader düzenleyici dâhil script düzenleyici de ayrılıp ayrı bir monitöre taşınabiliyor
  • Editör, pencere yerleşimini takip ederek kapatılıp yeniden açıldığında önceki çalışma konumunu koruyabiliyor
  • Godot 4.0, türlendirilmiş dizi tanımı/export'u ve tekil düğümlerin inspector üzerinden export edilmesini destekliyordu, ancak ikisi birlikte kullanılamıyordu
  • Godot 4.1 ile düğüm dizileri inspector'a export edilebiliyor; bu da oyun nesnelerini birbirine bağlamayı kolaylaştırıyor
  • Proje yöneticisine tek tek projelere etiket ekleme ve etiketlere göre filtreleme özelliği eklendi
    • Böylece onlarca hatta yüzlerce Godot projesini bulmak kolaylaşıyor

Rendering değişiklikleri

  • Particle turbulence, sanatçı geri bildirimleri doğrultusunda yeniden işlendi ve yaratıcı kontrol artırıldı
  • Türbülans, modern oyunlarda görülen zengin ve geniş alana yayılan efektleri oluşturmak için sık kullanılıyor
  • Yeni 3D noise texture, volumetric fog yoğunluğunu kolayca kontrol etmeyi sağlıyor
    • Belirli bölgelerde sisi daha ince yapmak mümkün
  • NoiseTexture3D, particle attractor vector field oluşturmak için de kullanılabiliyor
    • Parçacıkları etkileyen rüzgârı simüle etmekte faydalı
  • Godot renderer'ında planlanan daha çok iyileştirme var ve bunların çoğu gelecek sürümlere kalacak
  • Rendering ekibi ve katkıcılar, yeni özelliklerden çok hata düzeltmeleri ve kararlılığa öncelik veriyor
  • 3D GLES3 renderer henüz tamamlanmış değil ve önümüzdeki aylarda üzerinde önemli çalışmalar yapılacak

Navigasyon iyileştirmeleri

  • Godot 4.0, AI navigasyon için gerçek zamanlı kaçınmayı tanıtmıştı ancak bu tek bir düzlemle sınırlıydı
  • Godot 4.1, tamamen yeniden yazılmış bir kaçınma algoritması içeriyor
    • Daha iyi davranış ve daha fazla kontrol sunuyor
    • Kaçınma artık 2D veya 3D'de çalışabiliyor
    • Uçan ajanların yerde yürüyen ajanların üstünden geçmesi mümkün
  • Katmanlar kullanılarak hangi ajanların hangi ajanlardan kaçınacağı kontrol edilebiliyor
  • Öncelik atayarak bazı ajanların diğer ajanları itmesi sağlanabiliyor
  • Geliştirilmiş navigasyon davranışı güncellenmiş dokümanlarda görülebilir

Platform desteği ve web kısıtları

  • Godot 4.1'in platform desteği kapsamı Godot 4.0 ile aynı
  • Hem standart motor hem de .NET sürümünde tüm masaüstü platformlarına export yapılabiliyor
  • Projede C# kullanılmıyorsa mobil ve web'e export etmek mümkün
  • 4.1 itibarıyla web export'unda bazı modern özellikler için üretici desteğinin yetersiz olması nedeniyle kısıtlar var
    • macOS üzerindeki Chrome gibi WebGL 2 desteği zayıf olan tarayıcılarda sorunlar yaşanıyor
    • Google tarafından düzeltme yapılmadan veya özel bir WebGL 1 / GLES2 renderer desteğine ciddi emek verilmeden bunu çözmek zor görünüyor
  • SharedArrayBuffer desteği için gereken CORS header'larını ayarlayamayan hosting platformlarında web oyunu yapılandırması karmaşıklaşıyor
    • Bu sorun büyük ölçüde Safari'nin coep:credentialless header desteğini uygulamasına bağlı
    • Chromium tabanlı tarayıcılar ve Firefox zaten iyi çalışıyor
    • Özellikle itch.io üzerinde dağıtım yapıldığında iyi sonuç veriyor
    • Olası geçici çözümler araştırılıyor

Bilinen sorunlar ve sonraki sürüm

  • Godot 4.1'de sürüm öncesinde çözülememiş bazı sorunlar hâlâ bulunuyor
  • Hata takip sistemi Godot GitHub issues üzerinden görülebilir
  • Doğrulanmış başlıca sorunlardan biri, export preset'lerinin özel yapılandırma özelliklerini tanımlamak için kullanılan yeni API'nin kullanıcı yapılandırmasını koruyamaması
    • Editör yeniden başlatıldığında yapılandırma seçenekleri sıfırlanıp kayboluyor
    • Düzeltmenin 4.1.1'de sunulması planlanıyor
    • İlgili PR: GH-79025
  • Godot 4.2 çalışmaları şimdiden başladı ve 4 ay sonra çıkması planlanıyor
  • Godot, kullanıcıların bir sonraki iyileştirmeler ve yeni özellikler için uzun süre beklememesi adına istikrarlı sürüm takvimini sürdürmeyi hedefliyor

1 yorum

 
GN⁺ 2023-07-07
Hacker News yorumları
  • Yakın zamanda Unity’den Godot 4.0’a neredeyse tamamen geçtim; profesyonel bir oyun geliştiricisi değilim ama küçük indie/itch.io tarzı oyunlar yapan biri olarak gerçekten çok memnunum
    Hafif, hızlı ve öğrenmesi kolay; tek kişilik/indie geliştiricilerin ihtiyaç duyduğu şeylerin %90’ını yapabiliyor
    Ancak macOS kullanıcılarının itch.io’da oyunu açtığında yükleme çok uzun sürdüğü için bozulduğunu sanıp sekmeyi kapatmasına yol açan bir hata yüzünden Unity’yi tamamen bırakamıyorum
    Yaptığım oyunlar çoğunlukla eğitim amaçlı ya da iPad/MacBook kullanan çocukları hedefliyor; bu yüzden yerel kurulum öğretip cihaz sahibini ikna etmeye çalışmaktan ziyade bir itch.io bağlantısı vermek çok daha kolay
    Godot tarafında bunun üzerinde çalıştıklarını söylüyorlar ama o zamana kadar bazı projelerde Unity kullanmaya devam etmem gerekecek. Bu sorun çözülürse Godot’un itch.io/game jam tarafında ciddi şekilde öne çıkabileceğini düşünüyorum

    As of 4.1 web exports still have some limitations due to poor vendor support of certain modern features. Browsers with bad WebGL 2 support, such as Chrome on macOS, unfortunately suffer from issues which we cannot address without a fix from Google or a significant amount of effort put into supporting a dedicated WebGL 1 / GLES2 renderer.
    We are also aware of the complexity setting up web games on hosting platforms which don’t let you set the required CORS headers for SharedArrayBuffer support. This mostly depends on Safari implementing the coep:credentialless header support, while Chromium-based browsers and Firefox already work fine (especially if you publish on itch.io). There is a possible workaround that we are investigating.

    • Benzer bir durumdaydım ama sonunda Godot 3.5.2’nin hâlâ uzun süreli destek sürümü olduğunu ve web dışa aktarmasının da gayet iyi çalıştığını fark ettim. Geçiş yapmaya karar vermemi sağlayan örnek şuydu: https://yet-another-lucas.github.io/plumbing-adventure/
      Sonrasında Godot 4.0 C#’tan Godot 3.5.2 + GDScript’e geçtim ve memnunum
      Ayrıca master’a her commit attığımda Github Pages’e otomatik derleme/dağıtım yapan bir CI/CD pipeline da kurdum; böyle pipeline’lar oldukça iyi oluyor
      https://www.reddit.com/r/godot/comments/q25riu/hosting_on_gi...
    • Bu yıl Godot 3.5 ile tarayıcı tabanlı, küçük game jam tarzı 5 oyun yaptım[1] ve genel olarak deneyim iyiydi. Godot 4’ün web dışa aktarması düzgün çalışana kadar Godot 3.5 kullanarak gayet mutlu olunabilir
      Godot 4’te daha iyi tip desteği ve sihirli string’leri daha az kullanmayı sağlayan iyileştirmeler var; örneğin sinyalleri isimle referans edebilme gibi beklediğim dil geliştirmeleri mevcut
      Ama eğer bu büyük bir engelse beklemek daha iyi olabilir
      Bazen Godot 4 ekibinin macOS sorununu Godot’taki bir regresyon değil de bir Chrome hatası olarak görmesi can sıkıcı geliyor[2]
      Bu daha çok anlambilim ve öncelik meselesi ama Godot 3’te dayandığınız bir özellik Godot 4’te bozulduysa buna regresyon dememek zor
      Yine de Godot 4 ve önceki sürümlere giren tüm emek için çok minnettarım ve bir gün Godot 4 kullanmayı sabırsızlıkla bekliyorum
      [1] Merak ederseniz hepsi https://eieio.games/ adresinde
      [2] https://github.com/godotengine/godot/issues/70691
    • “macOS’teki Chrome gibi WebGL 2 desteği kötü olan tarayıcılar” kısmı dikkatimi çekti
      Şimdiye kadar Chrome/macOS’te WebGL2 ile ilgili bir sorun yaşamadım; bu yüzden tam olarak ne tür bir problem olduğunu merak ediyorum
      Gerçi ben de sorun çıkardığı bilinen WebGL2/GLES3 özelliklerinden kaçınıyorum. Daha çok uniform buffer’lar ya da native’de iyi çalışsa da WebGL’de çalışmayan buffer güncelleme kalıpları; örneğin “buffer orphaning” gibi şeyler
    • Godot’un VR desteğinin durumu nasıl, merak ediyorum. UE4’ü 9 yıldır kullandım ve Unity’yi pek sevmiyorum ama Godot’u bir denemek isterim
    • macOS’te Godot ile oyun yapıp itch.io’da yayımlıyorum ama bu sorunla hiç karşılaşmadım. Sorunun yaşandığı bir örnek ve build export ayarlarıyla ilgili bilgi verebilir misiniz?
  • Godot gerçekten etkileyici bir araç. Yeni bir oyun projesine başlamak için bir neden bulursam onu daha ciddi şekilde öğrenmek isterim; üstelik nispeten küçük bir ekiple başardıklarına bakınca Unity’nin utanması gerekir
    “Godot 4 kullanırken bildirilen sorunlar ve 4.1 ön sürüm testleri sırasında bildirilen sorunlar arasında 900’den fazla problemi düzelttiler” kısmı da etkileyici
    Performans ve kararlılığı daha da iyileştirirken bu kadar çok sorunu düzeltmiş olmaları başlı başına övgüyü hak ediyor

    • 900 sorun düzeltmesi kesinlikle etkileyici ama Godot muhtemelen GitHub’da en fazla açık issue’ya sahip depolardan biri. Şu anda bile 5.000’den fazla açık issue var
      Elbette açık issue sayısı yazılım kalitesini değerlendirmek için iyi bir ölçüt değil
  • Godot’u seviyorum ama bazı eksikleri var. GDScript Python değil ve Python’ı harika yapan küçük özelliklerden, örneğin liste/sözlük comprehension’ları, .items(), kümeler gibi şeylerden yoksun
    Yine de oyun geliştirme için fazlasıyla yeterli ve native tipler gibi çevreyle iyi uyum sağladığı için oldukça iyi bir dil
    GDNative kullandım ve GDExtension’ı da daha fazla denemem gerekiyor ama şu ana kadar Godot için C++ yazmak oldukça pürüzlü hissettirdi. Programcının Godot tiplerini ve new()'u her yerde kullanması gerekiyor, bu da işi kolaylaştırmıyor
    Bu yüzden Godot, gerçek bir C++ motorundan ziyade, çoğu zaman betik dili kullandığınız ve ancak betik yeterince hızlı olmadığında C++ ile optimize ettiğiniz bir yapıya daha yakın
    GDScript’in diğer dillere kıyasla pratikte ne kadar hızlı olduğunu daha fazla görmek isterim; Mono/.NET’in daha hızlı olup olmadığını da bilmiyorum. Ortam tasarımıyla kusursuz biçimde entegre bir dil olması güzel ama iyileştirme planları var mı merak ediyorum
    Çok oyunculu bir FPS yapmayı planlıyorum ama Godot’un ağ tahmini sunduğu görünmüyor; sunmasını isterdim
    İleride OpenGL desteği de beni düşündürüyor. Henüz tamamen bitmiş değil ve Vulkan ya da DX12 gibi yeni API’lerden fazla farklı olduğu için düzgün uygulanması zor olur diye endişeleniyorum
    Genel olarak Godot, açık kaynak ve oyun geliştirme için olmuş en iyi şey. Oyun geliştirme, açık kaynağın kök salmasının zor olduğu bir alandı ve Godot’un hafif tasarımı, Unreal ya da Unity gibi dev araçlarla kıyaslanınca büyük bir ferahlık sağlıyor

    • Godot’taki en büyük sorun da bu zaten. Ama mesele GDScript’in Python olmaması değil, genel amaçlı bir dil olmaması. Unity’de özlediğim neredeyse tek şey de bu
      Gerçi doğrudan Python’ı seçmezdim sanırım; sevdiğim bir dil olsa da performansa biraz daha odaklı bir dil tercih ederdim. Go da iyi bir seçenek olabilir
      GDScript kendi başına kötü değil; başka dillerle kıyaslamazsanız oldukça harika. Ama genel amaçlı bir dille karşılaştırınca kayıp çok fazla oluyor
      Binding’ler olduğunu biliyorum ama Raylib’de benzer bir deneyim yaşadığım için gayriresmî dil desteği pratikte yok sayılırdı. Resmî binding olan Mono da oldukça kötü
    • .NET daha hızlı
      Yine de AAA oyunlar bile oyun mantığı için sık sık yavaş betik dilleri kullanıyor. Birçok oyunda oyun mantığı CPU’yu ciddi biçimde tüketen kısım olmadığı için bu çoğu zaman önemli olmuyor
    • Oyun framework’lerinde sözü edilen ağ tahmininin nasıl bir şey olduğunu merak ediyorum. Nesnenin hangi özelliklerinin enterpole edileceğini belirtiyorsunuz da gerisini motor mu hallediyor?
  • Electron benzeri bir şey yerine çapraz platform uygulama geliştirme için Godot kullanıldığı oluyor mu?

  • Godot’un ana katkıcı/geliştiricilerinden biri, Godot ile yapılmış şeyleri tamamen decompile edebilen kullanışlı küçük bir araç da yayımladı
    https://github.com/bruvzg/gdsdecomp

    • Güzel araç ama Godot’un ana/lider/asıl geliştiricisi reduz, yani Juan Linietsky
  • Godot gerçekten harika. Ekibin ilerleyişinden ve projenin genel yönünden derinden etkilendim
    Aslında oyun geliştirmeye her zaman ilgim vardı; oyun yapmak istediğim için bilgisayar bilimi öğrenip yazılım mühendisi olmamda bunun büyük payı var. Kendi başıma küçük oyunlar yapmak istedim ama pratikte pek başaramadım
    Tam zamanlı yazılım mühendisi olduktan sonra da hobi olarak küçük oyunlar yapacak zamanı ya da uygun araçları bulamadım
    Yakın zamanda Bevy'yi keşfedip denedim; ECS iyi bir kavram ama Bevy daha çok bir kütüphaneye benziyor ve SDL gibi bir şey kullanıyormuşsunuz gibi, tamamlanmış bir oyun üretmek oldukça zor
    Godot'u keşfedip kullandığımda ise gerçekten etkilendim. Yeni başlayanlara dost ama aynı zamanda yeterince hızlı ve topluluğu da harika. Aradığım şey tam olarak buydu; var olması bile beni çok mutlu ediyor ve gelecekte nasıl gelişeceğini görmek için heyecanlıyım
    Tek hayal kırıklığım, yerel ve “resmi” dil seçimi. GDScript fena değil; yeni başlayanlar ve hızlı prototipleme için oldukça iyi, Python benzeri bir dil. C# da Unity'den gelenler için iyi olabilir
    Kişisel olarak daha iyi C++ desteği ya da başka bir şey olsaydı daha mutlu olurdum. GDNative arayüzü olduğunu ve 4.0'da iyileştirildiğini de biliyorum
    C# iyi bir dil ama oyun geliştirmede bu kadar görünür olmasının sebebinin Unity olduğu hissine kapılıyorum. Fazla ayrıntılı ve Visual Studio dışında araç desteği de o kadar iyi değil
    Yine de belki de oyun geliştirmede “gerçek programlama” kısmı o kadar önemli değildir; belki de bunu kabullenip GDScript kullanmalıyımdır

  • Godot'un Unreal'a karşı zorlanması anlaşılır ama Unity'nin yerini alma çabasını kesinlikle destekliyorum
    Harika bir motor ve giderek daha fazla geliştirici potansiyelini gerçekten fark ediyor

    • Unity, Unreal'dan farklı şekilde kendi başına bir ekosistem. Unity, bir platform olarak mobil gelir elde etme tarafını diğer platformların yapamadığı biçimde destekliyor; Godot'un bu ekosistemi kısa vadede elinden alması zor
      Ama konu bağımsız geliştiricilikse tamamen katılıyorum. Godot, insanların Unity'den beklediği; hafif, ayak bağı olmayan ve insanı doğrudan bir şeyler üretmeye yönelten framework. Bu kullanım alanında Godot çok daha iyi
    • Onlarca yıllık, AAA oyun odaklı ve büyük ölçekli tam zamanlı kadrolara sahip Unreal'la rekabet etmeye çalışmak boşuna. Bir açık kaynak projesinin böyle hareketli bir hedefi yakalaması zor
      Neyse ki Unreal Engine birçok oyun türü için iyi bir seçim değil ve Godot da 2D oyunlar ile daha basit 3D oyunlarda kendine iyi bir alan açıyor
      2D oyun pazarı hâlâ büyük ve şaşırtıcı şekilde 2D'yi gerçekten iyi destekleyen motor sayısı fazla değil. Godot rahatlıkla üst sıralara girer
    • Marketplace modelini kopyalayabilirse Unity ile de rekabet edebilir gibi görünüyor
  • Godot gerçekten harika ve böyle yazılımlar ile Blender gibi araçları mükemmel hâle getirmek için zaman harcayan herkese büyük saygı duyuyorum

  • Godot her sürümle birlikte gerçekten daha iyi oluyor. Gelecekte Godot'ta görmek istediğim bazı özellikler var
    FSR2, güçlü Wayland desteği ve LLM entegrasyonu. LLM'ler NPC'leri daha gerçekçi hâle getirebilir belki

    • LLM entegrasyonundan emin değilim. Bu, oyun motoruyla ilgili olmaktan çok oyuna özgü bir özellik gibi duruyor. LLM entegrasyonu muhtemelen oyun içinde script yazarak çözülebilir
      Yapay zeka entegrasyonu açısından AI destekli tasarım daha ilginç geliyor. Araziyi, karakterleri, senaryoyu tarif edersiniz; AI bir şeyler üretir, sonra kullanıcı bunları özelleştirip ayarlar
      Ama bunun bile çekirdek oyun motorunun dışında yapılması daha iyi olabilir
    • Donanım hızlandırmalı ray tracing peki?
  • Önerebileceğiniz Godot eğitimleri var mı?
    Konsolda çalışan küçük bir RPG prototipim var ve buna gerçek bir GUI ile sprite grafikleri eklemeyi denemek istiyorum

    • Godot 4 için ücretsiz bir eğitim var; en baştan başlayıp yaklaşık iki saatte tamamlanmış bir oyuna ulaştırıyor: https://quiver.dev/tutorials/create-your-first-godot-4-game/
      Belirtmem gerekir ki ben bu kursu hazırlayan şirketin kurucusuyum. Yine de eğitim ücretsiz ve eğitimde kullanılan özel asset'ler de cömert bir lisansla sunuluyor
    • GD Quest şu anda fiili standart gibi görülüyor. Godot'un W3Schools'u gibi bir yerde
      Ama Unity'den Godot'a geçen biri olarak, Godot'nun eğitim ekosisteminin hâlâ oldukça geride olduğunu düşünüyorum
    • Heartbeast'in kurslarından birini aldım ve tavsiye edebilirim
      Kısa süre önce Godot 4'e özel bir ders de yayımladı
      https://www.youtube.com/watch?v=M8-JVjtJlIQ
    • YouTube'da programlama eğitimleri listem var; içinde birkaç Godot eğitimi de bulunuyor
      https://www.youtube.com/playlist?list=PLwYfcDZR0fFcROLjkiyBW...
      Karşınıza çıkan eğitimlerin çoğu Godot 3 için olacaktır; bu yüzden filtreleyip özellikle Godot 4 diye aramanız iyi olur
      Aksi takdirde eğitimdeki kodu kendi Godot sürümünüzde çalışacak şekilde uyarlamanız gerekir; bu da başlı başına öğretici bir deneyim olabilir
    • Resmî belgeler[0] kesinlikle temel başvuru kaynağıdır
      [0] https://docs.godotengine.org/en/stable/getting_started/intro...