Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Equip Sorunu
#1
Photo 
https://www.youtube.com/watch?v=zjjH1RvW...e=youtu.be

Herkese merhabalar, dünyaya ilk spawn olan actörün içine girdiğinde "BlockHit" true oluyor ve 'E' tuşuna bastığımda yerden alabiliyorum.
Zaten dünyaya bir tane daha aynı actör geldiğinde onun içine giriyorum "BlockHit" in true si çalışmıyor ama sphare yeşil yanıyor :/ 'E' Tuşuna bastığımda yerden alamıyorum.
Yani benden silahı almak için ilk spawn olan actörün spheresine girmemi istiyor.
bunu nasıl genel yapabilirim?

ActörBP sindeki karakter Spherenin içine girdi mi girmedi mi sistemi https://hizliresim.com/M8trcu

CharacteBP sindeki E tuşuna basınca karakter spherenin içinde ise baltayı yerden almasını sağlayan sistem.
https://hizliresim.com/DHsYWr
Ara
Cevapla
#2
(09-09-2020, Saat: 16:25)Emirhan Altaş Adlı Kullanıcıdan Alıntı:  https://www.youtube.com/watch?v=zjjH1RvW...e=youtu.be

Herkese merhabalar, dünyaya ilk spawn olan actörün içine girdiğinde "BlockHit" true oluyor ve 'E' tuşuna bastığımda yerden alabiliyorum.
Zaten dünyaya bir tane daha aynı actör geldiğinde onun içine giriyorum "BlockHit" in true si çalışmıyor ama sphare yeşil yanıyor :/ 'E' Tuşuna bastığımda yerden alamıyorum.
Yani benden silahı almak için ilk spawn olan actörün spheresine girmemi istiyor.
bunu nasıl genel yapabilirim?

ActörBP sindeki karakter Spherenin içine girdi mi girmedi mi sistemi https://hizliresim.com/M8trcu

CharacteBP sindeki E tuşuna basınca karakter spherenin içinde ise baltayı yerden almasını sağlayan sistem.
https://hizliresim.com/DHsYWr

Şu an telden baktigim için tam inceleyemedim ama heryerde getactorofclass kullanmışsın. Bu zaten bu actor den dünyadaki ilkini al demek. Yani sen baktığını yada tracede bulduğunu değilse ilk actor hangisi ise onu alıyorsun. Hittrace den ne döndüyse onu alman lazım. Break hit result un altında devamı var. Ordan hit actoru çek. Cast yap devam et.
Ara
Cevapla
#3
(09-09-2020, Saat: 17:00)erginegider Adlı Kullanıcıdan Alıntı:  
(09-09-2020, Saat: 16:25)Emirhan Altaş Adlı Kullanıcıdan Alıntı:  https://www.youtube.com/watch?v=zjjH1RvW...e=youtu.be

Herkese merhabalar, dünyaya ilk spawn olan actörün içine girdiğinde "BlockHit" true oluyor ve 'E' tuşuna bastığımda yerden alabiliyorum.
Zaten dünyaya bir tane daha aynı actör geldiğinde onun içine giriyorum "BlockHit" in true si çalışmıyor ama sphare yeşil yanıyor :/ 'E' Tuşuna bastığımda yerden alamıyorum.
Yani benden silahı almak için ilk spawn olan actörün spheresine girmemi istiyor.
bunu nasıl genel yapabilirim?

ActörBP sindeki karakter Spherenin içine girdi mi girmedi mi sistemi https://hizliresim.com/M8trcu

CharacteBP sindeki E tuşuna basınca karakter spherenin içinde ise baltayı yerden almasını sağlayan sistem.
https://hizliresim.com/DHsYWr

Şu an telden baktigim için tam inceleyemedim ama heryerde getactorofclass kullanmışsın. Bu zaten bu actor den dünyadaki ilkini al demek. Yani sen baktığını yada tracede bulduğunu değilse ilk actor hangisi ise onu alıyorsun. Hittrace den ne döndüyse onu alman lazım. Break hit result un altında devamı var. Ordan hit actoru çek. Cast yap devam et.

Get Actor Of Class'ın ilkini al olduğunu bilmiyordum, açıkladığınız için teşekkür ederim.
Dünyadaki tüm hepsini alması için "Get All Actors Of Class ı " For Each Loop ile kullandım ve For Each Loop daki 'Array Element i' Cast to nun object kısmına atadım. bu sorunu çözdü. Tekrardan teşekkür ederim.
Ara
Cevapla
#4
(09-09-2020, Saat: 17:21)Emirhan Altaş Adlı Kullanıcıdan Alıntı:  
(09-09-2020, Saat: 17:00)erginegider Adlı Kullanıcıdan Alıntı:  Şu an telden baktigim için tam inceleyemedim ama heryerde getactorofclass kullanmışsın. Bu zaten bu actor den dünyadaki ilkini al demek. Yani sen baktığını yada tracede bulduğunu değilse ilk actor hangisi ise onu alıyorsun. Hittrace den ne döndüyse onu alman lazım. Break hit result un altında devamı var. Ordan hit actoru çek. Cast yap devam et.

Get Actor Of Class'ın ilkini al olduğunu bilmiyordum, açıkladığınız için teşekkür ederim.
Dünyadaki tüm hepsini alması için "Get All Actors Of Class ı " For Each Loop ile kullandım ve For Each Loop daki 'Array Element i' Cast to nun object kısmına atadım. bu sorunu çözdü. Tekrardan teşekkür ederim.
Kardeşim yanlış gidiyorsun. Hitresult yapmışsın. Orda hangi obje varsa onu alacaksın. For each loop ta doğru malzemenin geldiğini nasıl anlayacaksın. Zaten anladığım kadarı ile cismi trace 'le buluyorsun. Trace ten dönen hitresultin altında hit actor var(küçük üçgen 'le ac break hit result u) Onu alıp cast etmen gerekiyor. Yoksa yanlış gider iş baştan.
Ara
Cevapla
#5
(09-09-2020, Saat: 17:36)erginegider Adlı Kullanıcıdan Alıntı:  
(09-09-2020, Saat: 17:21)Emirhan Altaş Adlı Kullanıcıdan Alıntı:  Get Actor Of Class'ın ilkini al olduğunu bilmiyordum, açıkladığınız için teşekkür ederim.
Dünyadaki tüm hepsini alması için "Get All Actors Of Class ı " For Each Loop ile kullandım ve For Each Loop daki 'Array Element i' Cast to nun object kısmına atadım. bu sorunu çözdü. Tekrardan teşekkür ederim.
Kardeşim yanlış gidiyorsun. Hitresult yapmışsın. Orda hangi obje varsa onu alacaksın. For each loop ta doğru malzemenin geldiğini nasıl anlayacaksın. Zaten anladığım kadarı ile cismi trace 'le buluyorsun. Trace ten dönen hitresultin altında hit actor var(küçük üçgen 'le ac break hit result u) Onu alıp cast etmen gerekiyor. Yoksa yanlış gider iş baştan.
Proje ayarlarında Channel oluşturmuştum kimlerehitolsun isminde defult türüne ignore verdim ve karakterimin meshinden block yaptım. Böylece blockhit in true si sadece tracenin içine ben girersem hit oluyor.
Bu şekilde sorun oluşacağını sanmıyorum, resimde trace channel gözükmemiş sanırım.

for each loop ile, ilk gelen malzemeyi sırt taki slota veya elimdeki slota atayacağım sonraki malzemeleri ise envanter sistemi yapıp oraya atamayı düşünüyorum.
Ara
Cevapla
#6
(09-09-2020, Saat: 19:06)Emirhan Altaş Adlı Kullanıcıdan Alıntı:  
(09-09-2020, Saat: 17:36)erginegider Adlı Kullanıcıdan Alıntı:  Kardeşim yanlış gidiyorsun. Hitresult yapmışsın. Orda hangi obje varsa onu alacaksın. For each loop ta doğru malzemenin geldiğini nasıl anlayacaksın. Zaten anladığım kadarı ile cismi trace 'le buluyorsun. Trace ten dönen hitresultin altında hit actor var(küçük üçgen 'le ac break hit result u) Onu alıp cast etmen gerekiyor. Yoksa yanlış gider iş baştan.
Proje ayarlarında Channel oluşturmuştum kimlerehitolsun isminde defult türüne ignore verdim ve karakterimin meshinden block yaptım. Böylece blockhit in true si sadece tracenin içine ben girersem hit oluyor.
Bu şekilde sorun oluşacağını sanmıyorum, resimde trace channel gözükmemiş sanırım.

for each loop ile, ilk gelen malzemeyi sırt taki slota veya elimdeki slota atayacağım sonraki malzemeleri ise envanter sistemi yapıp oraya atamayı düşünüyorum.
Collision ayarlarında sorun yok zaten. Sorun senin hangi malzemeyi aldığında. Şöyle  anlatayım:
Mesela yerde 10 tane kılıç olsun. Sen ilerlerken oyunun bir yerinde 2 numaralı kılıca gelsin. Trace de sorun yok mekanizma çalışıyor. Ancak sen bundan sonrasını getallactorsfrom class ile for  each loop ile yapacam diyorsun.
Bende diyorum ki. Sen 2 numaralı kılıca gelmiştin. Yerdeki tüm kılıçları getallactorsfromclass ile bir dizi olarak topladın. Senin ulaştığın kılıç bu dizide nerde bunu bilmenin bir yolu yok. İlkini alicam diyorsun. Ilki belki başka bir yerdeki belki 10 uncu olan bunu bilemezsin. 2 nci olanda değil. Bu dizi sıralı değil. Senin maksadın çarptığını almak. Ancak sen rastgele bir tanesini almış olacaksın.
Senin trace channel i gördüm. Ordan hit result çekmişsin sadece blocking hit i kullanıyorsun. Onun altında bir küçük üçgen var. Orda bir hit actor var. O actor u cast edersen o senin o an dokunduğun kılıç  yada malzeme neyse. Yani boşuna getallactors   falan yapmana gerek yok. Orayı açarsan yaptığın trace zaten sana hangi kılıca dokunduğunu veriyor. Sonradan uğraşmayasın diye söylüyorum. Senin gittiğin yol sonuca ulaşmaz.
Ara
Cevapla
#7
Bence de kulağı tersten tutuyorsun, kullanacağın en mantıklı yöntem CharacterBP içinde eline alabildiğin actor class ları array haline getirmek, yine karakter üzerinde bir collision oluşturup silah kategorisinde olanların overlap kontrolünü yaptırmak. line trace atmana gerek yok düz bir sphere collision ile hepsini çözebilirsin, overlap olanı kontrol ettirip önceden hazırladığın silah türüne  özel attach to component eventını çağırmak
Ara
Cevapla
#8
(09-09-2020, Saat: 21:45)nonlinear Adlı Kullanıcıdan Alıntı:  Bence de kulağı tersten tutuyorsun, kullanacağın en mantıklı yöntem CharacterBP içinde eline alabildiğin actor class ları array haline getirmek, yine karakter üzerinde bir collision oluşturup silah kategorisinde olanların overlap kontrolünü yaptırmak. line trace atmana gerek yok düz bir sphere collision ile hepsini çözebilirsin, overlap olanı kontrol ettirip önceden hazırladığın silah türüne  özel attach to component eventını çağırmak

@erginegider şimdi anladım teşekkür ederim.
Dediğiniz gibi karakterin eline alabildiği actorleri array haline getirdim. Yerdeki kalkana sphere oluşturarak Overlap ile karakter içine girdi mi, girmedi mi kontrolünü yaptım. E tuşuna bastığımda ise hazırladığım array a göre attach yaptım güzel bir şekilde çalışıyor. 
Kalkanı yerden aldığımda yerden aldığım kalkanın visibility ini false yapmak istiyorum ama beceremedim. Benim yaptığım dünyada tüm o kalkan bp sinin visibility ini false yapıyor sadece benim aldığımın değil.
bunu nasıl yapabilirim?
https://www.youtube.com/watch?v=BftbMEbB5kI&feature=youtu.be
Kalkanı aldıktan sonraki silme işlemi yapan kodlar https://hizliresim.com/DWGYW7
KalkanBP sindeki spherenin overlap kodları https://hizliresim.com/OJsm7s
Karakterimdeki kalkanı yerden alma kodları https://hizliresim.com/tP8Wz2

