serhatwxe

Unreal MVP
3 Ocak 2016
317
1
54
28
(34) İstanbul Avrupa
Yükleniyor ekranı için oluşturduğum bir Persistent Level'in Blueprintine Unload Stream Level ve Load Stream Level ikililerinin çalışmasını bekliyorum ama çalışmıyor. Sıkıntı şu, Persistent Level'de iken oyunu başlatıyorum. Loading ekranı çıkıyor ama levele ışınlanmıyor. Oyun loading ekranında kalıyor yani. Bu Load stream'i falan kaldırıp Execute Console yöntemiyle ServerTravel yaparak level'e gittiğimde çalışıyor. Ama Loading Screen denen şey tamamen işlevsiz kalıyor. Bunun sebebi ne olabilir?

Topu topu 3 tane BP kullanıldı. Onlar da bunlar:



Bu içeriği görmek için üçüncü parti çerezlerine izin vermeniz gerekli.
Daha fazla detay için çerezler sayfasını ziyaret edin.
 
serhatwxe' Alıntı:
Yükleniyor ekranı için oluşturduğum bir Persistent Level'in Blueprintine Unload Stream Level ve Load Stream Level ikililerinin çalışmasını bekliyorum ama çalışmıyor. Sıkıntı şu, Persistent Level'de iken oyunu başlatıyorum. Loading ekranı çıkıyor ama levele ışınlanmıyor. Oyun loading ekranında kalıyor yani. Bu Load stream'i falan kaldırıp Execute Console yöntemiyle ServerTravel yaparak level'e gittiğimde çalışıyor. Ama Loading Screen denen şey tamamen işlevsiz kalıyor. Bunun sebebi ne olabilir?

Topu topu 3 tane BP kullanıldı. Onlar da bunlar:



Bu içeriği görmek için üçüncü parti çerezlerine izin vermeniz gerekli.
Daha fazla detay için çerezler sayfasını ziyaret edin.

O level sistemini nasıl kurduğunu tam olarak anladığımı söyleyemem. Sistem gerçekten çok karışık olduğundan  anlamak için uzun uzun inceledim. 
  1. CurrentLevel değişkenini tam olarak set etmiyorsun aslında. Bir kere Set kullanmadan önce  o değeri UnloadStreamLevel den önce kullanmışsın. Sonraki Set i ise Başka bir EventDispatcher dan çekmişsin. Onun yani CurrentLevel değişkeni değerlerinin doğru olup olmadığını kontrol ettin mi bilmiyorum ama eğer etmediysen yanlış olma ihtimalleri oldukça yüksek.
  2. Widget ı ekrandan alacak herhangi bir kod yok şu an. ServerTravel da level tamamen yeniden açıldığından widget ekrandan gidebilir ya da gelebilir. Ancak streaming level yükleyip kaldırırken widget in ekrandan gitmesi için herhangi bir sebep yok.  Ya da ben göremedim bilemiyorum.
  3. Normalde streaming level kullanımının birinci nedeni çok büyük levellerin parçalara bölünmesidir. Bir başka neden aynı levelin ses model kod gibi değişik parçalarının ayrı ayrı çalışabilmesini sağlamak içindir. Işınlanmak demişsin. Tam olarak maksadını anlayamadığım için o tarafa girmiyorum.
  Kolay gelsin.
 
erginegider' Alıntı:
O level sistemini nasıl kurduğunu tam olarak anladığımı söyleyemem. Sistem gerçekten çok karışık olduğundan  anlamak için uzun uzun inceledim. 
  1. CurrentLevel değişkenini tam olarak set etmiyorsun aslında. Bir kere Set kullanmadan önce  o değeri UnloadStreamLevel den önce kullanmışsın. Sonraki Set i ise Başka bir EventDispatcher dan çekmişsin. Onun yani CurrentLevel değişkeni değerlerinin doğru olup olmadığını kontrol ettin mi bilmiyorum ama eğer etmediysen yanlış olma ihtimalleri oldukça yüksek.
  2. Widget ı ekrandan alacak herhangi bir kod yok şu an. ServerTravel da level tamamen yeniden açıldığından widget ekrandan gidebilir ya da gelebilir. Ancak streaming level yükleyip kaldırırken widget in ekrandan gitmesi için herhangi bir sebep yok.  Ya da ben göremedim bilemiyorum.
  3. Normalde streaming level kullanımının birinci nedeni çok büyük levellerin parçalara bölünmesidir. Bir başka neden aynı levelin ses model kod gibi değişik parçalarının ayrı ayrı çalışabilmesini sağlamak içindir. Işınlanmak demişsin. Tam olarak maksadını anlayamadığım için o tarafa girmiyorum.
  Kolay gelsin.


