muhammedsgrl

Unreal MVP
14 Tem 2019
317
114
43
27
(24) Erzincan
Selamlar arkadaşlar şu görsellik konusunda sizlere bir şeyler sormak istiyorum bir açık dünya oyunu yapmaya çalışıyorum ama bir türlü ışıklandırmayı ayarlayamıyorum. ne yaparsam yapayım çok çirkin görseller elde ediyorum altta iki resim var ikisinide aynı levelden çektiğime yemin edebilirim. ben anlamıyorum nerede hata yapıyorum. postprocessle alakalı bir durum değil çünkü şu an postprocess eklemedim. muhtemelen ışıklandırmada bir sorun var. ağaçların gölgeleri çıkıyor ama static olmadığı için meshin üstünde fazla gölgelenme olmuyor ve muhtemelen LOD larla ilgili bir sorunda var. mesela ağaçlar çok uzaktan çok güzel çok yakından da çok güzel fakat resimde görüldüğü gibi orta mesafeden çok kötü gözüküyor sizce nerede hata yapıyorum ve sizce ne yapmalıyım ? directionallight ve skylight değerleri ne olmalı uzak alanları falan nasıl gerçekçi ve düzgün gösterebilirim yada epicstorede bununla ilgili bir örnek proje yada internette açıklayıcı bir video varmıdır ? yardımlarınızı bekliyorum

NOT: çimenleri çimen layerinin olduğu yerlerde çıkarttım boyama ile yapmadım. ağaçları da otomatik foliage ile yaptım ve meshlerin hepsi openworldcollection paketi

odogqm.png


7B5kZ5.jpg
 
mesela ağaçlar çok uzaktan çok güzel çok yakından da çok güzel fakat resimde görüldüğü gibi orta mesafeden çok kötü gözüküyor

Çünkü Level of Detail LoD yüzünden.

Post Process kullanmadım

Kullan. Lens flareden tut ambient occlusion ayarlarına kadar screen space reflectionların detaylı hsaplarına kadar. Renklerin ara tonları, gamma saturation ve bunun gibi şeyler için  PostProcess efektlerini kullanmalısın ki albenili gözüksün.

Ambient Cubemap bakabilirsin, o da güzel bir özellik çevreler için. Tabii ki landscape araçları da hoş. Çok şey var yapabileceğin, volumetric fog da bir yöntem.

Gördüğüm en büyük nokta: Her modeli her materyali veya asseti marketplace üzerinden almayı deneyip bununla özgün bir sanat oluşturmayı planlıyorsan eğer sanatsal olarak bir ahenk yakalaman kolay değil. Bunun için nasıl desem, sanatsal bir bakış açısı gerekiyor her animasyon, vertex, yani bunların toplamı bir fikir işi stilize art olduğu gibi realistic bir sanat veya low-poly üzerinde 
 
cevaplarınız için çok teşekkürler. bunlarla uğraştıktan sonra ve birazda ince işçilik verdikten sonra şu görüntüyü elde ettim ve ufak bir soru daha sormak istiyorum. şu anda resimdeki ağaçları [size=small]procedural foliage spawner ile yaptım ve hepsi mesh ama ben bunları actor olanlarla değiştirdiğimde fps sorunu yaşıyorum ve cull distanceden de etkilenmiyorlar fpsyi nasıl optimize edebilirim ?

nbZWb5.jpg
 
Açık konuşmak gerekirse foliage spawner henüz hiç kullanmadım, ihtiyacım olmadı. Ama oyun motoru mantığına paralel olarak herşeyde cull distance ayarı var, LOD ayarlarını da Level of Detail Coloration -> Mesh LODs sekmesinden daha rahat şeklide görerek ayarlayabilirsin, Auto Compute LOD Distance ayarını kapatarak elle ayar çekmen tavsiyemdir, oyun motorunun eline bırakırsan onun ayarı oldukça uzak mesafeleri baz alıyor, gözünü rahatsız etmeyen daha yakın ekran yüzdeleri girerek fps artışı sağlayabilirsin. Actor ile değiştirmek demişsin niçin foliage için actor e ihtiyaç duyuyorsun, foliage actor olarak mı diyorsun yoksa destructible foliage fantazisi deme bana sakın :)
 
