Page MenuHome

Alembic speed decrease for deforming geometry
Closed, ResolvedPublic

Description

System Information
Operating system:MacOS Mojave 10.14.5, Kubuntu 18.04
Graphics card:Intel Iris 550 on Mac, Nvidia 1070 on linux

Blender Version
Broken: 2.82 ba1e9ae4733a but also ealrier versions of 2.81 like ed779333bb82
Worked: 2.80

Short description of error

playback of alembics with deforming geometry is at least 4-5 times slower an various systems.

Exact steps for others to reproduce the error
attached a simple blend file (abc would have been to big to attach), export as an alembic and try playback in 2.79 or 2.80 compared to newer 2.81 builds or 2.82 alpha. Sorry if it's a duplicate, didn't see it reported though.

Details

Type
Bug

Event Timeline

Sybren A. Stüvel (sybren) lowered the priority of this task from Needs Triage by Developer to Confirmed, Medium.

I took the provided blend file, applied both Subdivision Surface modifiers to be 100% sure it uses a large number of vertices, and produced a 5.6 GB Alembic file. Playing back this file is done at approximately 3.2 FPS in 2.79, and at at approximately 1.9 FPS in master. So yes, it's slower, but not 4-5x slower.

Marking the shape as Smooth and exporting with current master (so what will be 2.82) produces a 1.2 GB Alembic file (due to the new normals handling from T71246). Playing back this file is done at approximately 3.5 FPS in 2.79, and at at approximately 5.0 FPS in master.

This was tested on Kubuntu Linux 19.04 with an NVidia Geforce GTX 1080 running the NVidia drivers version 418.67.

@Daniel Ulrich (dulrich) In Blender 2.82 smooth meshes will be exported without normals, improving both file size and playback performance. Would that resolve your issue too?

Sybren A. Stüvel (sybren) lowered the priority of this task from Confirmed, Medium to Needs Information from User.Thu, Dec 5, 5:21 PM

Yes, you're right, in this case the difference is not that big. I'm working with 4D captures a lot lately, can't upload a project file due to NDA but I made another test closer to my every day scenarios - the same cube subdivided only 7 times to 98kpolys/196k tris, resulting in a 566mb alembic file, exported from 2.80 is giving me 24 frames flat on 2.80 (I guess it's capped), and 9 frames on 2.82.

Disabling normal export and re-exporting from 2.82 halves the file size, and gives a similar frame rate, so that definitely solves the issue. Thanks for the tip!

Disabling normal export and re-exporting from 2.82 halves the file size

You don't even need to disable exporting normals ;-) 2.82 will do that automatically for all smooth-shaded meshes, as "no normals" is interpreted as "smooth" by most Alembic-reading applications.

Good to know :) I can't remember when I had the need to use custom normals or normals at all, working in feature VFX for quite some time now.

I was editing alembics coming from maya (2016), really good to know how to fix the playback issue.

As far as I'm concerned this ticket can be closed, 24 frames all across the board here.

Sybren A. Stüvel (sybren) closed this task as Resolved.Fri, Dec 6, 1:50 PM

Thanks for getting back so quickly :)