Blender Git Loki

Git Commits -> Revision 06420c5

Revision 06420c5 by Dalai Felinto (master)
February 27, 2018, 21:25 (GMT)
Refactor depsgraph/render logic to serve evaluated depsgraph to engines

User notes
----------
Compositing, rendering of multi-layers in Eevee should be fully working now.

Development notes
-----------------
Up until now we were still using the same depsgraph for rendering and viewport
evaluation. And we had to go out of our ways to be sure the depsgraphs were
updated.

Now we iterate over the (to be rendered) view layers and create a depsgraph to
each one, fully evaluated and call the render engines (Cycles, Eevee, ...) with
this viewlayer/depsgraph/evaluation context.

At this time we are not handling data persistency, Depsgraph is created from
scratch prior to rendering each frame. So I got rid of most of the partial
update calls we had during the render pipeline.

Cycles: Brecht Van Lommel did a patch to tackle some of the required Cycles
changes but this commit mark these changes as TODOs. Basically Cycles needs to
render one layer at a time.

Reviewers: sergey, brecht

Differential Revision: https://developer.blender.org/D3073

Commit Details:

Full Hash: 06420c5fe8fda54c543f26f9d95d2c6fcf5161cd
Parent Commit: bd119ab
Lines Changed: +311, -358

36 Modified Paths:

/intern/cycles/blender/addon/__init__.py (+2, -2) (Diff)
/intern/cycles/blender/blender_python.cpp (+4, -8) (Diff)
/intern/cycles/blender/blender_session.cpp (+19, -6) (Diff)
/intern/cycles/blender/blender_session.h (+0, -4) (Diff)
/intern/cycles/blender/blender_sync.cpp (+2, -1) (Diff)
/intern/cycles/blender/blender_sync.h (+1, -0) (Diff)
/source/blender/blenkernel/intern/dynamicpaint.c (+4, -4) (Diff)
/source/blender/blenkernel/intern/scene.c (+0, -5) (Diff)
/source/blender/blenkernel/intern/sequencer.c (+6, -12) (Diff)
/source/blender/compositor/CMakeLists.txt (+1, -0) (Diff)
/source/blender/depsgraph/DEG_depsgraph.h (+6, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph_eval.cc (+19, -0) (Diff)
/source/blender/draw/intern/draw_manager.c (+18, -23) (Diff)
/source/blender/draw/intern/DRW_render.h (+1, -1) (Diff)
/source/blender/editors/object/object_bake.c (+5, -3) (Diff)
/source/blender/editors/object/object_bake_api.c (+28, -13) (Diff)
/source/blender/editors/render/render_internal.c (+6, -5) (Diff)
/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.cpp (+0, -1) (Diff)
/source/blender/makesrna/intern/rna_render.c (+3, -19) (Diff)
/source/blender/render/extern/include/RE_engine.h (+2, -4) (Diff)
/source/blender/render/extern/include/RE_pipeline.h (+6, -5) (Diff)
/source/blender/render/extern/include/RE_render_ext.h (+2, -1) (Diff)
/source/blender/render/intern/include/pointdensity.h (+3, -2) (Diff)
/source/blender/render/intern/include/renderdatabase.h (+2, -1) (Diff)
/source/blender/render/intern/include/render_result.h (+23, -0) (Diff)
/source/blender/render/intern/include/render_types.h (+0, -3) (Diff)
/source/blender/render/intern/source/convertblender.c (+84, -59) (Diff)
/source/blender/render/intern/source/external_engine.c (+25, -13) (Diff)
/source/blender/render/intern/source/initrender.c (+0, -5) (Diff)
/source/blender/render/intern/source/pipeline.c (+20, -108) (Diff)
/source/blender/render/intern/source/pointdensity.c (+8, -7) (Diff)
/source/blender/render/intern/source/render_result.c (+7, -16) (Diff)
/source/blender/render/intern/source/render_texture.c (+2, -2) (Diff)
/source/blenderplayer/bad_level_call_stubs/CMakeLists.txt (+1, -0) (Diff)
/source/blenderplayer/bad_level_call_stubs/stubs.c (+1, -3) (Diff)
/source/creator/creator_args.c (+0, -22) (Diff)
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021