nonlinear' Alıntı:
Açık konuşmak gerekirse foliage spawner henüz hiç kullanmadım, ihtiyacım olmadı. Ama oyun motoru mantığına paralel olarak herşeyde cull distance ayarı var, LOD ayarlarını da Level of Detail Coloration -> Mesh LODs sekmesinden daha rahat şeklide görerek ayarlayabilirsin, Auto Compute LOD Distance ayarını kapatarak elle ayar çekmen tavsiyemdir, oyun motorunun eline bırakırsan onun ayarı oldukça uzak mesafeleri baz alıyor, gözünü rahatsız etmeyen daha yakın ekran yüzdeleri girerek fps artışı sağlayabilirsin. Actor ile değiştirmek demişsin niçin foliage için actor e ihtiyaç duyuyorsun, foliage actor olarak mı diyorsun yoksa destructible foliage fantazisi deme bana sakın :)

foliage actor hocam zaten herhangi bir destructible etkisi yapmadım sadece ağacın fiziğini aktif edip kestiğimde deviriyorum sorun şu ki lodun etkiside olmuyor yani meshin içinden onuda yaptım olmadı. cull distance de ayarladığım halde olmuyor mesela diğer mesh olan foliageler cull distanceden etkileniyor mesafeyi ayarlayabliiyorum ama actor olan foliagelerin görüş mesafesi olmuyor lanet bir şeye döndü tamamen oyunun kurgusunu değiştirmek zorunda kalıyorum bu yüzden. -"tamam diyorum ya madem ağacı kesemiyorum madem fps düşüor ozaman odunuda satın alsın" diyorum çok acınası bir haldeyim şu an :D
 
Foliage actorde zaten cull distance ayarı yok ama actorun kendisinin içinden max draw distance ayarını yaparsan olur bence ;;) ayrıca küçük bir tavsiye, ne kadar physics yüklersen o kadar kasar, actor blueprintine ağaca belli bir mesafe yaklaştıklarında physics active edecek bir collision yerleştir, karakter çıkınca deactive olsun ve her halikarda da physics sleepte kalsın, o zaman fark edecektir fps. işin diğer boyutu ben olsam emin ol hiç böyle birşeye ihtiyaç duyupta denemedim ama ağaç devirmekle uğraşmam, ağaç çevrelerine içinde sadece collision olan blueprint atarım begin overlap ile adama odun kesme animesi açtırırım, tuşa bastıp ağaca vurdukça odun gelir belli bir miktar odun alınınca cull distance volume ile ağacı invisible yapar, süre dolunca ağacı tekrar visible yaparım.  ve ağaç başından sonuna kadar instanced static mesh olarak kalır böylece performansa etki etmez. dediğim gibi denemedim ama şu senaryo bana daha mantıklı gözüküyor. tabi ki keyif senin ne diyeyim :)
 
nonlinear' Alıntı:
Foliage actorde zaten cull distance ayarı yok ama actorun kendisinin içinden max draw distance ayarını yaparsan olur bence ;;) ayrıca küçük bir tavsiye, ne kadar physics yüklersen o kadar kasar, actor blueprintine ağaca belli bir mesafe yaklaştıklarında physics active edecek bir collision yerleştir, karakter çıkınca deactive olsun ve her halikarda da physics sleepte kalsın, o zaman fark edecektir fps. işin diğer boyutu ben olsam emin ol hiç böyle birşeye ihtiyaç duyupta denemedim ama ağaç devirmekle uğraşmam, ağaç çevrelerine içinde sadece collision olan blueprint atarım begin overlap ile adama odun kesme animesi açtırırım, tuşa bastıp ağaca vurdukça odun gelir belli bir miktar odun alınınca cull distance volume ile ağacı invisible yapar, süre dolunca ağacı tekrar visible yaparım.  ve ağaç başından sonuna kadar instanced static mesh olarak kalır böylece performansa etki etmez. dediğim gibi denemedim ama şu senaryo bana daha mantıklı gözüküyor. tabi ki keyif senin ne diyeyim :)

bir şeyler yapmaya çalıştım hocam fizik zaten bir tek devrilme esnasında aktifleşiyor sonra zaten ağaç destoy oluyor lod ve cull değerlerini ayarladım 60 tam fps alıyorum yardımınız için teşekkürler  :cool:
 
muhammedsgrl' Alıntı:
nonlinear' Alıntı:
Foliage actorde zaten cull distance ayarı yok ama actorun kendisinin içinden max draw distance ayarını yaparsan olur bence ;;) ayrıca küçük bir tavsiye, ne kadar physics yüklersen o kadar kasar, actor blueprintine ağaca belli bir mesafe yaklaştıklarında physics active edecek bir collision yerleştir, karakter çıkınca deactive olsun ve her halikarda da physics sleepte kalsın, o zaman fark edecektir fps. işin diğer boyutu ben olsam emin ol hiç böyle birşeye ihtiyaç duyupta denemedim ama ağaç devirmekle uğraşmam, ağaç çevrelerine içinde sadece collision olan blueprint atarım begin overlap ile adama odun kesme animesi açtırırım, tuşa bastıp ağaca vurdukça odun gelir belli bir miktar odun alınınca cull distance volume ile ağacı invisible yapar, süre dolunca ağacı tekrar visible yaparım.  ve ağaç başından sonuna kadar instanced static mesh olarak kalır böylece performansa etki etmez. dediğim gibi denemedim ama şu senaryo bana daha mantıklı gözüküyor. tabi ki keyif senin ne diyeyim :)

bir şeyler yapmaya çalıştım hocam fizik zaten bir tek devrilme esnasında aktifleşiyor sonra zaten ağaç destoy oluyor lod ve cull değerlerini ayarladım 60 tam fps alıyorum yardımınız için teşekkürler  :cool:

Yardımcı olabildiğime sevindim :)
 
Arkadaşlar merhaba ben de ışıklandırmayla ilgili bir problem yaşıyorum. Build lighting yaptıktan sonra tam olarak hata değil ama şu şekilde bir uyarı veriyor: -Landscape Instanced meshes don't yet support unique static lighting for each LOD, lighting on LOD 1+ may be incorrect - neden desteklemiyor neyi desteklemiyor yakında destekleyecek mi tam olarak anlamadım. Rebuild yapıyorum gene olmuyor. ​
Painting yaparken Kite Demo'nun materyallerini kullanıyorum ve otomatik Landscape ile painting yapıyorum.​
Build yapmadan önce böyle görünüyor ​
Ekran-Al-nt-s-1.png


ama build yaptıktan sonra böyle oluyor. Çevrede sorun yok sonradan import ettiğim meshlerde kararma oluyor.
Ekran-Al-nt-s-2.png

Sonradan tren rayını hareket ettirdiğimde rengi kendine geliyor ama build light yapınca gene aynı sorun. Bu sorunu duzeltmemin bir yolu var mı dostlar?
 
LOD ları ayrıca mı import ediyorsun? muhtemelen import ettiğin meshte UV sorunu var. Yani ben öyle hatırlıyorum uzun zamandır bu hatayı almadım. Yine de şunu söyleyeyim, UV overlap olmayan sorunsuz mesh ini importla, LOD ları mesh editorde motora yaptır, kendi oluşturduğu LOD larda sorun çıkmıyor
 
nonlinear' Alıntı:
LOD ları ayrıca mı import ediyorsun? muhtemelen import ettiğin meshte UV sorunu var. Yani ben öyle hatırlıyorum uzun zamandır bu hatayı almadım. Yine de şunu söyleyeyim, UV overlap olmayan sorunsuz mesh ini importla, LOD ları mesh editorde motora yaptır, kendi oluşturduğu LOD larda sorun çıkmıyor

Hocam, 3d sitelerinden ücretsiz meshleri FBX olarak indiriyorum zaten çoğunda sıkıntı var import ettiğimde texturelar eksik oluyor ve matertaller beyaz oluyor mesela şu lokomotifi import ettikten sonra hiç texture yoktu ve materyallerle ayrıca uğraştım. Yani siteden indirdiğim gibi import ettim. Unreala import ederken LOD larla ilgili bir seçenek var mı? Varsa hiç dikkat etmemişim demekki. Birde henuz acemi sayılırım peki bu mesh editor Unrealin içinde mi? Nasıl yapacağıma dair bir video var mı ya da sen kısaca özetleyebilir misin bir zahmet hocam? Ve modelleri sence FBX olarak mı indirmem daha uygun OBJ oalrak mı?
 
