From 223aff8b3f73bb786dce5c67b83ff55208d43969 Mon Sep 17 00:00:00 2001 From: Marijn Tamis Date: Mon, 31 Jul 2017 13:52:20 +0200 Subject: NvCloth 1.1.2 Release. (22576033) --- NvCloth/CmakeGenerateProjects.bat | 1 + NvCloth/GenerateProjectsLinux.sh | 8 +- NvCloth/GenerateProjectsOsx.sh | 4 +- NvCloth/ReleaseNotes.txt | 15 ++- NvCloth/compiler/cmake/Linux/CMakeLists.txt | 6 +- NvCloth/compiler/cmake/Linux/NvCloth.cmake | 4 +- NvCloth/compiler/cmake/Mac/CMakeLists.txt | 10 +- NvCloth/compiler/cmake/Mac/NvCloth.cmake | 4 +- NvCloth/compiler/cmake/windows/CMakeLists.txt | 5 - NvCloth/compiler/cmake/windows/NvCloth.cmake | 57 ++++++-- NvCloth/docs/documentation/CopyRight/Index.html | 40 +++--- NvCloth/docs/documentation/Modules/Index.html | 38 +++--- NvCloth/docs/documentation/ReleaseNotes/index.html | 16 +++ NvCloth/docs/documentation/UserGuide/Index.html | 14 +- NvCloth/docs/documentation/searchindex.js | 2 +- NvCloth/docs/doxy/files/_callbacks_8h-source.html | 145 +++++++++++--------- NvCloth/docs/doxy/files/_callbacks_8h.html | 25 ++++ NvCloth/docs/doxy/files/_cloth_8h-source.html | 110 ++++++++-------- .../doxy/files/_cloth_mesh_desc_8h-source.html | 22 ++-- NvCloth/docs/doxy/files/_solver_8h-source.html | 99 +++++++------- NvCloth/docs/doxy/files/_solver_8h.html | 1 + .../files/classnv_1_1cloth_1_1_cloth-members.html | 2 + .../doxy/files/classnv_1_1cloth_1_1_cloth.html | 57 +++++++- .../files/classnv_1_1cloth_1_1_solver-members.html | 6 +- .../doxy/files/classnv_1_1cloth_1_1_solver.html | 66 ++++++++-- NvCloth/docs/doxy/files/functions.html | 2 +- NvCloth/docs/doxy/files/functions_0x67.html | 10 +- NvCloth/docs/doxy/files/functions_0x72.html | 2 +- NvCloth/docs/doxy/files/functions_0x73.html | 10 +- NvCloth/docs/doxy/files/functions_func.html | 2 +- NvCloth/docs/doxy/files/functions_func_0x67.html | 10 +- NvCloth/docs/doxy/files/functions_func_0x72.html | 2 +- NvCloth/docs/doxy/files/functions_func_0x73.html | 8 +- NvCloth/docs/doxy/files/globals.html | 2 + NvCloth/docs/doxy/files/globals_defs.html | 2 + NvCloth/include/NvCloth/Callbacks.h | 17 ++- NvCloth/samples/SampleBase/core/Application.cpp | 16 ++- NvCloth/src/Callbacks.cpp | 6 +- NvCloth/src/ClothImpl.h | 2 +- NvCloth/src/MovingAverage.h | 146 +++++++++++---------- NvCloth/src/SwFactory.cpp | 2 +- NvCloth/src/SwSolverKernel.cpp | 2 +- NvCloth/src/cuda/CuSolverKernel.cu | 13 +- 43 files changed, 652 insertions(+), 359 deletions(-) (limited to 'NvCloth') diff --git a/NvCloth/CmakeGenerateProjects.bat b/NvCloth/CmakeGenerateProjects.bat index fe50f54..36bddde 100644 --- a/NvCloth/CmakeGenerateProjects.bat +++ b/NvCloth/CmakeGenerateProjects.bat @@ -26,6 +26,7 @@ IF NOT DEFINED GW_DEPS_ROOT GOTO GW_DEPS_ROOT_UNDEFINED set PX_OUTPUT_ROOT=%~dp0 REM Generate projects here +REM you can disable cuda/dx11 support by adding -DNV_CLOTH_ENABLE_CUDA=0 / -DNV_CLOTH_ENABLE_DX11=0 rmdir /s /q compiler\vc11win32-cmake\ mkdir compiler\vc11win32-cmake\ diff --git a/NvCloth/GenerateProjectsLinux.sh b/NvCloth/GenerateProjectsLinux.sh index 56d1788..b56176b 100644 --- a/NvCloth/GenerateProjectsLinux.sh +++ b/NvCloth/GenerateProjectsLinux.sh @@ -19,23 +19,23 @@ export PX_OUTPUT_ROOT="$PWD" rm -r -f compiler/linux64-debug-cmake/ mkdir compiler/linux64-debug-cmake/ cd compiler/linux64-debug-cmake/ -cmake ../cmake/Linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=debug -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake +cmake ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=debug -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake cd ../../ rm -r -f compiler/linux64-checked-cmake/ mkdir compiler/linux64-checked-cmake/ cd compiler/linux64-checked-cmake/ -cmake ../cmake/Linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=checked -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake +cmake ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=checked -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake cd ../../ rm -r -f compiler/linux64-profile-cmake/ mkdir compiler/linux64-profile-cmake/ cd compiler/linux64-profile-cmake/ -cmake ../cmake/Linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=profile -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake +cmake ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=profile -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake cd ../../ rm -r -f compiler/linux64-release-cmake/ mkdir compiler/linux64-release-cmake/ cd compiler/linux64-release-cmake/ -cmake ../cmake/Linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=release -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake +cmake ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=release -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake cd ../../ \ No newline at end of file diff --git a/NvCloth/GenerateProjectsOsx.sh b/NvCloth/GenerateProjectsOsx.sh index 5c57f42..576ad2c 100644 --- a/NvCloth/GenerateProjectsOsx.sh +++ b/NvCloth/GenerateProjectsOsx.sh @@ -19,13 +19,13 @@ export PX_OUTPUT_ROOT="$PWD" rm -r -f compiler/osx32-cmake/ mkdir compiler/osx32-cmake/ cd compiler/osx32-cmake/ -cmake ../cmake/Mac -G Xcode -DTARGET_BUILD_PLATFORM=mac -DPX_32BIT=1 -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/Lib/osx32-cmake +cmake ../cmake/mac -G Xcode -DTARGET_BUILD_PLATFORM=mac -DPX_32BIT=1 -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/Lib/osx32-cmake cd ../../ rm -r -f compiler/osx64-cmake/ mkdir compiler/osx64-cmake/ cd compiler/osx64-cmake/ -cmake ../cmake/Mac -G Xcode -DTARGET_BUILD_PLATFORM=mac -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/Lib/osx64-cmake +cmake ../cmake/mac -G Xcode -DTARGET_BUILD_PLATFORM=mac -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/Lib/osx64-cmake cd ../../ diff --git a/NvCloth/ReleaseNotes.txt b/NvCloth/ReleaseNotes.txt index 7dfa9c0..d8ef679 100644 --- a/NvCloth/ReleaseNotes.txt +++ b/NvCloth/ReleaseNotes.txt @@ -1,6 +1,6 @@ NvCloth Release notes. -[1.1.1] +[1.1.2] Supported platforms: * Windows (CPU, CUDA, DX11) * Mac (beta, tested on Sierra) @@ -16,6 +16,19 @@ Supported compilers (via cmake 3.7) * PlayStation 4: Visual studio 14 (2015) * Xbox one: Visual studio 14 (2015) +Fixed: +Dynamic allocations at runtime removed from MovingAverage. +Possible error when starting samples due to gpu incompatible with dx debug mode. +Cuda crash on older hardware. + +New: +Added cmake flags to disable dx11 and/or cuda support. + +Known issues: +DirectX 11 solver has issues with ccd sphere/capsule collision. + + +[1.1.1] Fixed: Air drag/lift did react to flow speed only linearly, model was changed to be more physically correct. Fixed issue where scaling units would result in different air drag/lift behavior (by adding fluid density parameter). diff --git a/NvCloth/compiler/cmake/Linux/CMakeLists.txt b/NvCloth/compiler/cmake/Linux/CMakeLists.txt index 9425dde..d6c8db6 100644 --- a/NvCloth/compiler/cmake/Linux/CMakeLists.txt +++ b/NvCloth/compiler/cmake/Linux/CMakeLists.txt @@ -1,9 +1,9 @@ cmake_minimum_required(VERSION 3.3) -MESSAGE("[NvCloth]cmake/Linux/CMakeList.txt") +MESSAGE("[NvCloth]cmake/linux/CMakeList.txt") include(../common/CMakeLists.txt) -IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to Linux +IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to linux SET(TARGET_BUILD_PLATFORM "linux") ENDIF() @@ -33,7 +33,7 @@ SET(CMAKE_CXX_FLAGS_RELEASE "-std=c++11 -O3 -g") # Controls PX_NVTX for all projects on linux SET(PHYSX_LINUX_ENABLE_NVTX 0) -# Disable cuda and dx for all projects on Linux +# Disable cuda and dx for all projects on linux SET(PHYSX_LINUX_COMPILE_DEFS DISABLE_COMPUTE_PHYSX) SET(PHYSX_LINUX_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) SET(PHYSX_LINUX_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) diff --git a/NvCloth/compiler/cmake/Linux/NvCloth.cmake b/NvCloth/compiler/cmake/Linux/NvCloth.cmake index f1b19d0..19038c6 100644 --- a/NvCloth/compiler/cmake/Linux/NvCloth.cmake +++ b/NvCloth/compiler/cmake/Linux/NvCloth.cmake @@ -2,7 +2,7 @@ # Build NvCloth (PROJECT not SOLUTION) # -MESSAGE("[NvCloth]cmake/Linux/NvCloth.cmake") +MESSAGE("[NvCloth]cmake/linux/NvCloth.cmake") SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT}) FIND_PACKAGE(PxShared REQUIRED) @@ -56,4 +56,4 @@ SET_TARGET_PROPERTIES(NvCloth PROPERTIES # enable -fPIC so we can link static libs with the editor SET_TARGET_PROPERTIES(NvCloth PROPERTIES POSITION_INDEPENDENT_CODE TRUE) -MESSAGE("[NvCloth]cmake/Linux/NvCloth.cmake END") \ No newline at end of file +MESSAGE("[NvCloth]cmake/linux/NvCloth.cmake END") \ No newline at end of file diff --git a/NvCloth/compiler/cmake/Mac/CMakeLists.txt b/NvCloth/compiler/cmake/Mac/CMakeLists.txt index 4e1c124..b99d60e 100644 --- a/NvCloth/compiler/cmake/Mac/CMakeLists.txt +++ b/NvCloth/compiler/cmake/Mac/CMakeLists.txt @@ -1,9 +1,9 @@ cmake_minimum_required(VERSION 3.3) -MESSAGE("[NvCloth]cmake/Mac/CMakeList.txt") +MESSAGE("[NvCloth]cmake/mac/CMakeList.txt") include(../common/CMakeLists.txt) -IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to Mac +IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to mac SET(TARGET_BUILD_PLATFORM "mac") ENDIF() @@ -32,10 +32,10 @@ SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.9") #set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "dwarf-with-dsym") -# Controls PX_NVTX for all projects on Mac +# Controls PX_NVTX for all projects on mac SET(PHYSX_MAC_ENABLE_NVTX 0) -# Disable cuda and dx for all projects on Mac +# Disable cuda and dx for all projects on mac SET(PHYSX_MAC_COMPILE_DEFS DISABLE_COMPUTE_PHYSX) SET(PHYSX_MAC_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) SET(PHYSX_MAC_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) @@ -49,7 +49,7 @@ FIND_PACKAGE(PxShared REQUIRED) # such as - we don't want to be installing any built artifacts on this server, etc. So for now we hack it. # Add PxShared as a dependency so that we can use project references -ADD_SUBDIRECTORY(${PXSHARED_ROOT_DIR}/src/compiler/cmake/Mac "${CMAKE_CURRENT_BINARY_DIR}/pxshared_bin") +ADD_SUBDIRECTORY(${PXSHARED_ROOT_DIR}/src/compiler/cmake/mac "${CMAKE_CURRENT_BINARY_DIR}/pxshared_bin") # Include all of the projects INCLUDE(NvCloth.cmake) diff --git a/NvCloth/compiler/cmake/Mac/NvCloth.cmake b/NvCloth/compiler/cmake/Mac/NvCloth.cmake index fc10992..faea6fd 100644 --- a/NvCloth/compiler/cmake/Mac/NvCloth.cmake +++ b/NvCloth/compiler/cmake/Mac/NvCloth.cmake @@ -2,7 +2,7 @@ # Build NvCloth (PROJECT not SOLUTION) # -MESSAGE("[NvCloth]cmake/Mac/NvCloth.cmake") +MESSAGE("[NvCloth]cmake/mac/NvCloth.cmake") SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT}) FIND_PACKAGE(PxShared REQUIRED) @@ -56,4 +56,4 @@ SET_TARGET_PROPERTIES(NvCloth PROPERTIES # enable -fPIC so we can link static libs with the editor SET_TARGET_PROPERTIES(NvCloth PROPERTIES POSITION_INDEPENDENT_CODE TRUE) -MESSAGE("[NvCloth]cmake/Mac/NvCloth.cmake END") \ No newline at end of file +MESSAGE("[NvCloth]cmake/mac/NvCloth.cmake END") \ No newline at end of file diff --git a/NvCloth/compiler/cmake/windows/CMakeLists.txt b/NvCloth/compiler/cmake/windows/CMakeLists.txt index 81d8289..9e8f66b 100644 --- a/NvCloth/compiler/cmake/windows/CMakeLists.txt +++ b/NvCloth/compiler/cmake/windows/CMakeLists.txt @@ -49,12 +49,7 @@ ENDIF(CMAKE_CL_64) # Controls PX_NVTX for all projects on windows SET(PHYSX_WINDOWS_ENABLE_NVTX 0) -IF(DEFINED PX_GENERATE_GPU_PROJECTS) SET(NVCLOTH_WINDOWS_COMPILE_DEFS WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS) -ELSE() -# Disable cuda and dx for all projects on windows -SET(NVCLOTH_WINDOWS_COMPILE_DEFS DISABLE_COMPUTE_PHYSX;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS) -ENDIF() SET(NVCLOTH_WINDOWS_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=${PHYSX_WINDOWS_ENABLE_NVTX};) SET(NVCLOTH_WINDOWS_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1;PX_NVTX=${PHYSX_WINDOWS_ENABLE_NVTX};) SET(NVCLOTH_WINDOWS_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1;PX_NVTX=${PHYSX_WINDOWS_ENABLE_NVTX};) diff --git a/NvCloth/compiler/cmake/windows/NvCloth.cmake b/NvCloth/compiler/cmake/windows/NvCloth.cmake index c71c974..a867a75 100644 --- a/NvCloth/compiler/cmake/windows/NvCloth.cmake +++ b/NvCloth/compiler/cmake/windows/NvCloth.cmake @@ -4,15 +4,26 @@ MESSAGE("[NvCloth]cmake/windows/NvCloth.cmake") +IF(NOT DEFINED NV_CLOTH_ENABLE_CUDA) +SET(NV_CLOTH_ENABLE_CUDA 1) +ENDIF() +IF(NOT DEFINED NV_CLOTH_ENABLE_DX11) +SET(NV_CLOTH_ENABLE_DX11 1) +ENDIF() + SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT}) -#FIND_PACKAGE(PxShared REQUIRED) +IF(${NV_CLOTH_ENABLE_CUDA}) FIND_PACKAGE(CUDA 8 REQUIRED) MESSAGE("Found CUDA:" ${CUDA_INCLUDE_DIRS}) +ENDIF() SET(NVCLOTH_PLATFORM_INCLUDES PRIVATE ${CUDA_INCLUDE_DIRS}) -SET(NVCLOTH_PLATFORM_SOURCE_FILES + +SET(NVCLOTH_PLATFORM_SOURCE_FILES "" ) +IF(${NV_CLOTH_ENABLE_CUDA}) +LIST(APPEND NVCLOTH_PLATFORM_SOURCE_FILES ${PROJECT_ROOT_DIR}/src/cuda/CuCheckSuccess.h ${PROJECT_ROOT_DIR}/src/cuda/CuCloth.cpp ${PROJECT_ROOT_DIR}/src/cuda/CuCloth.h @@ -33,9 +44,14 @@ SET(NVCLOTH_PLATFORM_SOURCE_FILES ${PROJECT_ROOT_DIR}/src/cuda/CuSelfCollision.h ${PROJECT_ROOT_DIR}/src/cuda/CuSolver.cpp ${PROJECT_ROOT_DIR}/src/cuda/CuSolver.h - ${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernel.h ${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernelBlob.h +) +ENDIF() + +IF(${NV_CLOTH_ENABLE_DX11}) +LIST(APPEND NVCLOTH_PLATFORM_SOURCE_FILES + ${PROJECT_ROOT_DIR}/src/dx/DxBatchedVector.h ${PROJECT_ROOT_DIR}/src/dx/DxCheckSuccess.h ${PROJECT_ROOT_DIR}/src/dx/DxCloth.cpp @@ -60,6 +76,7 @@ SET(NVCLOTH_PLATFORM_SOURCE_FILES #${PROJECT_ROOT_DIR}/src/neon/NeonSolverKernel.cpp #${PROJECT_ROOT_DIR}/src/neon/SwCollisionHelpers.h ) +ENDIF() SET(NVCLOTH_AVX_SOURCE_FILES ${PROJECT_ROOT_DIR}/src/avx/SwSolveConstraints.cpp @@ -69,16 +86,25 @@ set_source_files_properties(${NVCLOTH_AVX_SOURCE_FILES} PROPERTIES COMPILE_FLAGS - +SET(NVCLOTH_HLSL_FILES "") +IF(${NV_CLOTH_ENABLE_DX11}) SET(NVCLOTH_HLSL_FILES ${PROJECT_ROOT_DIR}/src/dx/DxSolverKernel.hlsl ) set_source_files_properties(${NVCLOTH_HLSL_FILES} PROPERTIES VS_SHADER_TYPE Compute VS_SHADER_MODEL 5.0 VS_SHADER_FLAGS "/Vn gDxSolverKernel /Fh ${PROJECT_ROOT_DIR}/src/dx/DxSolverKernelBlob.h") +ENDIF() + SET(NVCLOTH_PLATFORM_SOURCE_FILES ${NVCLOTH_PLATFORM_SOURCE_FILES} ${NVCLOTH_HLSL_FILES} ${NVCLOTH_AVX_SOURCE_FILES}) +IF(${NV_CLOTH_ENABLE_CUDA}) set( CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS}; + + # Options are documented on http://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#command-option-types-and-notation + # Important: to be able to debug CUDA kernel (correct stepping and workable warp watches), + # you should add the -G (short for --device-debug) option to the line below. + # Don't forget to remove it afterwards, since the code execution will be very slow with this flag. -use_fast_math -ftz=true -prec-div=false -prec-sqrt=false -lineinfo -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_50,code=compute_50 -D_USE_MATH_DEFINES -DNDEBUG -DPX_PROFILE=1 ) SET(NVCLOTH_CUDA_FILES @@ -99,20 +125,35 @@ COMMAND ${CUDA_TOOLKIT_ROOT_DIR}/bin/bin2c.exe --name kCuSolverKernel ${CUDA_FAT DEPENDS ${CUDA_FATBIN} VERBATIM ) +ENDIF() SET(NVCLOTH_COMPILE_DEFS NV_CLOTH_IMPORT=PX_DLL_EXPORT - NV_CLOTH_ENABLE_DX11=1 - NV_CLOTH_ENABLE_CUDA=1 $<$:${NVCLOTH_WINDOWS_DEBUG_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;> $<$:${NVCLOTH_WINDOWS_CHECKED_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;> $<$:${NVCLOTH_WINDOWS_PROFILE_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;> $<$:${NVCLOTH_WINDOWS_RELEASE_COMPILE_DEFS};> ) - - +IF(${NV_CLOTH_ENABLE_DX11}) +LIST(APPEND NVCLOTH_COMPILE_DEFS + NV_CLOTH_ENABLE_DX11=1 +) +ELSE() +LIST(APPEND NVCLOTH_COMPILE_DEFS + NV_CLOTH_ENABLE_DX11=0 +) +ENDIF() +IF(${NV_CLOTH_ENABLE_CUDA}) +LIST(APPEND NVCLOTH_COMPILE_DEFS + NV_CLOTH_ENABLE_CUDA=1 +) +ELSE() +LIST(APPEND NVCLOTH_COMPILE_DEFS + NV_CLOTH_ENABLE_CUDA=0 +) +ENDIF() SET(NVCLOTH_LIBTYPE SHARED) diff --git a/NvCloth/docs/documentation/CopyRight/Index.html b/NvCloth/docs/documentation/CopyRight/Index.html index b0052e2..a570acb 100644 --- a/NvCloth/docs/documentation/CopyRight/Index.html +++ b/NvCloth/docs/documentation/CopyRight/Index.html @@ -31,7 +31,8 @@ - + +