Hocam yaptıklarımın hepsini sildim çünkü isteğim basitken yaptığım bayağı karmaşıktı. 
Çok basit bir sistem oluşturdum. Tuşa basınca Load Stream Level çalıştır dedim. Test ettim istediğm level'e geçiş olmadı. Persistent Levelin daima çalışması gerekiyormuş, o yüzden açılmıyormuş level. Persistent leveli silip, tüm levelleri AnaMenu leveline atıp AnaMenu'nun kendisini bir Persistent level yaptım. Test ettim çalıştı. Şimdi de proje açılır açılmaz karakter aşağıya düşüyor. Yerde collision falan da var. Şurada çözüm koymuşlar denedim olmuyor.
https://answers.unrealengine.com/qu...aming-character-falls-when-a-level-is-lo.html

Ana karakterimin BP'si.

loadingscreeen1.jpg


Ana Menu Widget'in içinden bir kısım. Butona basınca levele geç ve karakterin lokasyonuna ayarla üzerine kurulu.

loadingscreeen2.jpg
 
serhatwxe' Alıntı:
erginegider' Alıntı:
O level sistemini nasıl kurduğunu tam olarak anladığımı söyleyemem. Sistem gerçekten çok karışık olduğundan  anlamak için uzun uzun inceledim. 
  1. CurrentLevel değişkenini tam olarak set etmiyorsun aslında. Bir kere Set kullanmadan önce  o değeri UnloadStreamLevel den önce kullanmışsın. Sonraki Set i ise Başka bir EventDispatcher dan çekmişsin. Onun yani CurrentLevel değişkeni değerlerinin doğru olup olmadığını kontrol ettin mi bilmiyorum ama eğer etmediysen yanlış olma ihtimalleri oldukça yüksek.
  2. Widget ı ekrandan alacak herhangi bir kod yok şu an. ServerTravel da level tamamen yeniden açıldığından widget ekrandan gidebilir ya da gelebilir. Ancak streaming level yükleyip kaldırırken widget in ekrandan gitmesi için herhangi bir sebep yok.  Ya da ben göremedim bilemiyorum.
  3. Normalde streaming level kullanımının birinci nedeni çok büyük levellerin parçalara bölünmesidir. Bir başka neden aynı levelin ses model kod gibi değişik parçalarının ayrı ayrı çalışabilmesini sağlamak içindir. Işınlanmak demişsin. Tam olarak maksadını anlayamadığım için o tarafa girmiyorum.
  Kolay gelsin.


Hocam yaptıklarımın hepsini sildim çünkü isteğim basitken yaptığım bayağı karmaşıktı. 
Çok basit bir sistem oluşturdum. Tuşa basınca Load Stream Level çalıştır dedim. Test ettim istediğm level'e geçiş olmadı. Persistent Levelin daima çalışması gerekiyormuş, o yüzden açılmıyormuş level. Persistent leveli silip, tüm levelleri AnaMenu leveline atıp AnaMenu'nun kendisini bir Persistent level yaptım. Test ettim çalıştı. Şimdi de proje açılır açılmaz karakter aşağıya düşüyor. Yerde collision falan da var. Şurada çözüm koymuşlar denedim olmuyor.
https://answers.unrealengine.com/qu...aming-character-falls-when-a-level-is-lo.html

Ana karakterimin BP'si.

loadingscreeen1.jpg


Ana Menu Widget'in içinden bir kısım. Butona basınca levele geç ve karakterin lokasyonuna ayarla üzerine kurulu.

loadingscreeen2.jpg
Çok iyi etmişsin yeniden yapmakla. Çünkü komplekslik gittikçe artıp projenin ileri safhalarinda içinden çıkılmaz bir hal alacaktı.
Verdiğin linkte problem çözülmemiş.
Collisionlar persistent levelde mı? Eğer değilse oraya taşımanın zararı olmayacaksa hepsi persistent levelde olsun.
Problem şöyle birşey olabilir. Henüz daha level tam olarak yuklenememisken karakter o bölgeye geçiyordur. Buda düşmesine sebep oluyordur. IsLevelLoaded diye bir şey var. Bu true gönderene kadar bir şey yapmamasını sağlamak çözüm olabilir. Böylece level in yüklendiğinden emin oluruz. Ama en önemlisi collisionlar persistent levelde olması bence.
Kolay gelsin.