google / filament

Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2

Home Page:https://google.github.io/filament/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rendering frame rate is low with a lot of morph targets

August1996 opened this issue · comments

Describe the bug
My model has 244 morph targets and the frame rate is very low when rendered with filament, but not with babylon.

At the same time I found that as the number of morph target increases, the filament performance gets worse.

@prideout Shouldn't performance depend on the number of morph weights only? Do we apply a weight to ALL morph targets? If so that'd explain what the developer is seeing here (that would mean 244 texture fetches). If so can we at least check that we try to avoid reads for weights set to 0?

The old MorphHelper had a system for discarding low / zero weights, maybe we could resurrect it for this purpose. @daemyung do you have thoughts?