Mesh: Replace auto smooth with node group #108014
|
@ -693,7 +693,7 @@ if(UNIX)
|
|||
if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||
option(WITH_LINKER_LLD "Use ld.lld linker which is usually faster than ld.gold" OFF)
|
||||
mark_as_advanced(WITH_LINKER_LLD)
|
||||
option(WITH_LINKER_MOLD "Use ld.mold linker which is usually faster than ld.gold & ld.lld. Needs \"sold\" subscription on macOS." OFF)
|
||||
option(WITH_LINKER_MOLD "Use ld.mold linker which is usually faster than ld.gold & ld.lld" OFF)
|
||||
mark_as_advanced(WITH_LINKER_MOLD)
|
||||
endif()
|
||||
endif()
|
||||
|
@ -1755,6 +1755,8 @@ endif()
|
|||
|
||||
if(WITH_COMPILER_SHORT_FILE_MACRO)
|
||||
# Use '-fmacro-prefix-map' for Clang and GCC (MSVC doesn't support this).
|
||||
set(C_PREFIX_MAP_FLAGS "")
|
||||
set(CXX_PREFIX_MAP_FLAGS "")
|
||||
add_check_c_compiler_flag(C_PREFIX_MAP_FLAGS C_MACRO_PREFIX_MAP -fmacro-prefix-map=foo=bar)
|
||||
add_check_cxx_compiler_flag(CXX_PREFIX_MAP_FLAGS CXX_MACRO_PREFIX_MAP -fmacro-prefix-map=foo=bar)
|
||||
if(C_MACRO_PREFIX_MAP AND CXX_MACRO_PREFIX_MAP)
|
||||
|
@ -1789,6 +1791,8 @@ if(WITH_COMPILER_SHORT_FILE_MACRO)
|
|||
)
|
||||
set(WITH_COMPILER_SHORT_FILE_MACRO OFF)
|
||||
endif()
|
||||
unset(C_PREFIX_MAP_FLAGS)
|
||||
unset(CXX_PREFIX_MAP_FLAGS)
|
||||
endif()
|
||||
|
||||
# Include warnings first, so its possible to disable them with user defined flags
|
||||
|
|
|
@ -16,7 +16,7 @@ set(ZLIB_HASH 9b8aa094c4e5765dabf4da391f00d15c)
|
|||
set(ZLIB_HASH_TYPE MD5)
|
||||
set(ZLIB_FILE zlib-${ZLIB_VERSION}.tar.gz)
|
||||
set(ZLIB_CPE "cpe:2.3:a:zlib:zlib:${ZLIB_VERSION}:*:*:*:*:*:*:*")
|
||||
#set(ZLIB_HOMEPAGE https://zlib.net)
|
||||
set(ZLIB_HOMEPAGE https://zlib.net)
|
||||
|
||||
set(OPENAL_VERSION 1.21.1)
|
||||
set(OPENAL_URI http://openal-soft.org/openal-releases/openal-soft-${OPENAL_VERSION}.tar.bz2)
|
||||
|
|
|
@ -269,6 +269,20 @@ DEPS_CRITICAL_SUBPACKAGES = (
|
|||
DISTRO_ID_ARCH: "dbus",
|
||||
},
|
||||
),
|
||||
Package(name="OpenGL Library",
|
||||
distro_package_names={DISTRO_ID_DEBIAN: "libgl-dev",
|
||||
DISTRO_ID_FEDORA: "mesa-libGL-devel",
|
||||
DISTRO_ID_SUSE: "Mesa-libGL-devel",
|
||||
DISTRO_ID_ARCH: "libglvnd",
|
||||
},
|
||||
),
|
||||
Package(name="EGL Library",
|
||||
distro_package_names={DISTRO_ID_DEBIAN: "libegl-dev",
|
||||
DISTRO_ID_FEDORA: "mesa-libEGL-devel",
|
||||
DISTRO_ID_SUSE: "Mesa-libEGL-devel",
|
||||
DISTRO_ID_ARCH: None, # Included in `libglvnd`.
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
|
|
|
@ -13,9 +13,13 @@
|
|||
# ALEMBIC_FOUND, If false, do not try to use Alembic.
|
||||
#
|
||||
|
||||
# If ALEMBIC_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT ALEMBIC_ROOT_DIR AND NOT $ENV{ALEMBIC_ROOT_DIR} STREQUAL "")
|
||||
# If `ALEMBIC_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED ALEMBIC_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{ALEMBIC_ROOT_DIR})
|
||||
SET(ALEMBIC_ROOT_DIR $ENV{ALEMBIC_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(ALEMBIC_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_alembic_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# BLOSC_LIBRARY, where to find the Blosc library.
|
||||
|
||||
# If BLOSC_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT BLOSC_ROOT_DIR AND NOT $ENV{BLOSC_ROOT_DIR} STREQUAL "")
|
||||
# If `BLOSC_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED BLOSC_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{BLOSC_ROOT_DIR})
|
||||
SET(BLOSC_ROOT_DIR $ENV{BLOSC_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(BLOSC_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_blosc_SEARCH_DIRS
|
||||
|
|
|
@ -12,9 +12,13 @@
|
|||
# BROTLI_FOUND, If false, do not try to use Brotli.
|
||||
#
|
||||
|
||||
# If BROTLI_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT BROTLI_ROOT_DIR AND NOT $ENV{BROTLI_ROOT_DIR} STREQUAL "")
|
||||
# If `BROTLI_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED BROTLI_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{BROTLI_ROOT_DIR})
|
||||
SET(BROTLI_ROOT_DIR $ENV{BROTLI_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(BROTLI_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_BROTLI_SEARCH_DIRS
|
||||
|
|
|
@ -12,9 +12,13 @@
|
|||
# This can also be an environment variable.
|
||||
# CLANG_FOUND, If false, do not try to use Clang.
|
||||
|
||||
# If CLANG_ROOT_DIR was defined in the environment, use it.
|
||||
if(NOT CLANG_ROOT_DIR AND NOT $ENV{CLANG_ROOT_DIR} STREQUAL "")
|
||||
# If `CLANG_ROOT_DIR` was defined in the environment, use it.
|
||||
if(DEFINED CLANG_ROOT_DIR)
|
||||
# Pass.
|
||||
elseif(DEFINED ENV{CLANG_ROOT_DIR})
|
||||
set(CLANG_ROOT_DIR $ENV{CLANG_ROOT_DIR})
|
||||
else()
|
||||
set(CLANG_ROOT_DIR "")
|
||||
endif()
|
||||
|
||||
if(NOT LLVM_ROOT_DIR)
|
||||
|
|
|
@ -18,9 +18,13 @@
|
|||
#
|
||||
# CLANG_TIDY_FOUND, If false, do not try to use Eigen3.
|
||||
|
||||
# If CLANG_TIDY_ROOT_DIR was defined in the environment, use it.
|
||||
if(NOT CLANG_TIDY_ROOT_DIR AND NOT $ENV{CLANG_TIDY_ROOT_DIR} STREQUAL "")
|
||||
# If `CLANG_TIDY_ROOT_DIR` was defined in the environment, use it.
|
||||
if(DEFINED CLANG_TIDY_ROOT_DIR)
|
||||
# Pass.
|
||||
elseif(DEFINED ENV{CLANG_TIDY_ROOT_DIR})
|
||||
set(CLANG_TIDY_ROOT_DIR $ENV{CLANG_TIDY_ROOT_DIR})
|
||||
else()
|
||||
set(CLANG_TIDY_ROOT_DIR "")
|
||||
endif()
|
||||
|
||||
set(_clang_tidy_SEARCH_DIRS
|
||||
|
|
|
@ -11,9 +11,13 @@
|
|||
# This can also be an environment variable.
|
||||
# EIGEN3_FOUND, If false, do not try to use Eigen3.
|
||||
|
||||
# If EIGEN3_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT EIGEN3_ROOT_DIR AND NOT $ENV{EIGEN3_ROOT_DIR} STREQUAL "")
|
||||
# If `EIGEN3_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED EIGEN3_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{EIGEN3_ROOT_DIR})
|
||||
SET(EIGEN3_ROOT_DIR $ENV{EIGEN3_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(EIGEN3_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_eigen3_SEARCH_DIRS
|
||||
|
|
|
@ -12,9 +12,13 @@
|
|||
# This can also be an environment variable.
|
||||
# EMBREEFOUND, If false, do not try to use Embree.
|
||||
|
||||
# If EMBREE_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT EMBREE_ROOT_DIR AND NOT $ENV{EMBREE_ROOT_DIR} STREQUAL "")
|
||||
# If `EMBREE_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED EMBREE_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{EMBREE_ROOT_DIR})
|
||||
SET(EMBREE_ROOT_DIR $ENV{EMBREE_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(EMBREE_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_embree_SEARCH_DIRS
|
||||
|
|
|
@ -9,8 +9,13 @@
|
|||
# This can also be an environment variable.
|
||||
# Epoxy_FOUND, If false, do not try to use epoxy.
|
||||
|
||||
IF(NOT EPOXY_ROOT_DIR AND NOT $ENV{EPOXY_ROOT_DIR} STREQUAL "")
|
||||
# If `EPOXY_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED EPOXY_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{EPOXY_ROOT_DIR})
|
||||
SET(EPOXY_ROOT_DIR $ENV{EPOXY_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(EPOXY_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
FIND_PATH(Epoxy_INCLUDE_DIR
|
||||
|
|
|
@ -13,9 +13,13 @@
|
|||
# FFMPEG_FOUND, If false, do not try to use FFmpeg.
|
||||
# FFMPEG_<COMPONENT>_LIBRARY, the given individual component libraries.
|
||||
|
||||
# If FFMPEG_ROOT_DIR was defined in the environment, use it.
|
||||
if(NOT FFMPEG_ROOT_DIR AND NOT $ENV{FFMPEG_ROOT_DIR} STREQUAL "")
|
||||
# If `FFMPEG_ROOT_DIR` was defined in the environment, use it.
|
||||
if(DEFINED FFMPEG_ROOT_DIR)
|
||||
# Pass.
|
||||
elseif(DEFINED ENV{FFMPEG_ROOT_DIR})
|
||||
set(FFMPEG_ROOT_DIR $ENV{FFMPEG_ROOT_DIR})
|
||||
else()
|
||||
set(FFMPEG_ROOT_DIR "")
|
||||
endif()
|
||||
|
||||
set(_ffmpeg_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# FFTW3_LIBRARY, where to find the Fftw3 library.
|
||||
|
||||
# If FFTW3_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT FFTW3_ROOT_DIR AND NOT $ENV{FFTW3_ROOT_DIR} STREQUAL "")
|
||||
# If `FFTW3_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED FFTW3_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{FFTW3_ROOT_DIR})
|
||||
SET(FFTW3_ROOT_DIR $ENV{FFTW3_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(FFTW3_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_fftw3_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# GMP_LIBRARY, where to find the GMP library.
|
||||
|
||||
# If GMP_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT GMP_ROOT_DIR AND NOT $ENV{GMP_ROOT_DIR} STREQUAL "")
|
||||
# If `GMP_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED GMP_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{GMP_ROOT_DIR})
|
||||
SET(GMP_ROOT_DIR $ENV{GMP_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(GMP_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_gmp_SEARCH_DIRS
|
||||
|
|
|
@ -60,9 +60,13 @@
|
|||
# GFLAGS_LIBRARY: gflags library, not including the libraries of any
|
||||
# dependencies.
|
||||
|
||||
# If GFLAGS_ROOT_DIR was defined in the environment, use it.
|
||||
if(NOT GFLAGS_ROOT_DIR AND NOT $ENV{GFLAGS_ROOT_DIR} STREQUAL "")
|
||||
# If `GFLAGS_ROOT_DIR` was defined in the environment, use it.
|
||||
if(DEFINED GFLAGS_ROOT_DIR)
|
||||
# Pass.
|
||||
elseif(DEFINED ENV{GFLAGS_ROOT_DIR})
|
||||
set(GFLAGS_ROOT_DIR $ENV{GFLAGS_ROOT_DIR})
|
||||
else()
|
||||
set(GFLAGS_ROOT_DIR "")
|
||||
endif()
|
||||
|
||||
if(DEFINED GFLAGS_ROOT_DIR)
|
||||
|
|
|
@ -38,9 +38,13 @@
|
|||
# GLOG_LIBRARY: glog library, not including the libraries of any
|
||||
# dependencies.
|
||||
|
||||
# If GLOG_ROOT_DIR was defined in the environment, use it.
|
||||
if(NOT GLOG_ROOT_DIR AND NOT $ENV{GLOG_ROOT_DIR} STREQUAL "")
|
||||
# If `GLOG_ROOT_DIR` was defined in the environment, use it.
|
||||
if(DEFINED GLOG_ROOT_DIR)
|
||||
# Pass.
|
||||
elseif(DEFINED ENV{GLOG_ROOT_DIR})
|
||||
set(GLOG_ROOT_DIR $ENV{GLOG_ROOT_DIR})
|
||||
else()
|
||||
set(GLOG_ROOT_DIR "")
|
||||
endif()
|
||||
|
||||
if(DEFINED GLOG_ROOT_DIR)
|
||||
|
|
|
@ -7,9 +7,13 @@
|
|||
# HIP_VERSION, the HIP compiler version
|
||||
# HIP_FOUND, if the HIP toolkit is found.
|
||||
|
||||
# If HIP_ROOT_DIR was defined in the environment, use it.
|
||||
if(NOT HIP_ROOT_DIR AND NOT $ENV{HIP_ROOT_DIR} STREQUAL "")
|
||||
# If `HIP_ROOT_DIR` was defined in the environment, use it.
|
||||
if(DEFINED HIP_ROOT_DIR)
|
||||
# Pass.
|
||||
elseif(DEFINED ENV{HIP_ROOT_DIR})
|
||||
set(HIP_ROOT_DIR $ENV{HIP_ROOT_DIR})
|
||||
else()
|
||||
set(HIP_ROOT_DIR "")
|
||||
endif()
|
||||
|
||||
set(_hip_SEARCH_DIRS
|
||||
|
|
|
@ -7,9 +7,13 @@
|
|||
# HIPRT_BITCODE, bitcode file with ray-tracing functionality
|
||||
# HIPRT_FOUND, if SDK found
|
||||
|
||||
# If HIPRT_ROOT_DIR was defined in the environment, use it.
|
||||
if(NOT HIPRT_ROOT_DIR AND NOT $ENV{HIPRT_ROOT_DIR} STREQUAL "")
|
||||
# If `HIPRT_ROOT_DIR` was defined in the environment, use it.
|
||||
if(DEFINED HIPRT_ROOT_DIR)
|
||||
# Pass.
|
||||
elseif(DEFINED ENV{HIPRT_ROOT_DIR})
|
||||
set(HIPRT_ROOT_DIR $ENV{HIPRT_ROOT_DIR})
|
||||
else()
|
||||
set(HIPRT_ROOT_DIR "")
|
||||
endif()
|
||||
|
||||
set(_hiprt_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# HARU_LIBRARY, where to find the Haru library.
|
||||
|
||||
# If HARU_ROOT_DIR was defined in the environment, use it.
|
||||
if(NOT HARU_ROOT_DIR AND NOT $ENV{HARU_ROOT_DIR} STREQUAL "")
|
||||
# If `HARU_ROOT_DIR` was defined in the environment, use it.
|
||||
if(DEFINED HARU_ROOT_DIR)
|
||||
# Pass.
|
||||
elseif(DEFINED ENV{HARU_ROOT_DIR})
|
||||
set(HARU_ROOT_DIR $ENV{HARU_ROOT_DIR})
|
||||
else()
|
||||
set(HARU_ROOT_DIR "")
|
||||
endif()
|
||||
|
||||
set(_haru_SEARCH_DIRS
|
||||
|
|
|
@ -13,9 +13,13 @@
|
|||
# also defined, but not for general use are
|
||||
# ICU_LIBRARY_xxx, where to find the icu libraries.
|
||||
|
||||
# If ICU_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT ICU_ROOT_DIR AND NOT $ENV{ICU_ROOT_DIR} STREQUAL "")
|
||||
# If `ICU_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED ICU_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{ICU_ROOT_DIR})
|
||||
SET(ICU_ROOT_DIR $ENV{ICU_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(ICU_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
if(Boost_USE_STATIC_LIBS)
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# JACK_LIBRARY, where to find the JACK library.
|
||||
|
||||
# If JACK_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT JACK_ROOT_DIR AND NOT $ENV{JACK_ROOT_DIR} STREQUAL "")
|
||||
# If `JACK_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED JACK_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{JACK_ROOT_DIR})
|
||||
SET(JACK_ROOT_DIR $ENV{JACK_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(JACK_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_jack_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# JEMALLOC_LIBRARY, where to find the JeMalloc library.
|
||||
|
||||
# If JEMALLOC_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT JEMALLOC_ROOT_DIR AND NOT $ENV{JEMALLOC_ROOT_DIR} STREQUAL "")
|
||||
# If `JEMALLOC_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED JEMALLOC_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{JEMALLOC_ROOT_DIR})
|
||||
SET(JEMALLOC_ROOT_DIR $ENV{JEMALLOC_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(JEMALLOC_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_jemalloc_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# LZO_LIBRARY, where to find the LZO library.
|
||||
|
||||
# If LZO_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT LZO_ROOT_DIR AND NOT $ENV{LZO_ROOT_DIR} STREQUAL "")
|
||||
# If `LZO_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED LZO_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{LZO_ROOT_DIR})
|
||||
SET(LZO_ROOT_DIR $ENV{LZO_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(LZO_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_lzo_SEARCH_DIRS
|
||||
|
|
|
@ -13,9 +13,13 @@
|
|||
# MOLTENVK_FOUND, If false, do not try to use MoltenVK.
|
||||
#
|
||||
|
||||
# If MOLTENVK_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT MOLTENVK_ROOT_DIR AND NOT $ENV{MOLTENVK_ROOT_DIR} STREQUAL "")
|
||||
# If `MOLTENVK_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED MOLTENVK_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{MOLTENVK_ROOT_DIR})
|
||||
SET(MOLTENVK_ROOT_DIR $ENV{MOLTENVK_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(MOLTENVK_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_moltenvk_SEARCH_DIRS
|
||||
|
|
|
@ -11,9 +11,13 @@
|
|||
# This can also be an environment variable.
|
||||
# NANOVDB_FOUND, If false, do not try to use NanoVDB.
|
||||
|
||||
# If NANOVDB_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT NANOVDB_ROOT_DIR AND NOT $ENV{NANOVDB_ROOT_DIR} STREQUAL "")
|
||||
# If `NANOVDB_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED NANOVDB_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{NANOVDB_ROOT_DIR})
|
||||
SET(NANOVDB_ROOT_DIR $ENV{NANOVDB_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(NANOVDB_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_nanovdb_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# OSL_LIBRARY_VERSION_MAJOR, OSL_LIBRARY_VERSION_MINOR, the major
|
||||
# and minor versions of OSL library if found.
|
||||
|
||||
# If OSL_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OSL_ROOT_DIR AND NOT $ENV{OSL_ROOT_DIR} STREQUAL "")
|
||||
# If `OSL_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OSL_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OSL_ROOT_DIR})
|
||||
SET(OSL_ROOT_DIR $ENV{OSL_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OSL_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_osl_FIND_COMPONENTS
|
||||
|
|
|
@ -20,9 +20,13 @@
|
|||
# Where '/opt/opencollada' is the base dir:
|
||||
# /opt/opencollada/COLLADABaseUtils/include/COLLADABUPlatform.h
|
||||
|
||||
# If OPENCOLLADA_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPENCOLLADA_ROOT_DIR AND NOT $ENV{OPENCOLLADA_ROOT_DIR} STREQUAL "")
|
||||
# If `OPENCOLLADA_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPENCOLLADA_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPENCOLLADA_ROOT_DIR})
|
||||
SET(OPENCOLLADA_ROOT_DIR $ENV{OPENCOLLADA_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPENCOLLADA_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_opencollada_FIND_INCLUDES
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# OPENCOLORIO_LIBRARY, where to find the OpenColorIO library.
|
||||
|
||||
# If OPENCOLORIO_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPENCOLORIO_ROOT_DIR AND NOT $ENV{OPENCOLORIO_ROOT_DIR} STREQUAL "")
|
||||
# If `OPENCOLORIO_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPENCOLORIO_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPENCOLORIO_ROOT_DIR})
|
||||
SET(OPENCOLORIO_ROOT_DIR $ENV{OPENCOLORIO_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPENCOLORIO_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_opencolorio_FIND_COMPONENTS
|
||||
|
|
|
@ -22,9 +22,13 @@
|
|||
# also defined, but not for general use are
|
||||
# OPENEXR_LIBRARY, where to find the OpenEXR library.
|
||||
|
||||
# If OPENEXR_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPENEXR_ROOT_DIR AND NOT $ENV{OPENEXR_ROOT_DIR} STREQUAL "")
|
||||
# If `OPENEXR_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPENEXR_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPENEXR_ROOT_DIR})
|
||||
SET(OPENEXR_ROOT_DIR $ENV{OPENEXR_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPENEXR_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
# Old versions (before 2.0?) do not have any version string,
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# OPENIMAGEDENOISE_LIBRARY, where to find the OpenImageDenoise library.
|
||||
|
||||
# If OPENIMAGEDENOISE_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPENIMAGEDENOISE_ROOT_DIR AND NOT $ENV{OPENIMAGEDENOISE_ROOT_DIR} STREQUAL "")
|
||||
# If `OPENIMAGEDENOISE_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPENIMAGEDENOISE_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPENIMAGEDENOISE_ROOT_DIR})
|
||||
SET(OPENIMAGEDENOISE_ROOT_DIR $ENV{OPENIMAGEDENOISE_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPENIMAGEDENOISE_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_openimagedenoise_SEARCH_DIRS
|
||||
|
|
|
@ -17,9 +17,13 @@
|
|||
# also defined, but not for general use are
|
||||
# OPENIMAGEIO_LIBRARY, where to find the OpenImageIO library.
|
||||
|
||||
# If OPENIMAGEIO_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPENIMAGEIO_ROOT_DIR AND NOT $ENV{OPENIMAGEIO_ROOT_DIR} STREQUAL "")
|
||||
# If `OPENIMAGEIO_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPENIMAGEIO_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPENIMAGEIO_ROOT_DIR})
|
||||
SET(OPENIMAGEIO_ROOT_DIR $ENV{OPENIMAGEIO_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPENIMAGEIO_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_openimageio_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# OPENJPEG_LIBRARY, where to find the OpenJPEG library.
|
||||
|
||||
# If OPENJPEG_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPENJPEG_ROOT_DIR AND NOT $ENV{OPENJPEG_ROOT_DIR} STREQUAL "")
|
||||
# If `OPENJPEG_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPENJPEG_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPENJPEG_ROOT_DIR})
|
||||
SET(OPENJPEG_ROOT_DIR $ENV{OPENJPEG_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPENJPEG_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_openjpeg_SEARCH_DIRS
|
||||
|
|
|
@ -12,9 +12,13 @@
|
|||
# This can also be an environment variable.
|
||||
# OPENSUBDIV_FOUND, if false, do not try to use OpenSubdiv.
|
||||
|
||||
# If OPENSUBDIV_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPENSUBDIV_ROOT_DIR AND NOT $ENV{OPENSUBDIV_ROOT_DIR} STREQUAL "")
|
||||
# If `OPENSUBDIV_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPENSUBDIV_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPENSUBDIV_ROOT_DIR})
|
||||
SET(OPENSUBDIV_ROOT_DIR $ENV{OPENSUBDIV_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPENSUBDIV_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_opensubdiv_FIND_COMPONENTS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# OPENVDB_LIBRARY, where to find the OPENVDB library.
|
||||
|
||||
# If OPENVDB_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPENVDB_ROOT_DIR AND NOT $ENV{OPENVDB_ROOT_DIR} STREQUAL "")
|
||||
# If `OPENVDB_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPENVDB_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPENVDB_ROOT_DIR})
|
||||
SET(OPENVDB_ROOT_DIR $ENV{OPENVDB_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPENVDB_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_openvdb_SEARCH_DIRS
|
||||
|
|
|
@ -11,9 +11,13 @@
|
|||
# This can also be an environment variable.
|
||||
# OPTIX_FOUND, If false, do not try to use OptiX.
|
||||
|
||||
# If OPTIX_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT OPTIX_ROOT_DIR AND NOT $ENV{OPTIX_ROOT_DIR} STREQUAL "")
|
||||
# If `OPTIX_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED OPTIX_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{OPTIX_ROOT_DIR})
|
||||
SET(OPTIX_ROOT_DIR $ENV{OPTIX_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(OPTIX_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_optix_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# PCRE_LIBRARY, where to find the PCRE library.
|
||||
|
||||
# If PCRE_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT PCRE_ROOT_DIR AND NOT $ENV{PCRE_ROOT_DIR} STREQUAL "")
|
||||
# If `PCRE_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED PCRE_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{PCRE_ROOT_DIR})
|
||||
SET(PCRE_ROOT_DIR $ENV{PCRE_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(PCRE_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_pcre_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# POTRACE_LIBRARY, where to find the POTRACE library.
|
||||
|
||||
# If POTRACE_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT POTRACE_ROOT_DIR AND NOT $ENV{POTRACE_ROOT_DIR} STREQUAL "")
|
||||
# If `POTRACE_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED POTRACE_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{POTRACE_ROOT_DIR})
|
||||
SET(POTRACE_ROOT_DIR $ENV{POTRACE_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(POTRACE_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_potrace_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# PUGIXML_LIBRARY, where to find the PugiXML library.
|
||||
|
||||
# If PUGIXML_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT PUGIXML_ROOT_DIR AND NOT $ENV{PUGIXML_ROOT_DIR} STREQUAL "")
|
||||
# If `PUGIXML_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED PUGIXML_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{PUGIXML_ROOT_DIR})
|
||||
SET(PUGIXML_ROOT_DIR $ENV{PUGIXML_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(PUGIXML_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_pugixml_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# LIBPULSE_LIBRARY, where to find the PulseAudio library.
|
||||
|
||||
# If LIBPULSE_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT LIBPULSE_ROOT_DIR AND NOT $ENV{LIBPULSE_ROOT_DIR} STREQUAL "")
|
||||
# If `LIBPULSE_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED LIBPULSE_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{LIBPULSE_ROOT_DIR})
|
||||
SET(LIBPULSE_ROOT_DIR $ENV{LIBPULSE_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(LIBPULSE_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_pulse_SEARCH_DIRS
|
||||
|
|
|
@ -27,9 +27,13 @@
|
|||
# also defined, but not for general use are
|
||||
# PYTHON_LIBRARY, where to find the python library.
|
||||
|
||||
# If PYTHON_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT PYTHON_ROOT_DIR AND NOT $ENV{PYTHON_ROOT_DIR} STREQUAL "")
|
||||
# If `PYTHON_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED PYTHON_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{PYTHON_ROOT_DIR})
|
||||
SET(PYTHON_ROOT_DIR $ENV{PYTHON_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(PYTHON_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_PYTHON_VERSION_SUPPORTED 3.10)
|
||||
|
|
|
@ -14,9 +14,13 @@
|
|||
# also defined, but not for general use are
|
||||
# SDL2_LIBRARY, where to find the SDL library.
|
||||
|
||||
# If SDL2_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT SDL2_ROOT_DIR AND NOT $ENV{SDL2_ROOT_DIR} STREQUAL "")
|
||||
# If `SDL2_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED SDL2_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{SDL2_ROOT_DIR})
|
||||
SET(SDL2_ROOT_DIR $ENV{SDL2_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(SDL2_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_sdl2_SEARCH_DIRS
|
||||
|
|
|
@ -13,9 +13,13 @@
|
|||
# SHADERC_FOUND, If false, do not try to use ShaderC.
|
||||
#
|
||||
|
||||
# If SHADERC_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT SHADERC_ROOT_DIR AND NOT $ENV{SHADERC_ROOT_DIR} STREQUAL "")
|
||||
# If `SHADERC_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED SHADERC_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{SHADERC_ROOT_DIR})
|
||||
SET(SHADERC_ROOT_DIR $ENV{SHADERC_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(SHADERC_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_shaderc_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# LIBSNDFILE_LIBRARY, where to find the SndFile library.
|
||||
|
||||
# If LIBSNDFILE_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT LIBSNDFILE_ROOT_DIR AND NOT $ENV{LIBSNDFILE_ROOT_DIR} STREQUAL "")
|
||||
# If `LIBSNDFILE_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED LIBSNDFILE_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{LIBSNDFILE_ROOT_DIR})
|
||||
SET(LIBSNDFILE_ROOT_DIR $ENV{LIBSNDFILE_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(LIBSNDFILE_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_sndfile_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# SPACENAV_LIBRARY, where to find the Spacenav library.
|
||||
|
||||
# If SPACENAV_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT SPACENAV_ROOT_DIR AND NOT $ENV{SPACENAV_ROOT_DIR} STREQUAL "")
|
||||
# If `SPACENAV_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED SPACENAV_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{SPACENAV_ROOT_DIR})
|
||||
SET(SPACENAV_ROOT_DIR $ENV{SPACENAV_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(SPACENAV_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_spacenav_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# TBB_LIBRARY, where to find the TBB library.
|
||||
|
||||
# If TBB_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT TBB_ROOT_DIR AND NOT $ENV{TBB_ROOT_DIR} STREQUAL "")
|
||||
# If `TBB_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED TBB_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{TBB_ROOT_DIR})
|
||||
SET(TBB_ROOT_DIR $ENV{TBB_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(TBB_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_tbb_SEARCH_DIRS
|
||||
|
|
|
@ -13,9 +13,13 @@
|
|||
# USD_FOUND, If false, do not try to use USD.
|
||||
#
|
||||
|
||||
# If USD_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT USD_ROOT_DIR AND NOT $ENV{USD_ROOT_DIR} STREQUAL "")
|
||||
# If `USD_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED USD_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{USD_ROOT_DIR})
|
||||
SET(USD_ROOT_DIR $ENV{USD_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(USD_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_usd_SEARCH_DIRS
|
||||
|
|
|
@ -13,9 +13,13 @@
|
|||
# VULKAN_FOUND, If false, do not try to use Vulkan.
|
||||
#
|
||||
|
||||
# If VULKAN_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT VULKAN_ROOT_DIR AND NOT $ENV{VULKAN_ROOT_DIR} STREQUAL "")
|
||||
# If `VULKAN_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED VULKAN_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{VULKAN_ROOT_DIR})
|
||||
SET(VULKAN_ROOT_DIR $ENV{VULKAN_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(VULKAN_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_vulkan_SEARCH_DIRS
|
||||
|
|
|
@ -14,9 +14,13 @@
|
|||
# also defined, but not for general use are
|
||||
# WEBP_LIBRARY, where to find the WEBP library.
|
||||
|
||||
# If WEBP_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT WEBP_ROOT_DIR AND NOT $ENV{WEBP_ROOT_DIR} STREQUAL "")
|
||||
# If `WEBP_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED WEBP_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{WEBP_ROOT_DIR})
|
||||
SET(WEBP_ROOT_DIR $ENV{WEBP_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(WEBP_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_webp_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# XML2_LIBRARY, where to find the XML2 library.
|
||||
|
||||
# If XML2_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT XML2_ROOT_DIR AND NOT $ENV{XML2_ROOT_DIR} STREQUAL "")
|
||||
# If `XML2_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED XML2_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{XML2_ROOT_DIR})
|
||||
SET(XML2_ROOT_DIR $ENV{XML2_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(XML2_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_xml2_SEARCH_DIRS
|
||||
|
|
|
@ -23,9 +23,13 @@
|
|||
# also defined, but not for general use are
|
||||
# XR_OPENXR_SDK_LOADER_LIBRARY, where to find the OpenXR-SDK loader library.
|
||||
|
||||
# If XR_OPENXR_SDK_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT XR_OPENXR_SDK_ROOT_DIR AND NOT $ENV{XR_OPENXR_SDK_ROOT_DIR} STREQUAL "")
|
||||
# If `XR_OPENXR_SDK_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED XR_OPENXR_SDK_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{XR_OPENXR_SDK_ROOT_DIR})
|
||||
SET(XR_OPENXR_SDK_ROOT_DIR $ENV{XR_OPENXR_SDK_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(XR_OPENXR_SDK_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_xr_openxr_sdk_SEARCH_DIRS
|
||||
|
|
|
@ -15,9 +15,13 @@
|
|||
# also defined, but not for general use are
|
||||
# ZSTD_LIBRARY, where to find the Zstd library.
|
||||
|
||||
# If ZSTD_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT ZSTD_ROOT_DIR AND NOT $ENV{ZSTD_ROOT_DIR} STREQUAL "")
|
||||
# If `ZSTD_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED ZSTD_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{ZSTD_ROOT_DIR})
|
||||
SET(ZSTD_ROOT_DIR $ENV{ZSTD_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(ZSTD_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_zstd_SEARCH_DIRS
|
||||
|
|
|
@ -11,9 +11,13 @@
|
|||
# This can also be an environment variable.
|
||||
# SSE2NEON_FOUND, If false, do not try to use sse2neon.
|
||||
|
||||
# If SSE2NEON_ROOT_DIR was defined in the environment, use it.
|
||||
IF(NOT SSE2NEON_ROOT_DIR AND NOT $ENV{SSE2NEON_ROOT_DIR} STREQUAL "")
|
||||
# If `SSE2NEON_ROOT_DIR` was defined in the environment, use it.
|
||||
IF(DEFINED SSE2NEON_ROOT_DIR)
|
||||
# Pass.
|
||||
ELSEIF(DEFINED ENV{SSE2NEON_ROOT_DIR})
|
||||
SET(SSE2NEON_ROOT_DIR $ENV{SSE2NEON_ROOT_DIR})
|
||||
ELSE()
|
||||
SET(SSE2NEON_ROOT_DIR "")
|
||||
ENDIF()
|
||||
|
||||
SET(_sse2neon_SEARCH_DIRS
|
||||
|
|
|
@ -39,6 +39,8 @@ macro(BLENDER_SRC_GTEST_EX)
|
|||
unset(_current_include_directories)
|
||||
if(WIN32)
|
||||
set(MANIFEST "${CMAKE_BINARY_DIR}/tests.exe.manifest")
|
||||
else()
|
||||
set(MANIFEST "")
|
||||
endif()
|
||||
|
||||
add_executable(${TARGET_NAME} ${ARG_SRC} ${MANIFEST})
|
||||
|
@ -63,10 +65,13 @@ macro(BLENDER_SRC_GTEST_EX)
|
|||
bf_intern_guardedalloc
|
||||
extern_gtest
|
||||
extern_gmock
|
||||
# needed for glog
|
||||
${PTHREADS_LIBRARIES}
|
||||
# Needed for GLOG.
|
||||
${GLOG_LIBRARIES}
|
||||
${GFLAGS_LIBRARIES})
|
||||
|
||||
if(DEFINED PTHREADS_LIBRARIES) # Needed for GLOG.
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE ${PTHREADS_LIBRARIES})
|
||||
endif()
|
||||
if(WITH_OPENMP_STATIC)
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE ${OpenMP_LIBRARIES})
|
||||
endif()
|
||||
|
@ -102,8 +107,8 @@ macro(BLENDER_SRC_GTEST_EX)
|
|||
endif()
|
||||
if(WIN32)
|
||||
set_target_properties(${TARGET_NAME} PROPERTIES VS_GLOBAL_VcpkgEnabled "false")
|
||||
unset(MANIFEST)
|
||||
endif()
|
||||
unset(MANIFEST)
|
||||
unset(TEST_INC)
|
||||
unset(TEST_INC_SYS)
|
||||
unset(TARGET_NAME)
|
||||
|
|
|
@ -186,8 +186,6 @@ endif()
|
|||
# C++ standards conformace (/permissive-) is available on msvc 15.5 (1912) and up
|
||||
if(NOT MSVC_CLANG)
|
||||
string(APPEND CMAKE_CXX_FLAGS " /permissive-")
|
||||
# Two-phase name lookup does not place nicely with OpenMP yet, so disable for now
|
||||
string(APPEND CMAKE_CXX_FLAGS " /Zc:twoPhase-")
|
||||
endif()
|
||||
|
||||
if(WITH_WINDOWS_SCCACHE AND CMAKE_VS_MSBUILD_COMMAND)
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
"""
|
||||
This example shows how to use B-Bone segment matrices to emulate deformation
|
||||
produced by the Armature modifier or constraint when assigned to the given bone
|
||||
(without Preserve Volume). The coordinates are processed in armature Pose space:
|
||||
"""
|
||||
|
||||
|
||||
def bbone_deform_matrix(pose_bone, point):
|
||||
index, blend_next = pose_bone.bbone_segment_index(point)
|
||||
|
||||
rest1 = pose_bone.bbone_segment_matrix(index, rest=True)
|
||||
pose1 = pose_bone.bbone_segment_matrix(index, rest=False)
|
||||
deform1 = pose1 @ rest1.inverted()
|
||||
|
||||
# bbone_segment_index ensures that index + 1 is always valid
|
||||
rest2 = pose_bone.bbone_segment_matrix(index + 1, rest=True)
|
||||
pose2 = pose_bone.bbone_segment_matrix(index + 1, rest=False)
|
||||
deform2 = pose2 @ rest2.inverted()
|
||||
|
||||
deform = deform1 * (1 - blend_next) + deform2 * blend_next
|
||||
|
||||
return pose_bone.matrix @ deform @ pose_bone.bone.matrix_local.inverted()
|
||||
|
||||
|
||||
# Armature modifier deforming vertices:
|
||||
mesh = bpy.data.objects["Mesh"]
|
||||
pose_bone = bpy.data.objects["Armature"].pose.bones["Bone"]
|
||||
|
||||
for vertex in mesh.data.vertices:
|
||||
vertex.co = bbone_deform_matrix(pose_bone, vertex.co) @ vertex.co
|
||||
|
||||
# Armature constraint modifying an object transform:
|
||||
empty = bpy.data.objects["Empty"]
|
||||
matrix = empty.matrix_world
|
||||
|
||||
empty.matrix_world = bbone_deform_matrix(pose_bone, matrix.translation) @ matrix
|
|
@ -3,7 +3,7 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# This is a quite stupid script which extracts bmesh api docs from
|
||||
# 'bmesh_opdefines.c' in order to avoid having to add a lot of introspection
|
||||
# 'bmesh_opdefines.cc' in order to avoid having to add a lot of introspection
|
||||
# data access into the api.
|
||||
#
|
||||
# The script is stupid because it makes assumptions about formatting...
|
||||
|
@ -19,7 +19,7 @@ import re
|
|||
|
||||
CURRENT_DIR = os.path.abspath(os.path.dirname(__file__))
|
||||
SOURCE_DIR = os.path.normpath(os.path.abspath(os.path.normpath(os.path.join(CURRENT_DIR, "..", ".."))))
|
||||
FILE_OP_DEFINES_C = os.path.join(SOURCE_DIR, "source", "blender", "bmesh", "intern", "bmesh_opdefines.c")
|
||||
FILE_OP_DEFINES_CC = os.path.join(SOURCE_DIR, "source", "blender", "bmesh", "intern", "bmesh_opdefines.cc")
|
||||
OUT_RST = os.path.join(CURRENT_DIR, "rst", "bmesh.ops.rst")
|
||||
|
||||
HEADER = r"""
|
||||
|
@ -43,7 +43,7 @@ This script shows how operators can be used to model a link of a chain.
|
|||
|
||||
|
||||
def main():
|
||||
fsrc = open(FILE_OP_DEFINES_C, 'r', encoding="utf-8")
|
||||
fsrc = open(FILE_OP_DEFINES_CC, 'r', encoding="utf-8")
|
||||
|
||||
blocks = []
|
||||
|
||||
|
@ -157,6 +157,8 @@ def main():
|
|||
l = l.strip()
|
||||
# casts
|
||||
l = l.replace("(int)", "")
|
||||
l = re.sub(r'to_subtype_union\((.*?)\)', '{\\1}', l)
|
||||
l = re.sub(r'eBMOpSlotSubType_Elem\((.*?)\)', '\\1', l)
|
||||
|
||||
l = l.replace("{", "(")
|
||||
l = l.replace("}", ")")
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
set(INC
|
||||
.
|
||||
PUBLIC .
|
||||
)
|
||||
|
||||
set(INC_SYS
|
||||
|
@ -26,3 +26,4 @@ set(LIB
|
|||
)
|
||||
|
||||
blender_add_lib(extern_curve_fit_nd "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
||||
add_library(bf::extern::curve_fit_nd ALIAS extern_curve_fit_nd)
|
||||
|
|
|
@ -8,6 +8,8 @@ set(INC
|
|||
|
||||
set(INC_SYS
|
||||
)
|
||||
set(LIB
|
||||
)
|
||||
|
||||
add_library(bf_intern_atomic INTERFACE)
|
||||
|
||||
|
|
|
@ -267,6 +267,7 @@ void CPUDevice::build_bvh(BVH *bvh, Progress &progress, bool refit)
|
|||
if (bvh->params.bvh_layout == BVH_LAYOUT_EMBREE ||
|
||||
bvh->params.bvh_layout == BVH_LAYOUT_MULTI_OPTIX_EMBREE ||
|
||||
bvh->params.bvh_layout == BVH_LAYOUT_MULTI_METAL_EMBREE ||
|
||||
bvh->params.bvh_layout == BVH_LAYOUT_MULTI_HIPRT_EMBREE ||
|
||||
bvh->params.bvh_layout == BVH_LAYOUT_MULTI_EMBREEGPU_EMBREE)
|
||||
{
|
||||
BVHEmbree *const bvh_embree = static_cast<BVHEmbree *>(bvh);
|
||||
|
|
|
@ -142,6 +142,11 @@ class MultiDevice : public Device {
|
|||
return BVH_LAYOUT_MULTI_EMBREEGPU_EMBREE;
|
||||
}
|
||||
|
||||
const BVHLayoutMask BVH_LAYOUT_HIPRT_EMBREE = (BVH_LAYOUT_HIPRT | BVH_LAYOUT_EMBREE);
|
||||
if ((bvh_layout_mask_all & BVH_LAYOUT_HIPRT_EMBREE) == BVH_LAYOUT_HIPRT_EMBREE) {
|
||||
return BVH_LAYOUT_MULTI_HIPRT_EMBREE;
|
||||
}
|
||||
|
||||
return bvh_layout_mask;
|
||||
}
|
||||
|
||||
|
@ -214,7 +219,7 @@ class MultiDevice : public Device {
|
|||
params.bvh_layout = sub.device->info.type == DEVICE_METAL ? BVH_LAYOUT_METAL :
|
||||
BVH_LAYOUT_EMBREE;
|
||||
else if (bvh->params.bvh_layout == BVH_LAYOUT_MULTI_HIPRT_EMBREE)
|
||||
params.bvh_layout = sub.device->info.type == DEVICE_HIPRT ? BVH_LAYOUT_HIPRT :
|
||||
params.bvh_layout = sub.device->info.type == DEVICE_HIP ? BVH_LAYOUT_HIPRT :
|
||||
BVH_LAYOUT_EMBREE;
|
||||
else if (bvh->params.bvh_layout == BVH_LAYOUT_MULTI_EMBREEGPU_EMBREE)
|
||||
params.bvh_layout = sub.device->info.type == DEVICE_ONEAPI ? BVH_LAYOUT_EMBREEGPU :
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2022 NVIDIA Corporation
|
||||
* Copyright 2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2022 NVIDIA Corporation
|
||||
* SPDX-FileCopyrightText: 2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "hydra/attribute.h"
|
||||
#include "hydra/geometry.h"
|
||||
|
|
|
@ -136,7 +136,6 @@ set(SRC_KERNEL_CLOSURE_HEADERS
|
|||
closure/emissive.h
|
||||
closure/volume.h
|
||||
closure/bsdf_principled_diffuse.h
|
||||
closure/bsdf_principled_sheen.h
|
||||
closure/bsdf_hair_principled.h
|
||||
)
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
#include "kernel/closure/bsdf_hair.h"
|
||||
#include "kernel/closure/bsdf_hair_principled.h"
|
||||
#include "kernel/closure/bsdf_principled_diffuse.h"
|
||||
#include "kernel/closure/bsdf_principled_sheen.h"
|
||||
#include "kernel/closure/bssrdf.h"
|
||||
#include "kernel/closure/volume.h"
|
||||
// clang-format on
|
||||
|
@ -210,11 +209,6 @@ ccl_device_inline int bsdf_sample(KernelGlobals kg,
|
|||
*sampled_roughness = one_float2();
|
||||
*eta = 1.0f;
|
||||
break;
|
||||
case CLOSURE_BSDF_PRINCIPLED_SHEEN_ID:
|
||||
label = bsdf_principled_sheen_sample(sc, Ng, sd->wi, rand_xy, eval, wo, pdf);
|
||||
*sampled_roughness = one_float2();
|
||||
*eta = 1.0f;
|
||||
break;
|
||||
case CLOSURE_BSDF_SHEEN_ID:
|
||||
label = bsdf_sheen_sample(sc, Ng, sd->wi, rand_xy, eval, wo, pdf);
|
||||
*sampled_roughness = one_float2();
|
||||
|
@ -351,10 +345,6 @@ ccl_device_inline void bsdf_roughness_eta(const KernelGlobals kg,
|
|||
*roughness = one_float2();
|
||||
*eta = 1.0f;
|
||||
break;
|
||||
case CLOSURE_BSDF_PRINCIPLED_SHEEN_ID:
|
||||
*roughness = one_float2();
|
||||
*eta = 1.0f;
|
||||
break;
|
||||
case CLOSURE_BSDF_SHEEN_ID:
|
||||
alpha = ((ccl_private SheenBsdf *)sc)->roughness;
|
||||
*roughness = make_float2(alpha, alpha);
|
||||
|
@ -439,7 +429,6 @@ ccl_device_inline int bsdf_label(const KernelGlobals kg,
|
|||
case CLOSURE_BSDF_PRINCIPLED_DIFFUSE_ID:
|
||||
label = LABEL_REFLECT | LABEL_DIFFUSE;
|
||||
break;
|
||||
case CLOSURE_BSDF_PRINCIPLED_SHEEN_ID:
|
||||
case CLOSURE_BSDF_SHEEN_ID:
|
||||
label = LABEL_REFLECT | LABEL_DIFFUSE;
|
||||
break;
|
||||
|
@ -534,9 +523,6 @@ ccl_device_inline
|
|||
case CLOSURE_BSDF_PRINCIPLED_DIFFUSE_ID:
|
||||
eval = bsdf_principled_diffuse_eval(sc, sd->wi, wo, pdf);
|
||||
break;
|
||||
case CLOSURE_BSDF_PRINCIPLED_SHEEN_ID:
|
||||
eval = bsdf_principled_sheen_eval(sc, sd->wi, wo, pdf);
|
||||
break;
|
||||
case CLOSURE_BSDF_SHEEN_ID:
|
||||
eval = bsdf_sheen_eval(sc, sd->wi, wo, pdf);
|
||||
break;
|
||||
|
@ -615,10 +601,6 @@ ccl_device_inline Spectrum bsdf_albedo(ccl_private const ShaderData *sd,
|
|||
albedo *= bsdf_microfacet_estimate_fresnel(
|
||||
sd, (ccl_private const MicrofacetBsdf *)sc, reflection, transmission);
|
||||
}
|
||||
else if (sc->type == CLOSURE_BSDF_PRINCIPLED_SHEEN_ID) {
|
||||
kernel_assert(reflection);
|
||||
albedo *= ((ccl_private const PrincipledSheenBsdf *)sc)->avg_value;
|
||||
}
|
||||
else if (sc->type == CLOSURE_BSDF_HAIR_PRINCIPLED_ID) {
|
||||
/* TODO(lukas): Principled Hair could also be split into a glossy and a transmission component,
|
||||
* similar to Glass BSDFs. */
|
||||
|
|
|
@ -1,111 +0,0 @@
|
|||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#pragma once
|
||||
|
||||
/* DISNEY PRINCIPLED SHEEN BRDF
|
||||
*
|
||||
* Shading model by Brent Burley (Disney): "Physically Based Shading at Disney" (2012)
|
||||
*/
|
||||
|
||||
#include "kernel/closure/bsdf_util.h"
|
||||
|
||||
CCL_NAMESPACE_BEGIN
|
||||
|
||||
typedef struct PrincipledSheenBsdf {
|
||||
SHADER_CLOSURE_BASE;
|
||||
float avg_value;
|
||||
} PrincipledSheenBsdf;
|
||||
|
||||
static_assert(sizeof(ShaderClosure) >= sizeof(PrincipledSheenBsdf),
|
||||
"PrincipledSheenBsdf is too large!");
|
||||
|
||||
ccl_device_inline float calculate_avg_principled_sheen_brdf(float3 N, float3 I)
|
||||
{
|
||||
/* To compute the average, we set the half-vector to the normal, resulting in
|
||||
* NdotI = NdotL = NdotV = LdotH */
|
||||
float NdotI = dot(N, I);
|
||||
if (NdotI < 0.0f) {
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
return schlick_fresnel(NdotI) * NdotI;
|
||||
}
|
||||
|
||||
ccl_device Spectrum
|
||||
calculate_principled_sheen_brdf(float3 N, float3 V, float3 L, float3 H, ccl_private float *pdf)
|
||||
{
|
||||
float NdotL = dot(N, L);
|
||||
float NdotV = dot(N, V);
|
||||
|
||||
if (NdotL < 0 || NdotV < 0) {
|
||||
*pdf = 0.0f;
|
||||
return zero_spectrum();
|
||||
}
|
||||
|
||||
float LdotH = dot(L, H);
|
||||
|
||||
float value = schlick_fresnel(LdotH) * NdotL;
|
||||
|
||||
return make_spectrum(value);
|
||||
}
|
||||
|
||||
ccl_device int bsdf_principled_sheen_setup(ccl_private const ShaderData *sd,
|
||||
ccl_private PrincipledSheenBsdf *bsdf)
|
||||
{
|
||||
bsdf->type = CLOSURE_BSDF_PRINCIPLED_SHEEN_ID;
|
||||
bsdf->avg_value = calculate_avg_principled_sheen_brdf(bsdf->N, sd->wi);
|
||||
bsdf->sample_weight *= bsdf->avg_value;
|
||||
return SD_BSDF | SD_BSDF_HAS_EVAL;
|
||||
}
|
||||
|
||||
ccl_device Spectrum bsdf_principled_sheen_eval(ccl_private const ShaderClosure *sc,
|
||||
const float3 wi,
|
||||
const float3 wo,
|
||||
ccl_private float *pdf)
|
||||
{
|
||||
ccl_private const PrincipledSheenBsdf *bsdf = (ccl_private const PrincipledSheenBsdf *)sc;
|
||||
const float3 N = bsdf->N;
|
||||
|
||||
if (dot(N, wo) > 0.0f) {
|
||||
const float3 V = wi;
|
||||
const float3 L = wo;
|
||||
const float3 H = normalize(L + V);
|
||||
|
||||
*pdf = fmaxf(dot(N, wo), 0.0f) * M_1_PI_F;
|
||||
return calculate_principled_sheen_brdf(N, V, L, H, pdf);
|
||||
}
|
||||
else {
|
||||
*pdf = 0.0f;
|
||||
return zero_spectrum();
|
||||
}
|
||||
}
|
||||
|
||||
ccl_device int bsdf_principled_sheen_sample(ccl_private const ShaderClosure *sc,
|
||||
float3 Ng,
|
||||
float3 wi,
|
||||
float2 rand,
|
||||
ccl_private Spectrum *eval,
|
||||
ccl_private float3 *wo,
|
||||
ccl_private float *pdf)
|
||||
{
|
||||
ccl_private const PrincipledSheenBsdf *bsdf = (ccl_private const PrincipledSheenBsdf *)sc;
|
||||
|
||||
float3 N = bsdf->N;
|
||||
|
||||
sample_cos_hemisphere(N, rand, wo, pdf);
|
||||
|
||||
if (dot(Ng, *wo) > 0) {
|
||||
float3 H = normalize(wi + *wo);
|
||||
|
||||
*eval = calculate_principled_sheen_brdf(N, wi, *wo, H, pdf);
|
||||
}
|
||||
else {
|
||||
*eval = zero_spectrum();
|
||||
*pdf = 0.0f;
|
||||
}
|
||||
return LABEL_REFLECT | LABEL_DIFFUSE;
|
||||
}
|
||||
|
||||
CCL_NAMESPACE_END
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
/* CUDA kernel entry points */
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2021-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2021-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
/* Metal kernel entry points. */
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2019, NVIDIA Corporation.
|
||||
* Copyright 2019-2022 Blender Foundation. */
|
||||
/* SPDX-FileCopyrightText: 2019, NVIDIA Corporation
|
||||
* SPDX-FileCopyrightText: 2019-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
// clang-format off
|
||||
#include "kernel/device/optix/compat.h"
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#define WITH_OSL
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2021-2022 Blender Foundation. */
|
||||
/* SPDX-FileCopyrightText: 2021-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
/* Copy of the regular kernels with additional shader ray-tracing kernel that takes
|
||||
* much longer to compiler. This is only loaded when needed by the scene. */
|
||||
|
|
|
@ -79,6 +79,13 @@ ccl_device_inline bool light_link_object_match(KernelGlobals kg,
|
|||
return true;
|
||||
}
|
||||
|
||||
/* Emitter is OBJECT_NONE when the emitter is a world volume.
|
||||
* It is not explicitly linkable to any object, so assume it is coming from the default light
|
||||
* set which affects all objects in the scene. */
|
||||
if (object_emitter == OBJECT_NONE) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const uint64_t set_membership = kernel_data_fetch(objects, object_emitter).light_set_membership;
|
||||
const uint receiver_set = (object_receiver != OBJECT_NONE) ?
|
||||
kernel_data_fetch(objects, object_receiver).receiver_light_set :
|
||||
|
|
|
@ -21,7 +21,6 @@
|
|||
#include "kernel/closure/bsdf_hair.h"
|
||||
#include "kernel/closure/bsdf_hair_principled.h"
|
||||
#include "kernel/closure/bsdf_principled_diffuse.h"
|
||||
#include "kernel/closure/bsdf_principled_sheen.h"
|
||||
#include "kernel/closure/volume.h"
|
||||
#include "kernel/closure/bsdf_diffuse_ramp.h"
|
||||
#include "kernel/closure/bsdf_phong_ramp.h"
|
||||
|
@ -651,29 +650,6 @@ ccl_device void osl_closure_principled_diffuse_setup(
|
|||
sd->flag |= bsdf_principled_diffuse_setup(bsdf);
|
||||
}
|
||||
|
||||
ccl_device void osl_closure_principled_sheen_setup(
|
||||
KernelGlobals kg,
|
||||
ccl_private ShaderData *sd,
|
||||
uint32_t path_flag,
|
||||
float3 weight,
|
||||
ccl_private const PrincipledSheenClosure *closure)
|
||||
{
|
||||
if (osl_closure_skip(kg, sd, path_flag, LABEL_DIFFUSE)) {
|
||||
return;
|
||||
}
|
||||
|
||||
ccl_private PrincipledSheenBsdf *bsdf = (ccl_private PrincipledSheenBsdf *)bsdf_alloc(
|
||||
sd, sizeof(PrincipledSheenBsdf), rgb_to_spectrum(weight));
|
||||
if (!bsdf) {
|
||||
return;
|
||||
}
|
||||
|
||||
bsdf->N = closure->N;
|
||||
bsdf->avg_value = 0.0f;
|
||||
|
||||
sd->flag |= bsdf_principled_sheen_setup(sd, bsdf);
|
||||
}
|
||||
|
||||
/* Variable cone emissive closure
|
||||
*
|
||||
* This primitive emits in a cone having a configurable penumbra area where the light decays to 0
|
||||
|
|
|
@ -137,10 +137,6 @@ OSL_CLOSURE_STRUCT_BEGIN(PrincipledDiffuse, principled_diffuse)
|
|||
OSL_CLOSURE_STRUCT_MEMBER(PrincipledDiffuse, FLOAT, float, roughness, NULL)
|
||||
OSL_CLOSURE_STRUCT_END(PrincipledDiffuse, principled_diffuse)
|
||||
|
||||
OSL_CLOSURE_STRUCT_BEGIN(PrincipledSheen, principled_sheen)
|
||||
OSL_CLOSURE_STRUCT_MEMBER(PrincipledSheen, VECTOR, packed_float3, N, NULL)
|
||||
OSL_CLOSURE_STRUCT_END(PrincipledSheen, principled_sheen)
|
||||
|
||||
OSL_CLOSURE_STRUCT_BEGIN(GenericEmissive, emission)
|
||||
OSL_CLOSURE_STRUCT_END(GenericEmissive, emission)
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#define WITH_OSL
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright 2011-2022 Blender Foundation */
|
||||
/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0 */
|
||||
|
||||
#include "stdcycles.h"
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue