Bu soru her yerde soruluyor ve verilen cevapların çoğu bir ders listesi. Asıl mesele sıralama, çünkü GDScript'te takılan kimse dilde takılmıyor.
Önce beklentiyi düzeltelim
GDScript öğrenmek kolay kısım. Python'a benzeyen, özellikle Godot için tasarlanmış küçük bir dil; daha önce hiç kod yazmadıysan bile bir hafta sonunda çalışan bir şey yazarsın.
Zor kısım Godot'nun kendisi: düğümler, sahneler, sinyaller. İnsanların "GDScript'i anlamıyorum" dediği şeylerin neredeyse tamamı aslında mimariyle ilgili. Bunu baştan bilirsen doğru yere kafa yorarsın.
Bir de şunu söyleyeyim: GDScript genel amaçlı bir dil değil. Onunla web sitesi ya da masaüstü uygulaması yazmazsın. Godot'nun içinde yaşar.
Sıralama
1. Dili soyut olarak öğrenmeye çalışma. "Önce programlamayı öğreneyim sonra oyun yaparım" diye başlayanların çoğu ikinci adıma hiç gelmiyor. Bir şey yaparak öğren.
2. Adım adım ile başla — altı sayfa. Bu belgeler düğüm ve sahneleri öğretiyor; söz diziminden daha önemli olan kısım bu.
3. Hiç kod yazmadıysan araya bunu koy:Learn GDScript From Zero — GDQuest'in ücretsiz ve açık kaynak kursu, 27 etkileşimli ders. Tarayıcıda çalışıyor, kurulum gerektirmiyor.
4. İlk 2B oyununu bitir — yedi bölüm, sonunda gerçekten oynanan bir oyun. Bitir, yarıda bırakma; bitirmek öğrenmenin kendisi.
5. Şimdi dilin referansına dön:GDScript belgeleri. Artık okuduğun şeyin nereye oturduğunu biliyorsun.
Buraya kadar bir ila üç hafta. Sonrası proje yapmak.
Yeni başlayanın gerçekten takıldığı dört şey
Düğüm ve sahne ayrımı. Sahne, düğümlerden oluşan bir ağaç ve aynı zamanda tekrar kullanılabilir bir parça. "Oyuncu" bir sahnedir, seviyenin içine örneklenir. Bunu kavrayana kadar her şey karışık görünür — en iyi uygulamalar bölümündeki "sahne mi script mi" yazısını erken oku.
_ready(), _process(), _physics_process() farkı. Sırasıyla: düğüm hazır olduğunda bir kez; her karede; sabit aralıklı fizik adımında. Hareket ve çarpışma _physics_process içine girer — _process içine koyarsan bilgisayarın hızına göre farklı davranır.
Sinyaller. Godot'nun "bir düğüm diğerine sabit bağlanmasın" yöntemi. Düğmeye basıldığında bir şey olmasını istiyorsan sinyal bağlarsın. Sinyaller sayfası kısa, mutlaka oku — bunu öğrenmeden yazılan kod bir süre sonra çözülmez hale geliyor.
$Yol kırılmaları.$Oyuncu/Sprite2D yazıp sonra düğümü ağaçta taşıyınca kod patlar. Çözüm: düğümleri taşımamak değil, mümkün olduğunca sinyal kullanmak ve dışarıdan erişilecek düğümleri @export ile bağlamak.
İki alışkanlık, baştan edinilsin
Statik tiplemeyi aç.var hiz = 300.0 yerine var hiz: float = 300.0 yaz. Editör sana yardım etmeye başlıyor, hataların çoğu çalıştırmadan önce yakalanıyor ve kod daha hızlı çalışıyor. Statik tipleme sayfası.
Stil rehberine uy. Değişken ve fonksiyonlar snake_case, sınıflar PascalCase. Herkesin kodu birbirine benzesin diye değil — Godot'nun kendi API'si böyle, uyduğunda kendi kodun motorun koduyla aynı görünüyor. Stil rehberi.
Yapma
Godot 3 dersleriyle başlama. Aramada bolca çıkıyorlar ve 4.x'te çalışmıyorlar. Adreste "/en/3." geçiyorsa ya da ders 2023'ten eskiyse Godot 3'tür. Güncel sürüm 4.7.2.
"Daha profesyonel" diye C# ile başlama. Neden olmadığını ayrı bir konuda yazdım.
Büyük bir projeyle başlama. İlk oyunun Pong büyüklüğünde olsun. Bu tavsiye klişe çünkü doğru.
GDScript öğrenmeye nasıl başlayayım?
Bu soru her yerde soruluyor ve verilen cevapların çoğu bir ders listesi. Asıl mesele sıralama, çünkü GDScript'te takılan kimse dilde takılmıyor.
Önce beklentiyi düzeltelim
GDScript öğrenmek kolay kısım. Python'a benzeyen, özellikle Godot için tasarlanmış küçük bir dil; daha önce hiç kod yazmadıysan bile bir hafta sonunda çalışan bir şey yazarsın.
Zor kısım Godot'nun kendisi: düğümler, sahneler, sinyaller. İnsanların "GDScript'i anlamıyorum" dediği şeylerin neredeyse tamamı aslında mimariyle ilgili. Bunu baştan bilirsen doğru yere kafa yorarsın.
Bir de şunu söyleyeyim: GDScript genel amaçlı bir dil değil. Onunla web sitesi ya da masaüstü uygulaması yazmazsın. Godot'nun içinde yaşar.
Sıralama
1. Dili soyut olarak öğrenmeye çalışma. "Önce programlamayı öğreneyim sonra oyun yaparım" diye başlayanların çoğu ikinci adıma hiç gelmiyor. Bir şey yaparak öğren.
2. Adım adım ile başla — altı sayfa. Bu belgeler düğüm ve sahneleri öğretiyor; söz diziminden daha önemli olan kısım bu.
3. Hiç kod yazmadıysan araya bunu koy: Learn GDScript From Zero — GDQuest'in ücretsiz ve açık kaynak kursu, 27 etkileşimli ders. Tarayıcıda çalışıyor, kurulum gerektirmiyor.
4. İlk 2B oyununu bitir — yedi bölüm, sonunda gerçekten oynanan bir oyun. Bitir, yarıda bırakma; bitirmek öğrenmenin kendisi.
5. Şimdi dilin referansına dön: GDScript belgeleri. Artık okuduğun şeyin nereye oturduğunu biliyorsun.
Buraya kadar bir ila üç hafta. Sonrası proje yapmak.
Yeni başlayanın gerçekten takıldığı dört şey
Düğüm ve sahne ayrımı. Sahne, düğümlerden oluşan bir ağaç ve aynı zamanda tekrar kullanılabilir bir parça. "Oyuncu" bir sahnedir, seviyenin içine örneklenir. Bunu kavrayana kadar her şey karışık görünür — en iyi uygulamalar bölümündeki "sahne mi script mi" yazısını erken oku.
_ready(),_process(),_physics_process()farkı. Sırasıyla: düğüm hazır olduğunda bir kez; her karede; sabit aralıklı fizik adımında. Hareket ve çarpışma_physics_processiçine girer —_processiçine koyarsan bilgisayarın hızına göre farklı davranır.Sinyaller. Godot'nun "bir düğüm diğerine sabit bağlanmasın" yöntemi. Düğmeye basıldığında bir şey olmasını istiyorsan sinyal bağlarsın. Sinyaller sayfası kısa, mutlaka oku — bunu öğrenmeden yazılan kod bir süre sonra çözülmez hale geliyor.
$Yolkırılmaları.$Oyuncu/Sprite2Dyazıp sonra düğümü ağaçta taşıyınca kod patlar. Çözüm: düğümleri taşımamak değil, mümkün olduğunca sinyal kullanmak ve dışarıdan erişilecek düğümleri@exportile bağlamak.İki alışkanlık, baştan edinilsin
Statik tiplemeyi aç.
var hiz = 300.0yerinevar hiz: float = 300.0yaz. Editör sana yardım etmeye başlıyor, hataların çoğu çalıştırmadan önce yakalanıyor ve kod daha hızlı çalışıyor. Statik tipleme sayfası.Stil rehberine uy. Değişken ve fonksiyonlar
snake_case, sınıflarPascalCase. Herkesin kodu birbirine benzesin diye değil — Godot'nun kendi API'si böyle, uyduğunda kendi kodun motorun koduyla aynı görünüyor. Stil rehberi.Yapma
Sonrası
Video, tarif koleksiyonu ve ileri kaynaklar bu odadaki Godot öğrenme yol haritasında. Motordan bağımsız programlama kaynakları Tasarım ve Zanaat odasında.
Takıldığın yerde bu odada konu aç — sürümünü yazmayı unutma.
Tartışmaya katılmak için giriş yap. Giriş yap