Selamlar, forumu gezerken konuyu gördüm, geç olduğunun farkındayım, benzer sorun yaşayan arkadaşlar arama yaparsa diye fikrimi belirtmek istedim.
Hocam öncelikle sahnelerin dinamik batch edilmesi, cpu/gpu olarak performans tüketir ancak anlık renderlama yaptığı, herhangi bir kayıt tutup üzerinden okuma yapmadığı için aldığınız çıktı boyutu daha düşük olur. Ancak cpu/gpu kullanımını optimize etmek için sahnenin statik olması daha avantajlıdır, ancak daha performanslı renderlama, hesaplama işlemleri için belli dataları kaydedeceğinden çıktı boyutu daha büyük olur. (denemek için kalabalık bir sahnenizde statik obje yokken, tamamı dinamik iken explorer/finder üzerinden sahne dosyanızın boyutuna bakıp, sonra sahnenizdeki objeleri statik olarak işaretleyip tekrar boyutuna bakarsanız anlayabilirsiniz.)
Bahsettiğiniz türdeki eklentiler/assetler genellikle şunu yaparlar, ya sizin yerinize sahneyi statik hale getirip, gerekli bake işlemlerini sizin için yaparlar, ya da sahnenizdeki modellerin birleştirmesini yaparak batches sayısını düşürür. Örn: sahnenizdeki 50 modeli, tek bir modelde birleştirerek batch sayısını 50'den 1'e düşürmüş olur (Combine mesh olarak araştırarak daha detaylı öğrenebilirsiniz). Tabi ki 2 yöntemle sınırlı değil daha çok yöntem var ancak yaygın oldukları için bunlardan bahsettim. Burda da combine ettiği mesh boyutu yüksek olacağından çıktı boyutunuz yükselir.
Düşük boyut ve yüksek performans için tavsiyem, kullandığınız modellerin elden geçirilmesi olacak öncelikle. Sonrasında, sahnenin tamamını statik kullanmak yerine occlusion için gerekli statik seçeneklerini işaretleyerek occlusion culling kullanmanız. Android/iOS buildlerinde build settings'teki compression method'u LZ4HC olarak seçmeniz de boyutu düşürmenize yardımcı olacaktır. Ayrıca performans için batches sayısından daha önemli olarak setpass call (profiler daki ismiyle) / drawcall (editördeki statistics kısmındaki ismiyle) sayısını optimize etmeye çalışmanız performansa ciddi etki edecektir.
Unıty Çıktı Boyutu Hk.
9
●242