Cohorts
  • Discover
  • About Us
  • Blog
  • Patika.dev
  • Web3

Unity Junior Programmer

Unity'ye Giriş
Unity'yi İndir

Ünite 1-Giriş
3D Motorlarınızı çalıştırın
Ders Klasörü ve Yeni Proje Oluşturun
Assetleri içe aktarın ve Prototip 1'i açın
Aracınızı sahneye ekleyin
Bir engel ekleyin ve yeniden konumlandırın
Kameranızı bulun ve oyunu çalıştırın
Kamerayı aracın arkasına taşıyın
Arayüz düzenini özelleştirin
Ders Özeti

Giriş
İlk komut dosyanızı oluşturun ve uygulayın
Güncelleme yöntemine bir yorum ekleyin
Araca ileri bir hareket verin
İlerlemek için bir Vector3 kullanın
Aracın hızını özelleştirin
Nesnelere RigidBody bileşenleri ekleyin
Engelleri çoğaltın ve konumlandırın
Ders Özeti

Giriş
Aracınız için bir hız değişkeni ekleyin
Kamera için yeni bir script oluşturun
Kamera konumuna bir ofset ekleyin
Ofseti bir Vector3 değişkenine dönüştürün
LateUpdate ile Kamerayı Pürüzsüzleştirin
playmod’un renk tonunu düzenleyin
Ders Özeti

Sürücü Koltuğuna Geçin
Aracın sola/sağa hareket etmesine izin verin
Girdilerde temel sol/sağ hareketi
Araç hızının kontrolünü elinize alın
Aracı kaydırmak yerine döndürmek
Kodunuzu ve hiyerarşinizi temizleyin
Ders Özeti

Challenge 1 - Düzlem Programlama

Bonus Özellikler 1 - Çalışmanızı Paylaşın
Kolay: Engel piramitleri
Orta: Karşıdan gelen araçlar
Zor: Kamera değiştirici
Uzman: Yerel çok oyunculu

Project Design Document
Understand what a Personal Project
Review Design Doc examples
Complete your Project Concept V1
Complete your Project Timeline
Complete your MVP sketch
Ders Özeti

Üretim aşamalarını özetleyin
Başlık
Tasarım belgeleri ve proje planları
Projeleri yönetmek ve ilerlemeyi izlemek
Proje yönetiminizi ve izlemenizi destekleyecek araçları belirleyin
Yayınlamaya hazırlanıyor
Projenizi yayınlamak

Oyuncu Konumlandırma
Ünite 2 - Giriş
Prototip 2 için yeni bir Proje oluşturun
Oyuncuyu, Hayvanları ve Yiyecekleri Ekleyin
Kullanıcının yatay girişini alın
Oyuncuyu soldan sağa hareket ettirin
Oyuncuyu sahada tut
Kodunuzu ve değişkenlerinizi temizleyin
Ders Özeti

Yiyecek Uçuşu
Merminin ileriye doğru uçmasını sağlayın
Mermiyi hazır bir yapı haline getirin
Boşluk çubuğuna basmayı test edin
Boşluk çubuğuna basarak mermiyi başlatın
Hayvanları prefabrike yapın
Mermileri ekran dışında yok edin
Ekran dışındaki hayvanları yok edin
Ders Özeti

Rastgele Hayvan Kaçışması
Bir spawn (yumurtlama) yöneticisi oluşturun
S'ye basıldığında bir hayvan doğurun
Diziden rastgele hayvanlar üretin
Doğma yerini rastgele belirleyin
Kamera perspektifini (açısını) değiştirin(değiştirmek)
Ders Özeti

Çarpışma Kararları
Hayvanları yumurtlatmak için yeni bir yöntem yapın
Hayvanları belirli aralıklarla yumurtlatın
Çarpıştırıcı ekleyin ve bileşenleri tetikleyin
Çarpışma anında nesneleri yok edin
Bir "Oyun Bitti" mesajını tetikleyin
Ders Özeti

Challenge 2 - Fetch Oyunu
Daha Fazla Challenge

Bonus Features 2 Genel Bakış
Kolay: Dikey oyuncu hareketi
Orta: Agresif hayvanlar
Zor: Oyun kullanıcı arayüzü
Uzman: Hayvan açlığı çubuğu
İpuçları ve çözüm önerileri

Primitive’lerle Yeni Proje
Yeni bir Proje oluşturun ve sahnenizi yeniden adlandırın
Bir arkaplan düzlemi oluşturun
Yeni bir malzeme ile primitive bir Oyuncu oluşturun
Proje türüne göre kamerayı konumlandırın
Düşmanlar, engeller, atılan cisimler ve malzemeler
nity Package yedekleme dosyasını dışa aktarın
Ders Özeti

Lab 3 Oyuncu Kontrolü
1 PlayerController oluşturun ve kodunuzu planlayın
Kullanıcı girdisinden temel hareket
Oyuncunun hareketini sınırlayın
Kod Temizleme ve Yedeklemeyi Dışa Aktarma
Ders Özeti

Ses ve Efektler Giriş
Zıplama Kuvveti Giriş
Prototipi aç ve arka planı değiştir
Bir oyuncu karakteri seçin ve ayarlayın
Oyuncunun başlangıçta zıplamasını sağlayın
Boşluk çubuğuna basıldığında oyuncunun zıplamasını sağlayın
Atlama kuvvetini ve yerçekimini değiştirin
Oyuncunun çift zıplamasını engelle
Bir engel yapın ve sola hareket ettirin
Bir Spawn Manager oluşturun
Aralıklarla engeller ortaya çıkarın
Ders Özeti

Dünyayı Hızlandırın
Arka planı tekrarlamak için bir komut dosyası oluşturun
Arka planın konumunu sıfırlayın
Collider ile arka plan tekrarını düzeltin
Trigger üzerinden yeni bir oyun ekleyin
gameOver'da MoveLeft'i durdurun
gameOver'da engellerin oluşmasını durdurun
Sınırlardan çıkan engelleri yok edin
Ders Özeti

Orada Öylece Durma
Oyuncunun animasyonlarını keşfedin
Oyuncunun başlangıçta koşmasını sağlayın
Bir atlama animasyonu ayarlayın
Atlama animasyonunu ayarlayın
Düşme animasyonunu ayarlayın
Oyuncunun baygın iken zıplamasını engelleyin
Ders Özeti

Parçacıklar ve Ses Efektleri
Bir patlama parçacığını özelleştirin
Parçacığı çarpışmada oynatın
Kir sıçratma parçacığı ekleyin
Kamera nesnesine müzik ekleyin
Ses Klipleri için değişkenleri bildirin
Zıplayınca Ve Çarpınca Ses Klibi Çalma
Ders Özeti

Genel Bakış
Uyarı

Bonus Özellikler 3 Genel Bakış
Kolay: Engelleri rastgele düzenleyin
Orta: Çift atlama
Zor: Atılma yeteneği ve puanı
Uzman: Oyun başlatma animasyonu
İpuçları ve çözüm yolu

Game Play Griş
Nereye Gittiğinizi İzleyin - Giriş
Proje oluştur ve sahneyi aç
Oynatıcıyı kurun ve bir doku ekleyin
Kamera için bir odak noktası oluşturun
Kullanıcı girişi ile odak noktasını döndürün
Oyuncuya ileri kuvvet ekleyin
Odak noktası yönünde hareket et
Ders Özeti

Oyuncuyu Takip Etmek Giriş
Bir Düşman ve Bir Fizik Materyali Ekleme
Oyuncuyu Takip Etmek İçin Düşman Komut Dosyası Oluşturma
Bir lookDirection Değişkeni Oluşturma
Düşman İçin Bir Doğma Yöneticisi (Spawn Manager) Oluşturma
Rastgele Doğma Noktası Oluşturma
return methodunu Bir Doğma Noktası Yapma
Ders Özeti

PowerUp ve CountDown
Bir PowerUp seçin ve hazırlayın
Çarpışmada PowerUp’ı yok edin
Düşmanı ve PowerUp’ı test edin
PowerUp ile ekstra geri tepme uygulayın
PowerUp için CountDown Rutini Oluşturunp
Bir güç açma göstergesi ekleyin
Ders Özeti

