aardvark-platform / aardvark.rendering

Aardvark.Rendering is a high-performance, dependency-aware rendering engine. It is part of the open-source Aardvark Platform for visual computing, real-time graphics, and visualization.
https://aardvarkians.com/
Other
131 stars 13 forks source link

RenderTask.custom does not track dependencies / trigger rendering if inner computations are outdated #48

Closed luithefirst closed 5 years ago

luithefirst commented 5 years ago

Running the "07 - RenderTaskCustom" or "29 - PingPong" does not trigger rendering if the camera changes. A workaround is to enable RenderContinuously.

luithefirst commented 5 years ago

The custom function provides (self : IRenderTask, token : RenderToken, output : OutputDescription).

RenderTask.custom (fun (self,token,outputDesc) ->
            let sw = Stopwatch.StartNew()
            renderTask.Run(token,outputDesc) // no AdaptiveToken
            Log.line "RenderTime: %dms" sw.ElapsedMilliseconds
        )

In all use cases when pulling incremental computations no AdaptiveToken is used. In comparison to Mod.custom there is no AdpativeToken. Maybe self: IRenderTask should be AdaptiveToken instead and forwarded at the invocation of the CustomRenderTask function.

luithefirst commented 5 years ago

fixed in d190678d