‫Merhaba ve hoş geldiniz.
‫Bu derste, bir silah yaratacağız ve bu oyun için silahları nasıl tasarlayacağımızı
‫öğreneceğiz, böylece değiştirilebilirler, böylece farklı silah türlerinde farklı özelliklere sahip
‫olabiliriz.
‫Ve genellikle birinci şahıs veya üçüncü şahıs nişancı oyunlarında mimariler bu şekilde çalışır, hadi dalalım ve nasıl yapıldığını
‫görelim.
‫Tamam.
‫Bu yüzden bir süredir proje planımızı kontrol etmedik.
‫Plana ne zaman ulaşırsak, hareket o zaman tamamlanır.
‫Şimdilik animasyon tamamlandı ve çekimlere odaklanmamız gerekiyor.
‫Şimdi, burada biraz kafa karıştırıcı çünkü ağımızın zaten bir silahı var gibi görünüyor, ama aslında bu silahı
‫kullanmak istemiyoruz.
‫Biz bunu farklı bir şekilde kullanmak istiyoruz.
‫Nişancı türünde bir oyunda, genellikle silahlar arasında geçiş yapabilmek veya en azından farklı karakterlere sahip
‫olmak, farklı silahlara sahip olmak istersiniz.
‫Ve bunu yapmanın en kolay yolu, silahı karakterden ayrı bir şey olarak tasarlamaktır, böylece onları değiştirebilirsiniz,
‫böylece nasıl ateş ettiğinden sorumlu olabilir.
‫Roketatar, pompalı tüfek ya da tüfek ise, işleri farklı şekillerde yapacaklardır.
‫Şimdi, tamam, bir silah bileşeni oluşturalım ve bu silah bileşenini ağımızın altına
‫yapıştırabiliriz diyebilirsiniz, bu işe yarar, ancak o zaman silaha birden fazla bileşen eklememize olanak tanıyan
‫modülerliği kaybederiz.
‫Bu yüzden gerçekten yapmak istediğimiz şey, tetikçi karakterine göre çocuksu olan silah için bir oyuncuya sahip olma
‫yoluna gitmek.
‫Şimdi, bu daha önce karşılaşmadığımız bir şey, ama şu şekilde çalışıyor.
‫Bir nişancı karakteriniz ve onun çocuğu olarak bir silahınız olabilir ve nişancı karakteri, birbirinin alt kimliği olan birden
‫fazla bileşene sahip olabilir.
‫Yani kapsülünüz var, şu anda kapsülün bir alt öğesi olarak ağımız var ve silahın
‫bileşenleri bunun alt kimliği olabilir.
‫Böylece ağ, karakterin ağına alt kimlik alır.
‫Ve eğer silahın ağzında bir parçacık efekti gibi başka bileşenler varsa, bunlar
‫da ağa eklenebilir.
‫Böylece bu hiyerarşilerin bağımsız olduğunu, sahne bileşenlerine sahip olduğunuzu, sağ tarafta dönüşümlere
‫sahip olanları ve bunların belirli bir hiyerarşide olabileceğini görebilirsiniz.
‫Ve sonra aktör hiyerarşisi aslında sahne bileşenlerinin hiyerarşisini takip eder.
‫Oyuncuların kendi aralarında bir hiyerarşisi yok.
‫Kafanızı toparlamanız biraz zaman alan ve benim için bir tıklama
‫anı olan bu kısım, gerçekte oyuncuların hiyerarşisi olmadığı, sadece sahne bileşenlerinin hiyerarşisi
‫olduğudur.
‫Sahne bileşenlerine sahip olan aktörler vardır ve bu nedenle sahne bileşenleri birbirleriyle ilişkili
‫olduğu için bir hiyerarşiye sahip olurlar, ancak aslında kendi aralarında bir ilişkileri yoktur.
‫Bunu söyledikten sonra, bağlamı ayarlamak için, gidip yapmak istediğimiz ilk şey aslında kendimize
‫bir C++ silah aktörü yaratmak.
‫Ve bu durumda bir piyon ya da karakter ya da buna benzer bir şey olmayacak.
‫Sadece basit bir aktör olacak çünkü herhangi bir davranışa ihtiyacımız yok.
‫Ona sahip olmanıza gerek yok.
‫Hiçbir şey yapmamıza gerek yok.
‫Bu kadar basit, basit bir aktör.
‫O zaman devam edelim ve bunu yapalım.
‫Aslında, sizin için küçük bir meydan okuma.
‫Devam edin ve o C++ aktörünü yaratın, küçük bir mini meydan okuma yapabilmeniz gereken bir şey, deneyin.
‫Tamam.
‫Ve geri dönersek, bunu yeni bir C++ sınıfı olarak yapacağım ve aktörümüz olmasına gerek yok.
‫Seçmek istediğimiz bu ve devam edip bu sınıfa gun adını vereceğiz, bu kadar basit, hadi bu sınıfı
‫oluşturalım.
‫Bu işlem tamamlandığında, kod düzenleyicinizde açılacak ve henüz onunla bir şey yapmamıza
‫gerek yok çünkü yapmak istediğim ilk şey bir blueprint alt sınıfı oluşturmak.
‫Bu yüzden içerik tarayıcısında sınıfınıza sağ tıklayın ve ona Silahım demek yerine, neden otomatik olarak bip
‫alt çizgi silahını varsayılan olarak ayarladığını bilmiyorum.
‫Bunu içeriğin köküne koyacağım.
‫Dört.
‫Şimdi daha fazla sınıfımız olduğunda biraz yeniden düzenleme yapabiliriz.
‫Daha önce de söylediğim gibi, Blueprint sınıfını oluşturacağız.
‫Gördüğünüz gibi, tamamen boş.
‫Varsayılan sahne kökü var.
‫Bunu düzeltmek isteyeceğiz.
‫Yapmak istediğimiz şey aslında C++'da bir bileşen eklemek çünkü bu bir C++ kursu.
‫C++'da bileşen ekleme konusunda pratik yapalım.
‫Bu aynı zamanda, C++ kodumuzun içinden bu bileşenlere erişebileceğimiz ve kodumuzu orada değiştirip yazabileceğimiz
‫anlamına gelir.
‫Şimdi isteyeceğimiz kurulum, sadece bir sahne bileşeni olacak olan bir sahne kök bileşenine ve
‫ardından bunun bir çocuğu olan bir ağa sahip olmaktır.
‫Bunu neden istiyoruz?
‫Çünkü tabancanın köküne göre ağın konumunu değiştirebilmek istiyoruz, böylece kolu temelde farklı
‫ağlar için farklı konumlara yerleştirebiliriz.
‫Dolayısıyla, farklı silahlarımız varsa, hepsinin aynı yerde bu tutamağa sahip olduğundan
‫emin olabiliriz, böylece karakterin eline taktığımızda, karakterin elinde tutamağı ile görünecektir.
‫Peki bunu nasıl yapacağız?
‫Visual Studio kodumuza gideceğiz ve burada, bulacağımız farklı bileşenler için yeni
‫özellikleri depolayacağımız özel bir bölüm oluşturacağım.
‫Bu yüzden, bileşenlerimizin işaretçi oldukları için her yerde görünür olmalarını istediğimiz yeni bir visible anywhere özelliği
‫oluşturacağım.
‫İşaretçileri düzenleyebilmek istemiyoruz, ancak bu işaretçilerin özelliklerini görebilmek ve düzenleyebilmek
‫istiyoruz.
‫Bunlar, daha sonra işaret ettiğimiz sınıfın yetki alanı haline gelir.
‫Bu daha sonra neyin gösterileceğine, neyin düzenlenebileceğine karar verir.
‫Yani burada söylemek istediğimiz tek şey, düzenlenebilir olanın işaretçi olmadığıdır.
‫Zaten bu yüzden görünür olmak için gidiyoruz.
‫Her neyse, orada biraz revizyon var.
‫Şimdi bunun bir siz olmasını istiyoruz çünkü bu bir bileşen, o zaman istediğimiz bir sahne bileşeni.
‫Doğru yazabilirsem, bileşenleri gördüm ve bu ona bir işaretçi ve bu bizim kök
‫bileşenimiz olacak.
‫Bunun gibi ve sonra bir mülk isteyeceğiz.
‫Yine ağımız için her yerde görülebilir.
‫Kafes için sınıf yeni bir statik kafes bileşeni olacak çünkü bu bir iskelet kafesi değil, sert,
‫herhangi bir iskeleti, kemiği yok.
‫Bu yüzden bunun bir işaretçi olmasını isteyin ve bu sadece ağı bu şekilde çağıracak.
‫Aslında, burada biraz dikkatli olmam gerektiğini düşünüyorum çünkü kök bileşenin actor için ana sınıfta
‫zaten var olduğunu düşünüyorum.
‫Onun yerine bu rotayı arayacağım.
‫Ve sonra C++'da zaten bir kurucumuz var.
‫Sadece uygun başlık dosyalarını buraya eklememiz gerekecek.
‫Şimdi, Visual Studio kodundayken küçük bir numara, bir başlık dosyasının nerede olabileceğini bulmaktır.
‫Control P'yi kullanıyorsunuz ve arama yapıyorsunuz.
‫Bu durumda, statik ağı bilmek istiyoruz.
‫Yani statik örgü bileşenleri ve statik örgü bileşenlerinin nokta h olduğunu görebiliriz, eğer devam edip açarsam ve sekmenin
‫üzerine gelirsem, bu uzun yolun altında olduğunu görebilirsiniz.
‫Ancak ilginç olan kısım, sınıfların altında olması ve oradan yukarı bakabilmemiz.
‫Bileşenler, statik ağ bileşeni olacak.
‫Bu sekmeyi kapatabilirim ve dahil ettiğimiz bileşenin hemen üstünde, aslında silahımız için dahil
‫ettiğimiz bileşenin altında, bileşenler ve ardından statik örgü bileşeni için bir karma dahil edeceğiz.
‫Aslında şimdi hatırladım, bir nedenden dolayı sahip olduğumuz kafesler aslında statik kafesler değil.
‫Sanırım iskelet ağları olabilirler.
‫Bunu varlık paketlerine girerek, bir oyun silahı ateşleyerek ve bu önlemlere bakarak öğrenebilirsiniz.
‫Ve yeterince eminim, eğer üzerlerine gelirseniz, iskelet kafesleri olduklarını görebilirsiniz.
‫Bana nedenini sorma.
‫Bazı nedenlerden dolayı öyle.
‫Bu yüzden başlık dosyasında türü iskelet ağ olarak değiştirmek isteyeceğiz.
‫Bu yüzden statik ağ yerine iskelet ağını kullanacağız.
‫Aynı şey iskelet için de geçerli olacak.
‫Hatırlamak istediğimiz ağ bileşenleri.
‫Başlık dosyalarında sen yoksun.
‫Ve sanırım burada zaten varsayılan olarak bulunan bileşenleri görüyorlar.
‫Bu yüzden kendi ağ bileşeninizi eklemek için bir meydan okuma zamanı.
‫Bir kök sahne bileşeni oluşturacağız, bunu kök olarak ayarlayacağız ve sınıf için kök olarak ayarlayacağız ve bir örgü bileşeni
‫oluşturacağız ve ikisi arasındaki bağlantıyı, örgü bileşeni bu kök dikiş bileşeninin bir çocuğu
‫olacak şekilde ayarlayacağız.
‫Videoyu duraklatın ve deneyin.
‫Tamam, tekrar hoş geldin.
‫Şimdi gidip ayarlayacağız.
‫Her şeyden önce, kökümüz, varsayılan alt nesne türü oluşturacak.
‫Bileşenleri gördünüz ve ardından metin makrosuyla birlikte olacak bir ad vereceğiz, buna kök diyeceğiz
‫ve noktalı virgülle bitireceğiz.
‫Sonra bunu kök olarak ayarlayacağız.
‫Bu yüzden kök bileşenleri ayarlamak onu aktör için kök bileşen olarak ayarlayacaktır.
‫Bu yüzden root'u kök bileşen olarak ayarlayın.
‫İyi mal.
‫Sonra ağımızı oluşturmak isteyeceğiz.
‫Yani mesh eşittir varsayılan alt nesne oluştur ve sınıf olarak istediğimiz iskelet mesh bileşenidir ve daha sonra metin
‫makrosu sadece mesh olarak adlandırılacak ve sonuna noktalı virgül eklenecektir.
‫Daha sonra eklentiyi kurmak istiyoruz.
‫Yani örgü ok kurulumu olacak.
‫Eki ayarlayın ve çok havalı şeyler gibi köke eklemek isteyeceğiz, böylece devam edip bunu
‫kaydedebilir ve umarım derleyip oluşturabiliriz ve Unreal'a gidip alt sınıfımıza bir
‫göz atacağız.
‫Ve elbette, burada kendimize ait bir kökümüz var, alt ağımız var, ayrıca etrafta asılı duran bu varsayılan
‫sahne kökümüz var, bence editörü yeniden başlatalım ve bunun ortadan kalkıp kalkmadığını görelim.
‫Bazen bileşen eklerken, bazı şeyler bu şekilde oyalanabilir ve önbelleğe alınabilir.
‫BP tabancasının planlarını tekrar açarsak, sadece bu iki bileşene sahip olduğumuzu görebilirsiniz.
‫Kökü ve ağı ekledik ve muhtemelen devam edip ağı shooter oyununun varlık paketlerindeki iskelet
‫ağlarından biriyle değiştirmek istiyoruz.
‫Tüfeğimiz var, fırlatıcımız var.
‫Tüfek olarak bunu seçeceğim.
‫Yani aslında buna BP silahı demek biraz samimiyetsizlik olur.
‫Bu muhtemelen BP tüfeği olmalı.
‫Şimdi bunu yeniden adlandıralım, içerik tarayıcısına gidelim ve BP Rifle veya BP Gun, alt çizgi tüfek olarak yeniden
‫adlandıralım.
‫Şimdi doğrudan BP tüfeği deyin.
‫Al bakalım.
‫Ve bu bize bir silah verdi.
‫Açıkçası, şimdi bu, C++'da yeni özellikler oluşturarak bu aktöre karşı silahın gücü,
‫menzili ve benzeri gibi her türlü özelliğe sahip olabileceğimiz anlamına geliyor.
‫Bu mimariye sahip olmanın en güçlü yanı da silahların biraz daha farklı olabilmesidir.
‫Tüfeklere karşı keskin nişancılara karşı RPG'lere karşı farklı atış mekaniklerine sahip olabiliriz, bunun gibi şeyler.
‫Yani bu harika.
‫Ayrıca farklı istatistiklere sahip olabiliriz, böylece farklı plan alt sınıflarına bağlı olarak güçlü bir tüfeğe
‫ve zayıf bir tüfeğe sahip olabiliriz.
‫Harika şeyler.
‫Şimdi bir sonraki derste, bu silahı mevcut karakterimizin bir çocuğu olarak nasıl
‫ortaya çıkaracağımıza bakacağız.
‫Orada görüşürüz.