[Bf-blender-cvs] [96793b7] depsgraph_refactor: Merge branch 'master' into depsgraph_refactor
Sergey Sharybin
noreply at git.blender.org
Fri Oct 10 16:52:56 CEST 2014
Commit: 96793b7fe55c418b83e5a835284f693a4dd72675
Author: Sergey Sharybin
Date: Fri Oct 10 16:52:31 2014 +0200
Branches: depsgraph_refactor
https://developer.blender.org/rB96793b7fe55c418b83e5a835284f693a4dd72675
Merge branch 'master' into depsgraph_refactor
Also made sure it compiles here.
Conflicts:
source/blender/blenkernel/intern/scene.c
source/blender/blenlib/BLI_utildefines.h
source/blender/editors/space_info/CMakeLists.txt
source/creator/CMakeLists.txt
===================================================================
===================================================================
diff --cc build_files/cmake/macros.cmake
index bdd3883,b42e62e..b7df30f
--- a/build_files/cmake/macros.cmake
+++ b/build_files/cmake/macros.cmake
@@@ -411,6 -413,251 +413,252 @@@ macro(setup_liblink
endif()
target_link_libraries(${target} ${PLATFORM_LINKLIBS} ${CMAKE_DL_LIBS})
+
+ # We put CLEW and CUEW here because OPENSUBDIV_LIBRARIES dpeends on them..
+ if(WITH_CYCLES OR WITH_COMPOSITOR OR WITH_OPENSUBDIV)
+ target_link_libraries(${target} "extern_clew")
+ target_link_libraries(${target} "extern_cuew")
+ endif()
+ endmacro()
+
+ macro(SETUP_BLENDER_SORTED_LIBS)
+ get_property(BLENDER_LINK_LIBS GLOBAL PROPERTY BLENDER_LINK_LIBS)
+
+ list(APPEND BLENDER_LINK_LIBS
+ bf_windowmanager
+ bf_render
+ )
+
+ if(WITH_MOD_FLUID)
+ list(APPEND BLENDER_LINK_LIBS bf_intern_elbeem)
+ endif()
+
+ if(WITH_CYCLES)
+ list(APPEND BLENDER_LINK_LIBS
+ cycles_render
+ cycles_bvh
+ cycles_device
+ cycles_kernel
+ cycles_util
+ cycles_subd)
+ if(WITH_CYCLES_OSL)
+ list(APPEND BLENDER_LINK_LIBS cycles_kernel_osl)
+ endif()
+ endif()
+
+ # Sort libraries
+ set(BLENDER_SORTED_LIBS
+ bf_windowmanager
+
+ bf_editor_space_api
+ bf_editor_space_action
+ bf_editor_space_buttons
+ bf_editor_space_console
+ bf_editor_space_file
+ bf_editor_space_graph
+ bf_editor_space_image
+ bf_editor_space_info
+ bf_editor_space_logic
+ bf_editor_space_nla
+ bf_editor_space_node
+ bf_editor_space_outliner
+ bf_editor_space_script
+ bf_editor_space_sequencer
+ bf_editor_space_text
+ bf_editor_space_time
+ bf_editor_space_userpref
+ bf_editor_space_view3d
+ bf_editor_space_clip
+
+ bf_editor_transform
+ bf_editor_util
+ bf_editor_uvedit
+ bf_editor_curve
+ bf_editor_gpencil
+ bf_editor_interface
+ bf_editor_mesh
+ bf_editor_metaball
+ bf_editor_object
+ bf_editor_armature
+ bf_editor_physics
+ bf_editor_render
+ bf_editor_screen
+ bf_editor_sculpt_paint
+ bf_editor_sound
+ bf_editor_animation
+ bf_editor_datafiles
+ bf_editor_mask
+ bf_editor_io
+
+ bf_render
+ bf_python
+ bf_python_ext
+ bf_python_mathutils
+ bf_python_bmesh
+ bf_freestyle
+ bf_ikplugin
+ bf_modifiers
+ bf_bmesh
+ bf_blenkernel
+ bf_nodes
+ bf_rna
+ bf_gpu
+ bf_blenloader
+ bf_imbuf
+ bf_blenlib
++ bf_depsgraph
+ bf_intern_ghost
+ bf_intern_string
+ bf_avi
+ bf_imbuf_cineon
+ bf_imbuf_openexr
+ bf_imbuf_openimageio
+ bf_imbuf_dds
+ bf_collada
+ bf_intern_elbeem
+ bf_intern_memutil
+ bf_intern_guardedalloc
+ bf_intern_ctr
+ bf_intern_utfconv
+ ge_blen_routines
+ ge_converter
+ ge_phys_dummy
+ ge_phys_bullet
+ bf_intern_smoke
+ extern_minilzo
+ extern_lzma
+ extern_colamd
+ ge_logic_ketsji
+ extern_recastnavigation
+ ge_logic
+ ge_rasterizer
+ ge_oglrasterizer
+ ge_logic_expressions
+ ge_scenegraph
+ ge_logic_network
+ ge_logic_ngnetwork
+ ge_logic_loopbacknetwork
+ bf_intern_moto
+ extern_openjpeg
+ extern_redcode
+ ge_videotex
+ bf_dna
+ bf_blenfont
+ bf_intern_audaspace
+ bf_intern_mikktspace
+ bf_intern_dualcon
+ bf_intern_cycles
+ cycles_render
+ cycles_bvh
+ cycles_device
+ cycles_kernel
+ cycles_util
+ cycles_subd
+ bf_intern_raskter
+ bf_intern_opencolorio
+ extern_rangetree
+ extern_wcwidth
+ extern_libmv
+ extern_glog
+
+ bf_intern_glew_mx
+ )
+
+ if(WITH_COMPOSITOR)
+ # added for opencl compositor
+ list_insert_before(BLENDER_SORTED_LIBS "bf_blenkernel" "bf_compositor")
+ list_insert_after(BLENDER_SORTED_LIBS "bf_compositor" "bf_intern_opencl")
+ endif()
+
+ if(WITH_LIBMV)
+ list(APPEND BLENDER_SORTED_LIBS extern_ceres)
+ endif()
+
+ if(WITH_MOD_CLOTH_ELTOPO)
+ list(APPEND BLENDER_SORTED_LIBS extern_eltopo)
+ endif()
+
+ if(NOT WITH_SYSTEM_GLEW)
+ list(APPEND BLENDER_SORTED_LIBS ${BLENDER_GLEW_LIBRARIES})
+ endif()
+
+ if(WITH_BINRELOC)
+ list(APPEND BLENDER_SORTED_LIBS extern_binreloc)
+ endif()
+
+ if(WITH_CXX_GUARDEDALLOC)
+ list(APPEND BLENDER_SORTED_LIBS bf_intern_guardedalloc_cpp)
+ endif()
+
+ if(WITH_IK_SOLVER)
+ list_insert_after(BLENDER_SORTED_LIBS "bf_intern_elbeem" "bf_intern_iksolver")
+ endif()
+
+ if(WITH_IK_ITASC)
+ list(APPEND BLENDER_SORTED_LIBS bf_intern_itasc)
+ endif()
+
+ if(WITH_CODEC_QUICKTIME)
+ list(APPEND BLENDER_SORTED_LIBS bf_quicktime)
+ endif()
+
+ if(WITH_INPUT_NDOF)
+ list(APPEND BLENDER_SORTED_LIBS bf_intern_ghostndof3dconnexion)
+ endif()
+
+ if(WITH_MOD_BOOLEAN)
+ list(APPEND BLENDER_SORTED_LIBS extern_carve)
+ endif()
+
+ if(WITH_GHOST_XDND)
+ list(APPEND BLENDER_SORTED_LIBS extern_xdnd)
+ endif()
+
+ if(WITH_CYCLES_OSL)
+ list_insert_after(BLENDER_SORTED_LIBS "cycles_kernel" "cycles_kernel_osl")
+ endif()
+
+ if(WITH_INTERNATIONAL)
+ list(APPEND BLENDER_SORTED_LIBS bf_intern_locale)
+ endif()
+
+ if(WITH_OPENNL)
+ list_insert_after(BLENDER_SORTED_LIBS "bf_render" "bf_intern_opennl")
+ endif()
+
+ if(WITH_BULLET)
+ list_insert_after(BLENDER_SORTED_LIBS "bf_blenkernel" "bf_intern_rigidbody")
+ endif()
+
+ if(WITH_BULLET AND NOT WITH_SYSTEM_BULLET)
+ list_insert_after(BLENDER_SORTED_LIBS "ge_logic_ngnetwork" "extern_bullet")
+ endif()
+
+ foreach(SORTLIB ${BLENDER_SORTED_LIBS})
+ set(REMLIB ${SORTLIB})
+ foreach(SEARCHLIB ${BLENDER_LINK_LIBS})
+ if(${SEARCHLIB} STREQUAL ${SORTLIB})
+ set(REMLIB "")
+ endif()
+ endforeach()
+ if(REMLIB)
+ # message(STATUS "Removing library ${REMLIB} from blender linking because: not configured")
+ list(APPEND REM_MSG ${REMLIB})
+ list(REMOVE_ITEM BLENDER_SORTED_LIBS ${REMLIB})
+ endif()
+ endforeach()
+ if(REM_MSG)
+ list(SORT REM_MSG)
+ message(STATUS "Blender Skipping: (${REM_MSG})")
+ endif()
+
+ unset(SEARCHLIB)
+ unset(SORTLIB)
+ unset(REMLIB)
+ unset(REM_MSG)
+
+ # for top-level tests
+ set_property(GLOBAL PROPERTY BLENDER_SORTED_LIBS_PROP ${BLENDER_SORTED_LIBS})
endmacro()
macro(TEST_SSE_SUPPORT
diff --cc build_files/scons/tools/Blender.py
index a20769d,b5853b2..462bc48
mode 100644,100755..100755
--- a/build_files/scons/tools/Blender.py
+++ b/build_files/scons/tools/Blender.py
diff --cc extern/libmv/third_party/gflags/gflags.cc
index 4ba2b6f,4ba2b6f..3b8136a
--- a/extern/libmv/third_party/gflags/gflags.cc
+++ b/extern/libmv/third_party/gflags/gflags.cc
@@@ -348,13 -348,13 +348,13 @@@ string FlagValue::ToString() const
case FV_BOOL:
return VALUE_AS(bool) ? "true" : "false";
case FV_INT32:
-- snprintf(intbuf, sizeof(intbuf), "%"PRId32, VALUE_AS(int32));
++ snprintf(intbuf, sizeof(intbuf), "%" PRId32, VALUE_AS(int32));
return intbuf;
case FV_INT64:
-- snprintf(intbuf, sizeof(intbuf), "%"PRId64, VALUE_AS(int64));
++ snprintf(intbuf, sizeof(intbuf), "%" PRId64, VALUE_AS(int64));
return intbuf;
case FV_UINT64:
-- snprintf(intbuf, sizeof(intbuf), "%"PRIu64, VALUE_AS(uint64));
++ snprintf(intbuf, sizeof(intbuf), "%" PRIu64, VALUE_AS(uint64));
return intbuf;
case FV_DOUBLE:
snprintf(intbuf, sizeof(intbuf), "%.17g", VALUE_AS(double));
diff --cc intern/cycles/util/util_types.h
index 98d7078,2a199e5..1694e7d
--- a/intern/cycles/util/util_types.h
+++ b/intern/cycles/util/util_types.h
@@@ -472,16 -479,16 +479,16 @@@ enum InterpolationType
/* Causes warning:
* incompatible types when assigning to type 'Foo' from type 'Bar'
* ... the compiler optimizes away the temp var */
--#ifdef __GNUC__
++#if defined(__GNUC__)
#define CHECK_TYPE(var, type) { \
- __typeof(var) *__tmp; \
- typeof(var) *__tmp; \
++ decltype(var) *__tmp; \
__tmp = (type *)NULL; \
(void)__tmp; \
} (void)0
#define CHECK_TYPE_PAIR(var_a, var_b) { \
- __typeof(var_a) *__tmp; \
- __tmp = (__typeof(var_b) *)NULL; \
- typeof(var_a) *__tmp; \
++ decltype(var_a) *__tmp; \
+ __tmp = (typeof(var_b) *)NULL; \
(void)__tmp; \
} (void)0
#else
diff --cc source/blender/blenkernel/intern/blender.c
index 8756e82,adfe43c..16eea1c
--- a/source/blender/blenkernel/intern/blender.c
+++ b/source/blender/blenkernel/intern/blender.c
@@@ -79,9 -79,8 +79,10 @@@
#include "BKE_sequencer.h"
#include "BKE_sound.h"
+#include "DEG_depsgraph.h"
+
#include "RE_pipeline.h"
+ #include "RE_render_ext.h"
#include "BLF_api.h"
@@@ -119,10 -118,9 +120,11 @@@ void free_blender(void
IMB_exit();
BKE_images_exit();
DAG_exit();
+ DEG_threaded_exit();
+ DEG_free_node_types();
BKE_brush_system_exit();
+ RE_exit_texture_rng();
BLI_callback_global_finalize();
diff --cc source/blender/blenkernel/intern/scene.c
index 8c6ce43,5bfd6e8..4aed360
--- a/source/blender/blenkernel/intern/scene.c
+++ b/source/blender/blenkernel/intern/scene.c
@@@ -78,10 -82,9 +82,11 @@@
#include "BKE_scene.h"
#include "BKE_sequencer.h"
#include "BKE_sound.h"
+ #include "BKE_unit.h"
#include "BKE_world.h"
+#include "DEG_depsgraph.h"
+
#include "RE_engine.h"
#include "PIL_time.h"
@@@ -1546,91 -1559,134 +1564,141 @@@ static void scene_update_tagged_recursi
}
+ static bool check_rendered_viewport_visible(Main *bmain)
+ {
+ wmWindowManager *wm = bmain->wm.first;
+ wmWindow *window;
+ for (window = wm->windows.first; window != NULL; window = window->next) {
+ bScreen *screen = window->screen;
+ ScrArea *area;
+ for (area = screen->areabase.first; area != NULL; area = area->next) {
+ View3D *v3d = area->spacedata.first;
+ if (area->spacetype != SPACE_VIEW3D) {
+ continue;
+ }
+ if (v3d->drawtype == OB_RENDER) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ static void prepare_mesh_for_viewport_render(Main *bmain, Scene *scene)
+ {
+ /* This is needed to prepare mesh to be used by the render
+ * engine from the viewport rendering. We do loading here
+ * so all the objects which shares the same mesh datablock
+ * are nicely tagged for update and updated.
+ *
+ * This makes it so viewport render engine doesn't need to
+ * call loading of the edit data for the me
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list