Page MenuHome

Fix T37951: Wrong OpenGL Render Preview
AbandonedPublic

Authored by Sergey Sharybin (sergey) on Dec 27 2013, 10:23 AM.

Diff Detail

Branch
fix_37951

Event Timeline

Brecht Van Lommel (brecht) requested changes to this revision.Dec 27 2013, 2:55 PM

The rules for dupli hiding are quite complex, see object_render_hide in blender_object.cpp for example. I think that this simple check will hide a bunch of duplis that should not be hidden, for example for dupliframes, metaballs and particle emitters. If you want to try you could verify with the test files from these bug reports: T37159 T36355 T35730 T35077 T34480 T33328.

You could try to match the renderer behavior here exactly, but I wouldn't mind if this is considered a To Do item and err on the side of showing too many objects.

@Brecht Van Lommel (brecht), eeh, that's indeed more complicated check than it originally looked like. It doesn't seem too much difficult to match the same behavior as Cycles, but the question is: is that tricky logic (iteration over psys and so) considered fine for viewport draw with Only Render enabled or we'd rather optimize viewport for speed instead?

I don't want to be rude or anything like that. But duplicating the same two code lines 6 times?

Regarding performance, if you were to implement this I would try to do most of it in object_handle_update, setting some kind of flag. That way it should be fast enough.

@Brecht Van Lommel (brecht), yeah it should be a part of DAG or objetc update routines. Abandoning revision for now.

Added a TODO to the list: http://wiki.blender.org/index.php/Dev:2.5/Source/Development/Todo/Editors#3D_View