qukla

Unreal MVP
16 Tem 2015
381
90
0
(35) İzmir
Sorumun sorulma kısmı bile karışık biraz, umarım anlaşılır şekilde sorabilirim : )

Basit bir inventory ( çanta ) sistemi yaptım. Her şey gayet güzel çalışıyor. Class Blueprint le bir tane Masteritem Bluepirnt yaptım, diğer bütün nesneleri bunu referans alarak yapıyorum.
Şu an çantaya alınan nesneleri farklı amaçlar için kullanmakta sıkıntım var.
Mesela: oyuna bir anahtar koydum diyelim, ve anahtarı çantama aldım. Bu anahtarın belirli bir kapıda kullanılmasını nasıl ayarlayacağım? Bunu Level Blueprint' ten klasik anahtar sistemiyle mi yapacağım?
Yani Level Blueprint'de şöyle bir sistem yaptım:

2cpox9j.jpg


Ama bunu her anahtar için yapmak zorunda değilimdir diye düşünyorum. ClassBluprint'le daha kolay yapabilir miyim acaba?

İkinci olarak :
Çanta' ya okunacak bir nesne aldım diyelim. Çanta ya da " oku" diye bir button koydum. Bu button'ı tıkladığımda okunmasını istediğim texture'ı da bir widget' e verdim, bu widget sayesinde o texture ekrana geliyor.
Ben bunu bir classblueprint ile yapabilir miyim? Yani o resmi " BİND" yapsam ve yarattığım nesnede hangi resmi belirlersem onu karşıma getirse ?
Bind'ı şu şekilde yaptım :


dqpex.jpg



Class Default da şu şekilde :

1e2dsp.jpg


Şimdi "hasta kaydı" olan yere hangi resmi koyarsam ekrana widget onu versin istiyorum ama olmuyor. Sadece Widget' de ki border çıkıyor içinde resim yok.

Sorum biraz karışık oldu sanırım kusurabakmayın.

Eğer yardımcı olursanız çok makbule geçer : )
 
Bkz:Mavi ekran nasıl verilir.

:)


Edit:

Bir widget yaratırsan,bu widgeti her create yaptığında texturenin geleceği kısmı senin gelmesini istediğin texture olarak kodla değiştirirsen daha pratik olur,diğerlerini okumadım zamanım yoktu :rolleyes:
 
Anahtar sistemi için en basitinden şöyle birşey yapabilirsiniz:

Her anahtar için bir boolean değişkeni yaratırsınız ve karakter anhtarları inventory'ye aldığı zaman gereken bool True olur. Kapı BP'i içerisinde de AND veya == nodeları ile overlap ve anahtar boollarını kontrol edersiniz Branch'e bağlarsınız. Anahtar bool değerlerini de BP Interface kullanarak widget'tan kapı BP'lerine aktarabilirsiniz.

Texture'ı ekrana getirme olayını biraz daha düşünmem lazım. O widget BP içinde Structure mı kullanıyorsunuz değişkenleri aktarmak için?
 
Create widget node sinde mavi çıkıştan resmi istediği şekilde değiştirebilir (bunun için widgette bind kodu yazmış olması lazım) en kolayı bu şekilde olur bence.
 
SoloWarrior' Alıntı:
Bkz:Mavi ekran nasıl verilir.

:)





Yazdığımı tekrar okudum da , ne demek istediğini anladım :D

Edit:

Bir widget yaratırsan,bu widgeti her create yaptığında texturenin geleceği kısmı senin gelmesini istediğin texture olarak kodla değiştirirsen daha pratik olur,diğerlerini okumadım zamanım yoktu  :rolleyes:



Altı çizili kısmı tam anlamadım : (

Aşağıda rakam koyduğum yerlerle ilgili bir kaç sorum daha var maalesef : )
Jacky' Alıntı:
Her anahtar için bir boolean değişkeni yaratırsınız(1) ve karakter anhtarları inventory'ye aldığı zaman (2) gereken bool True olur. Kapı BP'i içerisinde(3) de AND veya == nodeları ile overlap ve anahtar boollarını kontrol edersiniz(4) Branch'e bağlarsınız. Anahtar bool değerlerini de BP Interface kullanarak widget'tan kapı BP'lerine aktarabilirsiniz.

