[Bf-blender-cvs] [155805b] soc-2013-cycles_volume: updated master into branch
Rafael Campos
noreply at git.blender.org
Wed Apr 30 16:39:26 CEST 2014
Commit: 155805b20959a7a41eb7e4fbbc4c5fad4c546869
Author: Rafael Campos
Date: Wed Apr 30 11:29:17 2014 -0300
https://developer.blender.org/rB155805b20959a7a41eb7e4fbbc4c5fad4c546869
updated master into branch
===================================================================
===================================================================
diff --cc CMakeLists.txt
index 4e4deec,74a662a..3f332ac
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@@ -877,16 -875,8 +879,16 @@@ if(UNIX AND NOT APPLE
endif()
endif()
+ if(WITH_CYCLES_OPENVDB)
+ find_package_wrapper(OpenVDB)
+ if(NOT OpenVDB_FOUND)
+ set(WITH_CYCLES_OPENVDB OFF)
+ message(STATUS "OpenVDB was not found. Turning option off.")
+ endif()
+ endif()
+
# OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
- set(PLATFORM_LINKLIBS "-lutil -lc -lm -lpthread -lstdc++")
+ set(PLATFORM_LINKLIBS "-lutil -lc -lm -lpthread")
if((NOT WITH_HEADLESS) AND (NOT WITH_GHOST_SDL))
find_package(X11 REQUIRED)
diff --cc intern/cycles/CMakeLists.txt
index 8a25a64,0d13c4b..c7dace1
--- a/intern/cycles/CMakeLists.txt
+++ b/intern/cycles/CMakeLists.txt
@@@ -64,29 -112,21 +112,33 @@@ if(WITH_CYCLES_OSL
include_directories(${OSL_INCLUDES})
endif()
- add_definitions(-DWITH_OPENCL)
- add_definitions(-DWITH_CUDA)
- add_definitions(-DWITH_MULTI)
+ add_definitions(
+ -DWITH_OPENCL
+ -DWITH_CUDA
+ -DWITH_MULTI
+ )
+if(WITH_CYCLES_OPENVDB)
+ include_directories(
+ SYSTEM
+ ${TBB_INCLUDE_DIRS})
+endif()
+
include_directories(
SYSTEM
${BOOST_INCLUDE_DIR}
${OPENIMAGEIO_INCLUDE_DIRS}
${OPENIMAGEIO_INCLUDE_DIRS}/OpenImageIO
- ${OPENEXR_INCLUDE_DIR})
+ ${OPENEXR_INCLUDE_DIR}
+ ${OPENEXR_INCLUDE_DIRS}
+ )
+if(WITH_CYCLES_OPENVDB)
+ include_directories(
+ ${OPENVDB_INCLUDE_DIRS}
+ ${TBB_INCLUDE_DIRS})
+endif()
+
# Subdirectories
if(WITH_CYCLES_BLENDER)
diff --cc intern/cycles/kernel/osl/osl_services.cpp
index 8d3fa0d,8f43775..ea17a7e
--- a/intern/cycles/kernel/osl/osl_services.cpp
+++ b/intern/cycles/kernel/osl/osl_services.cpp
@@@ -97,13 -100,19 +100,24 @@@ ustring OSLRenderServices::u_empty
OSLRenderServices::OSLRenderServices()
{
kernel_globals = NULL;
+ vdb_ts = VDBTextureSystem::init();
osl_ts = NULL;
+
+ #ifdef WITH_PTEX
+ size_t maxmem = 16384 * 1024;
+ ptex_cache = PtexCache::create(0, maxmem);
+ #endif
}
OSLRenderServices::~OSLRenderServices()
{
++
+ VDBTextureSystem::free(vdb_ts);
++
+ #ifdef WITH_PTEX
+ ptex_cache->release();
+ #endif
++
}
void OSLRenderServices::thread_init(KernelGlobals *kernel_globals_, OSL::TextureSystem *osl_ts_)
diff --cc intern/cycles/kernel/osl/osl_services.h
index 5539785,c3ea122..4b1cbcd
--- a/intern/cycles/kernel/osl/osl_services.h
+++ b/intern/cycles/kernel/osl/osl_services.h
@@@ -28,8 -28,10 +28,12 @@@
#include <OSL/oslexec.h>
#include <OSL/oslclosure.h>
+#include <textures/vdb_volume.h>
+
+ #ifdef WITH_PTEX
+ class PtexCache;
+ #endif
+
CCL_NAMESPACE_BEGIN
class Object;
@@@ -150,7 -159,9 +161,12 @@@ public
private:
KernelGlobals *kernel_globals;
OSL::TextureSystem *osl_ts;
+ ccl::VDBTextureSystem::Ptr vdb_ts;
++
+ #ifdef WITH_PTEX
+ PtexCache *ptex_cache;
+ #endif
++
};
CCL_NAMESPACE_END
More information about the Bf-blender-cvs
mailing list