O durumu kısaca şöyle özetlemem gerekirse sitelerden indirdiğin meshler genelde sıkıntılı olur (üzerinde game ready yazanlarda bile sıkıntılar çıkıyor), özensiz parça parça yapılır, decimate yaptığında yırtılmalar oluşabilir, hazır birşeyi kullanacaksan bile blender veya hangi 3d programı kullanıyorsan orada düzeltmen gerekir, bazen düzeltmekle uğraştığın zaman kendin çizmeye bile denk gelebilir, zaten UV map hiç olmayabilir de doğrudan unreala attığında. Anladığım kadarıyla zaten yenisin, sana tavsiyem önce 3d bir program öğrenmen (örneğin blender), uzmanlaşmana gerek yok ama işini görecek kadar bilmek zorundasın ki ihtiyaçlarını karşılayabilesin. Ayrıca texture işlerinde düzenlemeler için photoshop, gimp gibi bir program öğrenmen ki bunda da uzmanlaşmana kesinlikle gerek yok. Ama tek başına birşeyler yapmayı planlıyorsan bazı şeylerin altyapısını kurman gerekli. Doğrudan oyun motorunu öğrenmen sana fayda değil zarar getirir sadece bolca hata mesajı alırsın. Bu arada fbx genel formattır, unreal fbx ve obj import eder ama ben hep fbx kullanırım. 

editor üzerinden lod oluşturma https://docs.unrealengine.com/en-US...eshes/HowTo/AutomaticLODGeneration/index.html
 
nonlinear' Alıntı:
O durumu kısaca şöyle özetlemem gerekirse sitelerden indirdiğin meshler genelde sıkıntılı olur (üzerinde game ready yazanlarda bile sıkıntılar çıkıyor), özensiz parça parça yapılır, decimate yaptığında yırtılmalar oluşabilir, hazır birşeyi kullanacaksan bile blender veya hangi 3d programı kullanıyorsan orada düzeltmen gerekir, bazen düzeltmekle uğraştığın zaman kendin çizmeye bile denk gelebilir, zaten UV map hiç olmayabilir de doğrudan unreala attığında. Anladığım kadarıyla zaten yenisin, sana tavsiyem önce 3d bir program öğrenmen (örneğin blender), uzmanlaşmana gerek yok ama işini görecek kadar bilmek zorundasın ki ihtiyaçlarını karşılayabilesin. Ayrıca texture işlerinde düzenlemeler için photoshop, gimp gibi bir program öğrenmen ki bunda da uzmanlaşmana kesinlikle gerek yok. Ama tek başına birşeyler yapmayı planlıyorsan bazı şeylerin altyapısını kurman gerekli. Doğrudan oyun motorunu öğrenmen sana fayda değil zarar getirir sadece bolca hata mesajı alırsın. Bu arada fbx genel formattır, unreal fbx ve obj import eder ama ben hep fbx kullanırım. 

editor üzerinden lod oluşturma https://docs.unrealengine.com/en-US...eshes/HowTo/AutomaticLODGeneration/index.html

Çok teşekkür ederim dostum cevapların için vesilenle yeni şeyler öğrendim ama her şeyi denedim olmadı sanırım başka bir sorun var artık son çare olarak her şeyi sildim sadece çıplak landscape kaldı ve denemek için bir küp koyuyorum normalde gölgesi var ama build light yapınca küpün gölgesi bile gidiyor ben anlamadım ve böyle bir sorun da görmemiştim. Belkide map kafayı yedi kurcalamaktan..  :)

1.png


Ayarlar mı bozuldu ne oldu anlamadım. Landscapeide silmek istemiyorum bayağı uğraştım. Bu gölge varken buildden sonra nereye gider çözemedim çıldırdım bir haftadır. Animsyon Bluprintte bile bukadar uğraşmamıştım.. Kısaca bütün assetleri sildim o hatalar gitti ve sadece builtten sonra gölge kaybolma sorunu kaldı.

2.png

Light resulotionlarından bahsediyorlar en ideal Light resulotionu nedir? Benim bildiğim motor zaten ideal lightı otomatik olarak düzenlemiyor mu.. Peki ben nereden ve nasıl ideal olarak düzeltebilirim.. :s
 
Bu durumu biraz açıklayarak anlatıyorum ki her zaman ihtiyacın olacak bir şey. Oyun motorunun gölge oluşturma sistemi, bir objenin ışık kaynağı yönünde şeklini alır, ışık açısına göre şekli dağıtır ve çakıştığı diğer objenin texturesine karartılmış olarak işler.

Işık kaynakları ve objeler için gölgelendirme ile alakalı 3 durum vardır;

1- Static -> Static ışık kaynağı yalnızca static objelere gölge üretir, obje hareket ettirilirse gölge hareket etmez tekrar light build yapman gerekir, kaynak stationary ve movable objelere gölge üretmez. En ucuz yollu light buildtir.
2- Stationary -> Işık kaynağı tüm objelere gölge üretir, ışık kaynağı hareket ettirilirse veya static objeler hareket ettirilirse light build gerekir. Genel olarak kullandığımız orta yollu light buildtir.
3- Movable -> Kaynak hareketli olduğu için tüm objelere gölge üretir, objelerin static, stationary veya movable olması fark etmez gölgeler üretilmeye de ve hesaplanmaya devam eder. Light build gereksinimi yoktur anlık hesaplanır, en pahalı light buildtir.