Karakterdeki o kalkani aldi mi true yapıp hemen false yapmamın nedeni 1 kere vurup çekmesi için, farklı bir yöntem aklıma gelmedi.
Ara
Cevapla
#9
Yanlış anlamadıysam sen yerden bir silah veya kalkan aldığında onu spawnlatarak karaktere tutturuyorsun, yerdekini de hide yapıp geçiyorsun, eğer durum buysa yine yanlış yoldasın.
Bir önceki mesajda yazdığım gibi karaktere ne attach lamak istiyorsan onlar için bir data oluştur, soketi rotasyonu vs. için.  elinden bırakmak istediğinde ise Detach kullanarak elinden atacaksın. yerdeki diğer malzemelerle işin yok yani
Ara
Cevapla
#10
(10-09-2020, Saat: 02:51)nonlinear Adlı Kullanıcıdan Alıntı:  Yanlış anlamadıysam sen yerden bir silah veya kalkan aldığında onu spawnlatarak karaktere tutturuyorsun, yerdekini de hide yapıp geçiyorsun, eğer durum buysa yine yanlış yoldasın.
Bir önceki mesajda yazdığım gibi karaktere ne attach lamak istiyorsan onlar için bir data oluştur, soketi rotasyonu vs. için.  elinden bırakmak istediğinde ise Detach kullanarak elinden atacaksın. yerdeki diğer malzemelerle işin yok yani

Yerdekini hide yapmıyorum, destroy actor yapıyorum. ve karaktere kalkanı spawn yapmıyorum sadece set static mesh diyerek modeli veriyorum ve attach yapıyorum.  Data oluşturma konusunda bir bilgim yok maalesef. Paylaştığım video da ki sorunu nasıl çözeceğimi biliyorsanız söyler misiniz?
Detach etmenin, spawn yaparak modeli droplamaktan ne farkı var ki? static meshine none verdiğimde ben sadece elde göremiyorum ama model orada duruyor mu? eğer böyle ise bunun ne tür bir - si var ki?
Ara
Cevapla
 


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Sound Cue sorunu mrtcnaslnts 3 120 12-03-2024, Saat: 16:37
Son Yorum: Jacky
  Smulate physics sorunu mrtcnaslnts 2 82 03-03-2024, Saat: 17:51
Son Yorum: mrtcnaslnts
  Character Loot sorunu mrtcnaslnts 0 38 02-03-2024, Saat: 22:44
Son Yorum: mrtcnaslnts
  Spawn AI sorunu mrtcnaslnts 5 194 28-09-2023, Saat: 00:06
Son Yorum: mrtcnaslnts
  Controller ve tıklama sorunu mrtcnaslnts 0 98 04-08-2023, Saat: 21:33
Son Yorum: mrtcnaslnts
  Enemy Spawn Takip sorunu MR Studio 2 141 24-07-2023, Saat: 12:10
Son Yorum: MR Studio
  Hasar verme sorunu mrtcnaslnts 4 198 20-07-2023, Saat: 11:33
Son Yorum: Batqan
  Nesnelere tıklama sorunu MR Studio 3 189 13-07-2023, Saat: 16:03
Son Yorum: MR Studio
  İki Farklı Level'da Dil Sorunu dgnsparta 2 203 26-04-2023, Saat: 13:28
Son Yorum: dgnsparta
  Topdown Movement sorunu mrtcnaslnts 6 360 23-03-2023, Saat: 22:34
Son Yorum: mrtcnaslnts

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi

Unreal Engine Türkiye

This forum is community driven and supported by voluntary community members. It has nothing to do with Epic Games.

Bu site sadece destek amaçlıdır. Epic Games ile bir ilgisi yoktur.