Python modified vertex colors display in viewport but not in rendered image

python

#1

Hello!

I’m assuming this issue to be a bug, but I’m not completely sure.
There is a fully detailed report available here.

The problem is that vertex colors changed using addons or python code do not update in the rendered images although they show correctly in the viewport. I have tried this as well with the tension map addon updated for 2.8.

This only happens for objects that have modifiers on! Maybe something wrong with to_mesh function?

This is what I see in the viewport:

And this is the rendered image:

Here is another rendered image:

What is actually happening is that the vertex color does not change at all from its last state prior to executing the Render Animation operator. As such if the vertex color is already populated with some values, those values remain unchanged during the entire length of the render.

I have tried some different workarounds, none of which seem to work:

obj.data.vertex_colors.update()
obj.update_tag()
obj.cache_release()
bpy.context.scene.update()
bpy.context.scene.update_tag()

None of the above methods seem to resolve the issue. Any help would be much appreciated!
I’m no sure if I should report this as a bug or if this has to do with the new python API and mesh data needs to be updated in a specific way to force a redraw or cache update.

Thanks in advance.