Bu yazdıklarımı fotoğraflar ile daha geniş anlatabilirdim ancak gerek yok boş bir haritada tek bir mesh ile birkaç dakika içinde tek tek test ederek hepsini net anlayabilirsin.

Uzun lafın kısası, senin directional light şu an Staticte haritaya yerleştirdiğin objeler de sen değişiklik yapmadıysan Movable oldukları için herhangi bir gölge üretilmiyor, daha geniş bilgi için
https://docs.unrealengine.com/en-US/Engine/Rendering/LightingAndShadows/index.html

Kolay gelsin.
 
Şimdi çözdüm olayı hocam çok sağol. Hata gitti gölge geldi. Bu kadar basit şeyler gözden kaçında içinden çıkılmaz bir probleme dönüşüyormuş demekki.. :s  Aynı mantıkla ağaçlarda da işe yaradı. Ağacı paint ile değil manual olarak ekledim ve stationary yaptım ve build yaptıktan sonra sorun olmadı küpdeki gibi gölge yerinde ve iyi görünüyor. Ağaçları otomatik olarak ekleyince sorun devam ediyor belki onun da bir yolu vardır. Yabancı forumda çözüm olarak landscepi FBX oalrak export edip tekrar import edince düzeliyor falan demiş ama denemedim şimdi onu da bir deneyeceğim olmadı artık tek tek eklerim ağaçları. ​

-FBX olarak export edip import etme fikri iyi bir fikir değilmiş çünkü landscape de sculpt yapma özelliği gitti buseferde.. Oto Landscapei kaldırdım normal ground grass kullanıyorum Kite Demo'dan ve ağaçlarını kullanıyorum. Ağaçları painting olarak yaptığımda gölge  çok iyi değil ama hiç yoktan iyi çünkü en azından gölge geliyor ve ağaçlarda iyi görünüyor. LOD'larla ilgili hata gitti ama şöyle bir uyarı alıyorum bu sefer.​

Warning InstancedFoliageActor_0 The total lightmap size for this InstancedStaticMeshComponent is large, consider reducing the component's lightmap resolution or number of mesh instances in this component. :rolleyes:  Gölge kalitesi  preview de
Ekran-Al-nt-s-1.png
Gönderdiğin linkteki açıklamaları tek tek inceleyeceğim teşekkür ederim sana da iyi çalışmalar ama şu uyarıyı düzeltmenin yolunu biliyorsan açıklarsan çok iyi olur hocam. :angel:​
 
Gönderdiğin ışıklarla ilgili açıklamaları inceledikten sonra  ışıklandırmayla ilgili bayağı bilgi sahibi oldum sonra foilage ayarlarında ayarı Staticten Movable'a getirdim sorun düzeldi. Diğer nesnelerde Staticte sorun olmuyor ama bitkilerde ve ağaçlarda nedense Staticte render alınca sorun oluyor sanırım bu da bu bitkilerin rüzgarda hareket etme özelliğinden dolayı movable sayıldıkları için olabilir. Öyle ya da böyle bu sorunu da düzelttim. Açıklamaların için tekrar teşekkür ederim nonliner. ​
 
HarUnreaL' Alıntı:
Gönderdiğin ışıklarla ilgili açıklamaları inceledikten sonra  ışıklandırmayla ilgili bayağı bilgi sahibi oldum sonra foilage ayarlarında ayarı Staticten Movable'a getirdim sorun düzeldi. Diğer nesnelerde Staticte sorun olmuyor ama bitkilerde ve ağaçlarda nedense Staticte render alınca sorun oluyor sanırım bu da bu bitkilerin rüzgarda hareket etme özelliğinden dolayı movable sayıldıkları için olabilir. Öyle ya da böyle bu sorunu da düzelttim. Açıklamaların için tekrar teşekkür ederim nonliner. ​

bir önceki mesajında düzeltme yapmışsın yeni gördüm ::) evet ağaçlarında movement varsa doğal olarak gölge hareketli oluyor ve static olarak kabul edilmiyor. kendin çözmüşsün olayı. birşey değil kolay gelsin ::)