1- Boolean değişkenini nerede yapayım? Level BP' de mi ?
2- "karakter anahtarı invetory'e aldığı zaman" ı nasıl SET edebilirim?
3- Kapı için ayrı bir BP' mi yapayım? ben sadece anahtar için BP yapıp belirli bir static mesh e (kapıya) gelince , matinee oynat şeklinde birşey düşünmüştüm.
4- Kontrolü nasıl yapacağım? Cast ile mi oluyor

Çok sordum biliyorum : (

Şimdiden teşekkürler.
 
Bir widget yarat içine image at.Bu image boş olsun yani widget yaratılıdğında görünmesin.

Bir binding yarat ve bu binding sayesinde widgeti yarattığın yerde resmi seçerek daha kolay hallet olayları,çizdirme ile filan uğraşma
 
qukla' Alıntı:
Anladım, teşekkürler.

Aslında yukarıdaki bind screenshot'ın da yaptığım da benzerdi, ama ekrana widget resimsiz geldi nedense.

Widget işi sakat iş,son yarım saattir widget animasyonu yapmaya çalışıyorum.

Animasyonu yapması 30 saniye gibi kısa bir süre ama animasyon editörü çalışmıyor.Ne kadar tıklarsan tıkla algılamıyor.

Bu yüzden şu an bile animasyonlu widgetleri sildim kafamdan.
 
Evet malesef Widget animasyonlarından bende muzdaribim. Konudan konuya atlamak gibi olacak ama :
Ekrana animasyonla bir yazı yazıyorum, sonra aynı animasyonla yazı geri gidiyor. Ancak aynı işlemi kısa aralıklarla yapınca animasyon ekrana "yapışıyor" ve level değişene kadar öylece kalıyor, sırf bu yüzden 4 sn delay koydum, oda istediğimi veremiyor ama en azından ekranda yazılar kalmıyor : )

Özetle widget işi beni de yordu biraz : )
 
Widgeti remove etmeden önce stop animaton node sini kullanıyormusunuz?

Bu arada bende şunun çözümünü bulamadım bir türlü (single player oyunda fazla sıkıntı değil fakat multiplayer olunca biraz değişiyor iş)

Şimdi kapının kilidini kırmak için e ye basılı tutuyoruz,widget ve animasyonu başlıyor.

Mesela ben 2 saniye basıp bıraktım,17 saniye sonra tekrar basıyorum ve sistem beni 20 saniye basmış olarak görüyor bundan dolayı animasyon bitmeden kapı açılıyor.

Animasyonun bittiğinde olacakları seçebileceğimiz bir node olsa tüm bu sıkıntılar kalkar gibi.Sizin tekrar geri yazma konusuna gelicek olursak

şöyle bir yol izleseniz.

Animasyonun bitiş süresini çekin (bir node si var)

float+float olarak araya 250 ms gibi bir aralık koyun ardından animasyonu tekrar başlatın fakat geri alma modunda olsun.bitiş süresini zaten çektiğiniz için o süre sonrasında bitsin vs.

Ama bence aradığnız özellik animation play node sundaki ping pong (mesela progress bar tamamen dolduğunda geriye doğru boşalmaya başlıyor,bu özellik ile loop u açarsanız istediğinize ulaşırsınız gibi.İstediğiniz zamanda ise stop animation yaparsınız.)

Bu arada hocam oyun neydi sizin?merakımdan sordum sadece eğer süpürüz yapıcaksanız bize söylemenize gerek yok :D
 
Şimdi internetten baktım da Animasyonun bittiğinde olacakları seçebileceğimiz bir yöntem bulamadım.

Bahsettiğin yol da Çook mantıklı :D çok teşekkürler..


Proje de; her yeni başlayan gibi Korku+adventure, ama yalandan : ) yapıp arkadaşlarıma göndereceğim, zaten oyun içinde geçen karakterler hep eş dost : ) daha çok tecrübe için yapıyorum onu.

