PolderAnimation wrote:abstrax wrote:
Again, the problem is not the interpolation itself but determining the number of intermediate steps. At the moment Octane pretty much relies on the plugins or the input data for those since the plugin usually know best. I don't know exactly why we make an exception for animated rotation inputs, but I think it was done because it's a fairly low-hanging fruit.
I have a follow up question about the current motionblur implementation. You mention that octane currently relies on the plugin or input data to get the substeps needed for motionblur. We do not use a plugin, but octaneRender standalone, so we adjust the input data. We use alembic caches for rendering, some have animated transforms, which work as expected as octane does provides the rotation interpolation. But others use point caches inside the alembic (for deforming objects), with no substeps octane fails to calculate correct motionblur, but this is to be expected, however, I tried exporting alembics with 5, 25 and 100 substeps, but they all have the same wrong motionblur calculation.
The setup is as follows, I moved a cube a few unit of the origin, then rotated around the origin by 90 degrees per frame.
I created the following versions:
red cube: alembic with animated rotation
pink cube: static cube with attribute animator created in octane, the transformValue node of the placement node has animated matrices with 10 substeps
yellow cube: alembic with point cache with 100 substeps
green cube: alembic with point cache with 25 substeps
light blue cube: alembic with point cache with 5 substeps
dark blue cube: alembic with point cache with no substeps
In octane I shifted every cube down, so they do not overlap.
With no motionBlur frames 0, 1 and 2 look as follows:
no_motionBlur.png
With motionblur set to 100% and symmetric shutter alignment frame 1 looks like this:
motionBlur.png
As you can see, the animated rotation alembic and the transformValue attribute animated cubes give the desired result, however none of the point cache cubes seem to use any of the substep information available.
I attached an orbx file that I used to generate these images and includes all alembics.
Am I doing something wrong here or is this an issue in the current motionblur implementation?
Jean-Paul Tossings