Open jabooth opened 9 years ago
I'd like to revisit this on some less powerful machines, but I think our recent efforts with minimising canvas redraws may actually negate the need for this kind of thing. For instance, I'm seeing good performance on iOS/Android mobile devices now. Before we take any step in this direction, we should check it's actually needed.
From experience, there are a few settings that are nice to enable on powerful devices but do lead to lower frame rates on less powerful devices. They are:
THREE.WebGLRenderer
THREE.WebGLRenderer
Easier goal
Add a settings page with toggles for either the above features or simply a 'high fidelity graphics' mode that toggles all this stuff on and off
Stretch goal
Track the FPS of the tool and dynamically enable/disable these features to ensure a good user experience
Notes
Key challenge here is enabling a run-time change of the
WebGLRenderer
, as I don't think these settings are mutable on an already constructed renderer (although this should be investigated!). If so, we would want to abstract out the 'restarting' of the renderer and then use this in initialization of the tool and at settings changes.