Düşman Dalgaları İçin For-Döngüleri
3 düşman oluşturmak için bir for döngüsü yazın
For-döngüsüne bir parametre verin
Düşmanlar eğer düşerlerse onları yok edin
Düşman sayısını (enemyCount) dalgalarla artırın
Yeni dalgalarla birlikte Powerups oluşturun
Ders Özeti

Genel Bakış
Uyarı

Bonus Özellikler 4 Genel Bakış
Kolay: Daha zorlu düşman
Orta: Güdümlü roketler
Zor: Sert saldır
Uzman: Boss savaşı

Temel Oynanış
Objelere temel hareket ver
Objeleri ekran dışında yok et
Obje çarpışmalarını işle
Objeleri prefab’lara dönüştür
SpawnManager'ın Prefabs oluşturmasını sağla
Ders Özeti

Kullanıcı Arayüzü Giriş
Tıklayıcı Fare - Giriş
Proje oluşturun ve 2B görünüme geçin
Good (İyi) ve Bad (Kötü) hedefleri oluşturun
Nesneleri rastgele havaya fırlatın
Dağınık kodu yeni metodlarla değiştirin
Game Manager içerisinde obje listesi oluşturun
Objelerin ortaya çıkması için bir coroutine oluşturun
Tıklama ve sensör yoluyla hedefleri yok edin
Ders Özeti

Skor Tutmak
Skor metni ekle ekranda konumlandırın
Puan Metninin özelliklerini düzenleyin
Puan metnini ve değişkeni başlat
Yeni bir UpdateScore yöntemi oluşturun
Hedefler yok edildiğinde puan ekleyin
Her hedefe bir puan değeri atayın
Parçacık patlaması ekleyin
Ders Özeti

Game Over Giriş
Game Over metin nesnesi oluşturun
GameOver metninin görünmesini sağla
GameOver fonksiyonu oluştur
Stop spawning and score on GameOver
Yeniden Başlat butonunu ekle
Yeniden başlatma butonunun çalışmasını sağlayın
Oyun bittiğinde yeniden başlat butonunu göster
Ders Özeti

Zorluk Nedir?
Başlık Metni ve Menü Butonları Oluşturma
Zorluk Seviyesi İçin DifficultyButton Scripti Ekleme
Butona Tıklandığında SetDifficulty Metodunu Çağırma
Yeni Butonlarınız ile Oyunu Başlatma
StartGame’de Başlık Ekranını Devre Dışı Bırakma
Zorluğu Değiştirmek İçin Parametre Atama
Ders Özeti

Genel Bakış
Uyarı

Bonus Özellikler 5 Genel Bakış
Kolay: Lives UI
Orta: Müzik sesi
Zor: Pause menüsü
Uzman: Tıkla-ve-kaydır

Assets kitaplığını içe aktarın ve göz atın
Oynatıcıyı yeni assetsla değiştirin
Assets mağazasına göz atın
Oyuncu olmayan tüm temel öğeleri değiştirin
Arka plan dokusunu değiştirin
Replace the background texture
Ders Özeti

Kullanıcı geri bildirimine ve testine giriş

Proje Optimizasyonu - Giriş
Değişken özellikleri
Unity Event Fonksiyonları
Object Pooling
Ders Özeti

Make the vehicle use forces
Prevent car from flipping over
Add a speedometer display
Add an RPM display
Prevent driving in mid-air
Lesson Recap
Sharing your Projects

ECS Hayatta Kalma Rehberi

Kariyer araştırması ve hazırlık

Portfolyolara Giriş

Junior Programmer: Sahne akışını ve verilerini yönetin
Başlık
Sürüm kontrolünü ayarla
Örnek projeyi keşfedin
Nesne yönelimli programlamanın ilkeleri
Bir sahne akışı oluşturun
Sahneler arasında veri kalıcılığı uygulayın
Oturumlar arasında veri kalıcılığı uygulayın

Gönderim: Yeni bir depoda veri kalıcılığı
7.5 Veri kalıcılığını uygulayın

Nesne yönelimli programlamada soyutlama

Nesne yönelimli programlamada kalıtım ve polimorfizm

Nesne yönelimli programlamada kapsülleme

Sorunları belirlemek için profil kodu

Job preparation: Junior Programmer

