2016-07-05 6 views
5

12k tris (A kargo konteyneri) ile bir varlığa sahip olduğumuz için 3.5k tris ile Unity Asset mağazasında daha güzel görünen bir varlık bulduk. Bununla birlikte, yeni varlığın fiziksel uzunluğu, eski seviyenin yarısıdır, dolayısıyla aynı seviye tasarımını korumak için, her eski nesne için iki nesneye ihtiyacımız vardır.Batches vs Tris performansı

Nesneler için statik gruplama işaretli. Aynı sahnenin

tris: 800k vs 1.1m 
verts 900k vs 1.4m 
batches: 611 vs 490 
setpass calls: 192 vs 167 

Bonus 
Lightmap: 150mb vs 200mb 

aynı noktaya bakarak eski istatistikler vs

Yeni varlık yüzden fazla toplu var ve nesnelerin daha büyük miktarda nedeniyle açıkçası aramaları çizin. Toplu/setpass aramalarında tri sayısındaki düşüşün değeri artıyor mu?

Hedefimiz platformu SteamVR (Masaüstü PC ve HTC Vive/Rift) ve tavsiye edilen gözlük GTX 970 ve orta menzil CPU

ön planda arka plan yeni varlığın (ler) de

Eski varlık enter image description here

+2

Size yeterince doğru bir cevap veremem, bu yüzden genel bir kural kuralının toplu işlemlerin bir CPU yükü olduğunu, tris ise bir GPU yükü olduğunu söyleyerek burada bir yorum bırakacağım. Dolayısıyla, daha az tris ve daha fazla parti varlığı GPU'nun bir miktar yükünü sallayacak, ancak CPU yükünü biraz arttıracaktır. –

+1

Bir aswer – Absinthe

cevap

1

olacak Genel olarak, çekme çağrıları sadece tris sayısından daha pahalıdır. Tabii ki pratik sonuçlar için profil yapman gerekiyor. Dokümanlarda belirtildiği gibi, harmanlamanın yalnızca birinin, biri diğerinin yanı sıra, ağın 900 (?) Köşeden daha az olduğu belirli koşullar altında çalışacağını unutmayın. Yapı sırasında veya boru hattınıza uyup uymadığı sürece, OnPostprocessScene gibi bir editör aracıyla özel harmanlama yaparak sahneyi çok daha iyi hale getirebilirsiniz. CustomBatchingUtility, MeshUtility'i kullanabilir veya kendiniz yazabilirsiniz. O zaman bir zorunluluğa ihtiyacınız yok, her iki dünyanın da en iyisini elde edersiniz.

+0

almak için fps'nizi ve Time.deltaTime'ınızı kontrol edin. Dinamik banyo 900 uç/shader özellikte bir limite sahiptir, böylece standart shader 900/4 = 225dynamic dozajlama çok verimli değildir, statik yığınlama çok farklıdır . Bu soruyu sorduğumdan beri çok şey öğrendim, eğer beni hedefliyorsanız, masa üstü VR seti geçiş çağrıları, performanstan çok daha büyük bir tristir. Bu durumda önemli değil, küçük kaplar hızlı bir şekilde tıkanır. Eğer açık dünya oyununa sahipseniz, LYS1 atlasına daha akıllıca davranabilir ve daha da öte – Anders