Buna ek olarak bir tane de survival projem var. Hoş onu da arkadaşlar için yapıyorum şimdilik. Belki güzel birşey çıkarsa internete koyarım 3-5 kişi indirse oynasa mutlu olurum : )

Senin nasıl bir oyunun var? Eğer sürpriz değilse : )
 
qukla' Alıntı:
Şimdi internetten baktım da Animasyonun bittiğinde olacakları seçebileceğimiz bir yöntem bulamadım.

Bahsettiğin yol da Çook mantıklı :D çok teşekkürler..


Proje de; her yeni başlayan gibi Korku+adventure, ama yalandan : ) yapıp arkadaşlarıma göndereceğim, zaten oyun içinde geçen karakterler hep eş dost : ) daha çok tecrübe için yapıyorum onu.

Buna ek olarak bir tane de survival projem var. Hoş onu da arkadaşlar için yapıyorum şimdilik. Belki güzel birşey çıkarsa internete koyarım 3-5 kişi indirse oynasa mutlu olurum : )

Senin nasıl bir oyunun var? Eğer sürpriz değilse : )

Genellikle bir qukla yı oynadığımız,para babalarından parası için iş alıp suikast düzenleyip milletin arabasına,evine bomba kurduğumuz

gerekli ekipmanları toparlayıp teknoloji marketine ön kapıdan bu bir soygun değildir diyerek girdiğimiz bir oyun ve deneme amaçlı değil maalesef :D

3 tane youtube kanalıyla tanıtım için anlaştım (+350.000 abone) bu şekilde sınıf arkadaşımla birlikte birşeyler yapmaya çalışıyoruz,işin zor tarafı animasyonlar seslendirmeler multiplayer vs.

aslında oyun yapmak zor desek daha mantıklı olacak gibi :D
 
qukla' Alıntı:
1- Boolean değişkenini nerede yapayım? Level BP' de mi ?
2- "karakter anahtarı invetory'e aldığı zaman" ı nasıl SET edebilirim?
3- Kapı için ayrı bir BP' mi yapayım? ben sadece anahtar için BP yapıp belirli bir static mesh e (kapıya) gelince , matinee oynat şeklinde birşey düşünmüştüm.
4- Kontrolü nasıl yapacağım? Cast ile mi oluyor

Çok sordum biliyorum : (

Şimdiden teşekkürler.

Eğer söz konusu olan tek bir kapı ve anahtarsa bunları sadece Level BP içinde yapabilirsiniz. Anahtarı nasıl aldığınıza göre(ya overlap ya da "E" ile pick up tarzı birşey sanırım?) overlap ise overlap event ile Gate kullanarak, pick-up ise anahtarı aldığınızda istediğiniz yerde(Level BP'de veya Widget içinde) bir bool oluşturmanız lazım. Level BP içinde oluşturursanız zaten kolay, Widget içinde oluşturursanız da Level BP içinden widget BP'yi çağırıp onun içinden de bool değişkenini çekip kullanın. Zaten Level BP içinde Widget'ı oluştururken onun Return Value pin'inden de istediğiniz değişkeni çekebilmeniz lazım, illa cast yapmanıza gerek yok.
 
[/quote]

Eğer söz konusu olan tek bir kapı ve anahtarsa bunları sadece Level BP içinde yapabilirsiniz. Anahtarı nasıl aldığınıza göre(ya overlap ya da "E" ile pick up tarzı birşey sanırım?) overlap ise overlap event ile Gate kullanarak, pick-up ise anahtarı aldığınızda istediğiniz yerde(Level BP'de veya Widget içinde) bir bool oluşturmanız lazım. Level BP içinde oluşturursanız zaten kolay, Widget içinde oluşturursanız da Level BP içinden widget BP'yi çağırıp onun içinden de bool değişkenini çekip kullanın. Zaten Level BP içinde Widget'ı oluştururken onun Return Value pin'inden de istediğiniz değişkeni çekebilmeniz lazım, illa cast yapmanıza gerek yok.
[/quote]

Tamamdır süper : ) Çook teşekkürler tekrar, eve geçince deneyeceğim : )