Blender Git Loki

Git Commits -> Revision 2fe0cf5

Revision 2fe0cf5 by Lukas Toenne (master)
July 7, 2014, 08:54 (GMT)
Fix T40712: Duplicators don't generate orco and UV coordinates in Cycles viewport preview.
Fix T39286: Display percentage ignored in Cycles viewport.

The threaded depsgraph update changes included a cleanup of the global
is_rendering flag, which was replaced by a general EvalContext being
passed to dupli functions.

Problem is that the global flag was true for viewport duplis before
(ugly hack), which was used as a check for generating dupli orco/UV from
mesh data layers. The new flag is stricter and only true for actual
renders, which disables these attributes and breaks the Cycles
Texture Coordinates and UVMap nodes.

The solution is to extend the simple for_render boolean to an enum:
* VIEWPORT: OpenGL viewport drawing (dupli tex coords omitted)
* PREVIEW: Viewport preview render (simplified modifiers)
* RENDER: Full render with all details and attributes

There are still some areas that need to be examined, in particular
modifiers seem to totally ignore the EvaluationContext!
Instead they generally execute without render params from the depsgraph
(BKE_object_handle_update_ex) and are built with render settings
explicitly.

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

Commit Details:

Full Hash: 2fe0cf54a5827cac5a8d67dc6786bf7a7dc45950
Parent Commit: 7481d2a
Lines Changed: +49, -29

8 Modified Paths:

/intern/cycles/blender/blender_object.cpp (+4, -4) (Diff)
/source/blender/blenkernel/BKE_depsgraph.h (+7, -2) (Diff)
/source/blender/blenkernel/intern/mball.c (+2, -2) (Diff)
/source/blender/blenkernel/intern/mesh.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/object.c (+2, -2) (Diff)
/source/blender/blenkernel/intern/object_dupli.c (+15, -13) (Diff)
/source/blender/makesrna/intern/rna_object_api.c (+12, -4) (Diff)
/source/blender/render/intern/source/pipeline.c (+6, -1) (Diff)
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021