Sunum: Programlama teorisi iş başında

Programlama teorisi iş başında

Artık nesne yönelimli programlamanın temellerini ve bunların nasıl uygulandığını anladığınıza göre, bunları yepyeni bir projede uygulamaya hazırsınız. Bu aynı zamanda bir versiyon kontrol deposunda dallanma ve birleştirme alıştırması yapmak için iyi bir fırsattır.

Adım 1 Bu görev güncellendi! Bu görevi, siz bakmıyorken yenilememiz durumunda, lütfen bu sunumu denemeden önce aşağıdaki içeriği tamamladığınızdan emin olun:

  • Görev— Junior Programmer:Sahne Akışını ve Verileri Yönetin (Junior Programmer: Manage scene flow and data)
  • Nesne yönelimli programlamada soyutlama (Abstraction in object-oriented programming)
  • Nesne yönelimli programlamada kalıtım(miras) ve polimorfizm (Inheritance and polymorphism in object-oriented programming)
  • [Nesne yönelimli programlamada kapsülleme (Encapsulation in object-oriented programming)
  • Sorunları belirlemek için profil kodu (Profile code to identify issues)](https://learn.unity.com/tutorial/profile-code-to-identify-issues)

Adım 2 Bu görev güncellendi!

Önceki eğitimlerde, nesne yönelimli programlamanın dört sütununu ve bunların nasıl uygulandığını öğrendiniz:

  • Soyutlama: Tekrarlanan ayrıntıları veya bilgileri “soyutlayarak” yinelenen kodu azaltmak.
  • Kapsülleme: Verileri "kapsülleme" ve bu verileri bir sınıfta birlikte manipüle eden ve onu diğer sınıflar tarafından kötüye kullanılmasına karşı koruyan yöntemler.
  • Kalıtım: Üst sınıflardan davranış türeyen (veya “miras alan”) alt sınıflar.
  • Polimorfizm: Yöntemlerin çok sayıda ("çoklu") biçime dönüştürülmesi ("dönüştürme") (yani, yöntem aşırı yüklemesi ve yöntemi geçersiz kılma).

Bu sunum görevinde, koddaki bu sütunların her birini gösteren sıfırdan yeni bir proje yaratacaksınız.

Kodlamaya başlamadan önce programınızın mimarisini yüksek dikkatle planlayın. Bu arada, versiyon kontrol yazılımını kullanarak dallandırma ve birleştirme kodu alıştırması yapma fırsatınız olacak.

Bu challenge kolay olmayacak, ancak tamamladığınızda daha düşünceli, stratejik bir programcı olacaksınız!

Başarılı bir sunum şunları içerecektir:

  • Projenizin GitHub reposuna(depo) bağlantı, commit mesajları ve en az iki dal(branch) içeren birden çok commiti gösteren bir bağlantı
  • Soyutlamanın gösterilmesi (gereksiz ayrıntıları soyutlayan üst düzey yöntemler)
  • Kalıtımın gösterilmesi (parent/child sınıflar)
  • Polimorfizmin gösterilmesi (method geçersiz kılma veya aşırı yükleme)
  • Kapsüllemenin gösterilmesi (get ve set)

Adım 3 Yeni bir repo oluşturun ve ilk commitinizi yapın

Teorik programlama yapılarına fazla karışmadan önce, projenizin versiyon kontrolü için doğru şekilde kurulduğundan emin olun.

  • Unity için “Programming-Theory-Repo.” gibi bir adla yapılandırılmış yeni bir repo oluşturun.

figures

Alt text: GitHub Masaüstünden Ad “Programming-Theory-Repo” olarak ayarlanmış ve Git Ignore açılır menüsü Unity olarak ayarlanmış yeni bir Depo penceresi oluşturun.

  • Deponuzda “Programming Theory Project” gibi yeni bir boş 3D Unity projesi oluşturun.
  • Projeniz oluşturulduktan sonra, depoya bir ilk committe bulunun.

figures

Alt text: Özet "initial commit" olarak ayarlanmış ve Açıklama "empty 3d project on Unity 2020LTS " olarak ayarlanmış Github Desktop'ın commit paneli

Artık yeni bir versiyon kontrol deposunda yedeklenmiş boş bir Unity projeniz olmalıdır.

Yukarıdaki görevlerden herhangi birinin nasıl yapılacağına dair bir hatırlatıcıya ihtiyacınız varsa, önceki sunumdaki adımlar( steps in the previous submission ) daha ayrıntılı.

Adım 4 Projenizi Tasarlayın

Projeniz ve deponuz kullanıma hazır olduğunda, projeniz için nesne yönelimli programlamanın dört sütununu göstermenize izin verecek bir konsept bulmak için biraz zaman ayırın.

Bu projenin gerçek bir tam teşekküllü projeden ziyade bir prototip olabileceğini unutmayın. İlkel şekiller kullanabilir veya hatta tamamen metin tabanlı olabilir. Boş bir tuvalle de başlamanız gerekmez – Code ile Ekleyi tamamladıysanız, prototiplerden veya zorluklardan birindeki varlıkları yeniden kullanabilirsiniz. Amaç, sıfırdan görsel bir şaheser yaratmak değil - sadece OOP sütunlarını: soyutlama, kapsülleme, kalıtım ve çok biçimlilik. gösteren yaratıcı bir şey bulmaktır.

figures

Alt text: Soyutlama, Kapsülleme, Kalıtım ve Polimorfizm ile soldan sağa etiketlenmiş, arka arkaya dört sütunun görüntüsü.

Konseptinizi geliştirirken, fikirlerinizi bir tasarım belgesinde veya proje özetinde özetleyin ve izleyin. Kod ile Ekleyi tamamladıysanız, Kişisel Proje laboratuvarlarınızda kullandığınız şablondan ilham alın( Personal Project labs. ). Az önce üzerinde çalıştığınız Kaynak Yönetimi projesinin tasarım özetinden de yararlanabilirsiniz( design brief ). Belgeniz madde işaretli bir taslak, eskizler, diyagramlar içerebilir - fikirlerinizi düzenlemenize ve yinelemenize en iyi ne izin verirse.

Tabii ki, normal proje geliştirme sürecinde, proje özelliklerinizi asla programlama kavramlarını gösterme ihtiyacına dayandıramazsınız! Tersi olurdu: programlama kavramlarına duyulan ihtiyaç proje özellikleri tarafından yönlendirilir. Ancak, öncelikleri tersine çevirmek eğlenceli bir tasarım mücadelesi sunuyor! Bu dört programlama konseptini kullanan bir projeyi nasıl tasarlayabilirsiniz? Sütunları aşağıdaki sırayla düşünmek en yararlı olabilir:

Kalıtım – nesnelerinizi seçin

Beyin fırtınanıza başlamak için, davranışları daha genel bir nesneden türeten hangi nesneler düşünebilirsiniz? Diğer nesnelerin alt türleri olan hangi nesneleri düşünebilirsiniz? Örneğin:

  • Hayvan → Kedi / Köpek
  • Araç → Uçak / Araba / Tekne
  • Ekmek kızartma makinesi → Temel ekmek kızartma makinesi / Lüks ekmek kızartma makinesi / Premium ekmek kızartma makinesi

Bunlar, kodunuzda kalıtımla uygulayabileceğiniz parent/child ilişkilerinin yalnızca birkaç örneğidir. Bu sütun hakkında daha fazla ayrıntı için devralma eğitimini inceleyin ( inheritance tutorial ).

Tasarım belgenizde veya proje özetinizde: Proje konseptiniz için başlangıç noktası olarak hizmet etmek istediğiniz nesneleri not edin.

Polymorphism - davranışlarınızı seçin

Projeniz için kullanabileceğiniz nesnelerin türlerine ve alt türlerine karar verdikten sonra, bu nesnelerin programınızda gerçekleştirebileceği davranış türlerini ve bu davranışların nesne alt türüne bağlı olarak nasıl "değişebileceğini" düşünün. Örneğin:

  • Tüm hayvanlar bir Jump() işlevine sahip olabilir, ancak bir kedinin bir köpekten farklı atlama yetenekleri olabilir.
  • Tüm araçların bir Move() işlevi olabilir, ancak bir uçak her üç boyutta da hareket eder ve geriye doğru hareket edemez.
  • Tüm ekmek kızartma makinelerinin bir Toast() işlevi olabilir, ancak birinci sınıf ekmek kızartma makinesinin özel bir "simit" ayarı da olabilir.

Bildiğiniz gibi polimorfizm aynı adı taşıyan methodların farklı parametre tipleriyle aşırı yüklenilerek birçok forma sahip olması (“poly” + ”morflar”) anlamına da gelir. Bu methodlardan birinin alabileceği farklı parametre girişlerini de düşünebilirsiniz. Örneğin, bir Jump() işlevi, atlamanın maksimum yüksekliğini [Jump(float maxHeight)] veya ona uygulanan kuvveti [Jump(Vector3 jumpForce)] alabilir.

Bu sütun hakkında daha fazla ayrıntı için polimorfizm eğitimini inceleyin.( polymorphism tutorial )

Tasarım belgenizde veya proje özetinizde: Uygulamanızda programlamak istediğiniz işlev veya davranış türlerini listeleyin.

Kapsülleme – verilerinizi seçin

Kapsülleme, bir sınıftaki verileri kötüye kullanılmaması ve uygulamanızı bozmaması için korumakla ilgilidir. Diğer sınıfların bunları almasına veya ayarlamasına izin verirken, hangi verileri bu şekilde korumak istediğinizi düşünün. Örneğin:

  • Bir hayvan için adını get veya set etmeniz gerekebilir, ancak adın çok uzun olmasını önleyin.
  • Bir araç için yılını get veya set etmeniz gerekebilir, ancak yılın negatif bir sayı olmadığından emin olun.
  • Bir ekmek kızartma makinesi için ekmek türünü get veya set etmeniz gerekebilir, ancak bunun geçerli bir ekmek seçeneği olduğundan emin olun.

Bu sütunla ilgili daha fazla ayrıntı için kapsülleme eğitimini inceleyin( encapsulation tutorial ).

Tasarım belgenizde veya proje özetinizde: Projenizde kapsüllemek istediğiniz işlev veya veri türlerini kaydedin.

Soyutlama – Fonksiyonlarınızı ekleyin

Soyutlama, muhtemelen kodlamaya başladıktan sonra uygulanması en kolay kavram olacaktır, ancak başlamadan önce projenizde olmasını istediğiniz bazı üst düzey işlevleri düşünmek faydalı olabilir. Örneğin:

  • Hayvanlar için Walk(), Jump(), Talk() fonksiyonları olabilir
  • Araçlar için TurnOn(), Move(), ve TurnOff() fonksiyonları olabilir.
  • Tost makinası için Start(), SetLevel(), ve Cancel() fonksiyonları olabilir.

Bu sütun hakkında daha fazla ayrıntı için soyutlama eğitimini inceleyin( abstraction tutorial ).

Tasarım belgenizde veya proje özetinizde: Kodunuzda yeniden kullanım için yararlı olabilecek bazı üst düzey işlevlere dikkat edin.

Şimdi projenizde neyi başarmak istediğinize dair bir fikriniz olmalı - hala çok kavramsal gelse bile - ve fikirlerinizi bir belgeye kaydetmelisiniz.

Projeniz için ne yapacağınız konusunda hala kendinizi kaybolmuş hissediyorsanız, işte size son derece basit bir proje fikri:

  • Bir temel “shape” sınıfından (kalıtım) türetilen üç farklı renkli şekil vardır.
  • Her şekle tıkladığınızda, geçersiz kılma DisplayText() methodu (polimorfizm) aracılığıyla ekrana farklı bir şey yazdırır.
  • Her şekil, adı veya rengi gibi get ve set (kapsülleme) ile özellikler olarak depolanan verileri içerir.
  • Kod, daha yüksek düzeyli methodlarla (soyutlama) yinelenen kodu azaltacak şekilde düzenlenir.

Adım 5 Başlık ekranınız için bir dal(branch) oluşturun ve değişiklikleri commit yapın

Özellikle birden fazla geliştiriciyle çalışırken, branchlar versiyon kontrolü için inanılmaz derecede faydalıdır. Geliştiriciler genellikle yeni bir özelliği uygulamaya başladıklarında yeni bir branch başlatırlar ve deney yaparken diğer geliştiricilerin koduna müdahale etmek istemezler.

Yeni özelliği uyguladıktan sonra branchı tekrar ana branchta birleştirecek ve ardından ortaya çıkan birleştirme çakışmalarıyla ilgileneceksiniz. Birleştirme çakışmalarının ne olduğunu hatırlamıyorsanız, Veersiyon kontrolünü ayarlama eğitimine( Set up version control ) geri dönebilirsiniz.

Bu işlemden kurtulmak için projenizin başlık ekranı için yeni bir branch oluşturun ve birleştirin. Uygulamanız bir başlık ekranı istemiyorsa, bunun yerine projenizin başka bir basit özelliğini kullanın.

  • Deponuzda yeni bir branch oluşturun ve buna "title-screen" gibi bir ad verin. Yeni bir branchın nasıl oluşturulacağından emin değilseniz GitHub belgelerindeki talimatları izleyin ( instructions in the GitHub documentation ). Bu dalda, başka bir geliştiricinin çalışmasına müdahale etmeden yeni özelliğinizi güvenle deneyebileceksiniz.

figures

Alt text: Ad alanındaki metin “title-screen” olarak ayarlanmış bir GitHub Masaüstü penceresi oluşturun.

Şimdi “Mevcut branch”ın yeni branchınıza ayarlandığını görmelisiniz.

figures

Alt text: GitHub Desktop'taki mevcut branch açılır menüsü title-screen”.olarak ayarlandı “

  • Yeni branchta başlık ekranınızı geliştirin. Projenizde, sunumunuz için basit bir başlık ekranı oluşturun. Seçtiğiniz proje konseptiyle alakalı olmalı ve aşağıdaki örnekte olduğu gibi çok basit olmalıdır.

figures

Alt text: Bir kullanıcının adını girmesi için bir başlık ve bir metin alanı içeren örnek proje başlığı ekranının oyun görünümü. Çalışmanızı geliştirirken ve kaydederken, versiyon kontrol yazılımınızın Changes panelinde branchınıza yapılan tüm düzenlemeleri ve eklemeleri görmelisiniz.

  • Bu branchtaki değişiklikleri ana dal ile birleştirmek için yaptığınız değişiklikleri taahhüt edin. Versiyon kontrol yazılımında bir özet ve açıklama ekleyin, ardından [branch-name] olarak commit et’i seçin.

figures

Alt text: Özet "title-screen" ve Açıklama "added text title,added entry box for name" olarak ayarlanmış Github Desktop'ın Commit paneli. Değişiklikleriniz artık branchınıza bağlı ve ana branch ile birleştirilmeye hazır.

Adım 6 - Branchınızı ana branch ile birleştirin

Başlık ekranınız (veya diğer özelliğiniz) tamamlandığında, artık deneysel branchınızı ana geliştirme branchıyla birleştirmeye hazırsınız.

  • Ana şubeye dönmek için, ana şubeyi seçmek için Mevcut Şube açılır menüsünü kullanın.

figures

Alt text: GitHub Desktop'ta ana dalın vurgulandığı mevcut dal açılır menüsü.

Ana şubeye geri döndükten sonra, Unity sahnenizdeki tüm değişikliklerin kaybolduğunu göreceksiniz. Endişelenmeyin, yeni özelliğinizi uygulamaya başlamadan önce projenizin durumuna geri döndüğünüz için bu beklenir. Özellik, büyük birleşmeden sonra projede yeniden görünecek.

Son commitinizden bu yana değişiklik yaptıysanız, şubede "Değişiklikleri bırak" mı yoksa ana şubeye "Değişiklikleri getir" arasında seçim yapmanız istenebilir. Bu, şubenizde henüz taahhüt edilmemiş değişiklikleriniz olduğu anlamına gelir. İptal edin, tüm değişikliklerin şubenizde yapıldığından emin olun ve ana şubeye tekrar geçmeyi deneyin.

figures

Alt text: GitHub masaüstünde dalda değişiklikler olduğuna dair bir uyarı görüntüleyen ve kullanıcıya geçiş yapmadan önce değişiklikleri şubede bırakma veya değişiklikleri yeni şubeye getirme seçeneği sunan Branch değiştir penceresi.

  • Branch açılır menüsünden Ana branchla birleştirmek için bir branch seçin'i seçin. Ardından, diğer branchınızı seçin ve [branch-name] ana ile birleştir'i seçin.

figures

Alt text: GitHub Desktop'ta " Choose a branch to merge into main" düğmesi vurgulanmış olarak mevcut şube açılır menüsü

figures

Alt text: GitHub Desktop'ta, kullanıcının 1 commiti başlık ekranından ana branch ile birleştirmek istediğini onaylayan birleştirme penceresi. Pencerenin altındaki Birleştir düğmesi vurgulanır. Unity sahnenize döndüğünüzde, branchınızda yaptığınız değişikliklerin artık ana brancha yansıdığını göreceksiniz. Başarılı bir birleştirme için tebrikler!

Adım 7 Sunumunuz üzerinde çalışmaya devam edin

Artık reponuzda daha rahat dallanma ve birleştirme yaptığınıza göre, projenizi bu teknikleri kullanarak geliştirmeye devam etmelisiniz.

Unutmayın, projeniz kodunuzda OOP'nin dört sütununun her birini göstermelidir, bu kolay bir başarı olmayacaktır. En az birkaç saat ayırmayı planlayın; bunların çoğu, büyük olasılıkla sorun giderme ve Google'da gezinme için harcanacaktır.

Adım 8 Projenizi Gönderin

OOP'nin dört sütununu projenize uyguladıktan sonra, lütfen projenizi gönderin ve paylaşın! Yine de yapmadan önce, oyunu baştan sona test ettiğinizden emin olun - veya daha da iyisi, bir arkadaşınıza veya aile üyenize oyun testi yaptırın. Başarılı bir sunum şunları içerecektir:

  • Projenizin GitHub deposuna bir bağlantı, commit mesajları ve en az iki branch ile birden fazla commit gösterir.
  • Kalıtımın gösterilmesi (parent/child). Nerede uygulandığını belirtmek için koda “// INHERITANCE” yazan bir yorum ekleyin.
  • Polimorfizmin gösterilmesi (method geçersiz kılma veya aşırı yükleme). Nerede uygulandığını belirtmek için koda “// POLİMORFİZM” yazan bir yorum ekleyin.
  • Kapsüllemenin gösterilmesi (se ve get). Nerede uygulandığını belirtmek için koda “// ENCAPSULATION” yazan bir yorum ekleyin.
  • Soyutlamanın gösterilmesi (gereksiz ayrıntıları soyutlayan üst düzey yöntemler). Nerede uygulandığını belirtmek için koda “// ABSTRACTION” yazan bir yorum ekleyin.

Lütfen projenizin ekran görüntüsünü alın ya da bize yol gösteren bir ekran kaydı yapın, ardından yaptıklarınızı paylaşmak için buraya gönderin.

En az bir diğer içerik oluşturucunun gönderimi hakkında yorum yapmanızı önemle tavsiye ederiz. Meydan okumayı başarıyla tamamladılar mı? Projeyle ilgili neyi beğeniyorsunuz? Eklemeyi düşünebilecekleri harika bir yeni özellik ne olabilir?

Previous

Lesson discussion

Swap insights and ask questions about “Unity Junior Programmer”.

Enroll to participate
Start the course to unlock the discussion. Enrolling helps us keep conversations relevant to learners.
Cohorts
WebsiteDiscoverBlogPatika.devRise In
CoursesCircleRustSoliditySolanaWeb3 FundamentalsBlockchain Basics
CompanyAbout UsTerms of UsePrivacy PolicyGDPR NoticeCookies
Don't miss any update!

Disclaimer: The information, programs, and events provided on https://cohorts.patika.dev is strictly for upskilling and networking purposes related to the technical infrastructure of blockchain platforms. We do not provide financial or investment advice, nor do we make any representations regarding the value, profitability, or future price of any blockchain or cryptocurrency. Users are encouraged to conduct their own research and consult with licensed financial professionals before engaging in any investment activities. https://cohorts.patika.dev disclaims any responsibility for financial decisions made by users based on the information provided here.

© 2026 Cohorts, All rights reserved