In rendering we have AdaptiveFunc based camera controllers which have the advantage of precise dependency tracking with support for dependency triggered rendering and animations.
There is also afun in base which is the interface the AdaptiveFuncs implemented. Unfortunately some combinators take afuns, some AdaptiveFuncs. Here, definitely, some consolidation and documentation is needed.
The camera controller story continues in aardvark.media, where we have a legacy camera controller https://github.com/aardvark-platform/aardvark.media/blob/master/src/Aardvark.UI.Primitives/LegacyCameraController.fs which is approachable and easy to work with. Later we introduced another one with better interpolation scheme: https://github.com/aardvark-platform/aardvark.media/blob/master/src/Aardvark.UI.Primitives/FreeFlyController.fs#L412 which again is rather complex.
A wiki entry explaining camera controller approaches and how to approach animations would be a nice one.
In rendering we have
AdaptiveFuncbased camera controllers which have the advantage of precise dependency tracking with support for dependency triggered rendering and animations.There is also
afunin base which is the interface theAdaptiveFuncsimplemented. Unfortunately some combinators takeafuns, someAdaptiveFuncs. Here, definitely, some consolidation and documentation is needed.The camera controller story continues in aardvark.media, where we have a legacy camera controller https://github.com/aardvark-platform/aardvark.media/blob/master/src/Aardvark.UI.Primitives/LegacyCameraController.fs which is approachable and easy to work with. Later we introduced another one with better interpolation scheme: https://github.com/aardvark-platform/aardvark.media/blob/master/src/Aardvark.UI.Primitives/FreeFlyController.fs#L412 which again is rather complex.
A wiki entry explaining camera controller approaches and how to approach animations would be a nice one.