aboutsummaryrefslogtreecommitdiff
path: root/sdk/compiler
diff options
context:
space:
mode:
authorAnton Novoselov <[email protected]>2017-08-01 12:53:38 +0300
committerAnton Novoselov <[email protected]>2017-08-01 12:53:38 +0300
commit236f03c0b9a4982328ed1201978f7f69d192d9b2 (patch)
treee486f2fa39dba203563895541e92c60ed3e25759 /sdk/compiler
parentAdded screens to welcome page (diff)
downloadblast-236f03c0b9a4982328ed1201978f7f69d192d9b2.tar.xz
blast-236f03c0b9a4982328ed1201978f7f69d192d9b2.zip
Blast 1.1 release (windows / linux)
see docs/release_notes.txt for details
Diffstat (limited to 'sdk/compiler')
-rw-r--r--sdk/compiler/cmake/NvBlast.cmake6
-rw-r--r--sdk/compiler/cmake/NvBlastExtAuthoring.cmake34
-rw-r--r--sdk/compiler/cmake/NvBlastExtConverterLL.cmake77
-rw-r--r--sdk/compiler/cmake/NvBlastExtPhysX.cmake24
-rw-r--r--sdk/compiler/cmake/NvBlastExtSerialization.cmake78
-rw-r--r--sdk/compiler/cmake/NvBlastExtSerializationLL.cmake151
-rw-r--r--sdk/compiler/cmake/NvBlastExtShaders.cmake5
-rw-r--r--sdk/compiler/cmake/NvBlastTk.cmake24
-rw-r--r--sdk/compiler/cmake/linux/CMakeLists.txt29
-rw-r--r--sdk/compiler/cmake/linux/NvBlast.cmake4
-rw-r--r--sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake10
-rw-r--r--sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake23
-rw-r--r--sdk/compiler/cmake/linux/NvBlastExtImport.cmake2
-rw-r--r--sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake9
-rw-r--r--sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake8
-rw-r--r--sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake21
-rw-r--r--sdk/compiler/cmake/linux/NvBlastExtShaders.cmake4
-rw-r--r--sdk/compiler/cmake/linux/NvBlastTk.cmake8
-rw-r--r--sdk/compiler/cmake/modules/CapnProtoGenerate.cmake20
-rw-r--r--sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake44
-rw-r--r--sdk/compiler/cmake/modules/FindPhysXSDK.cmake4
-rw-r--r--sdk/compiler/cmake/windows/CMakeLists.txt17
-rw-r--r--sdk/compiler/cmake/windows/NvBlastExtConverterLL.cmake24
-rw-r--r--sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake2
-rw-r--r--sdk/compiler/cmake/windows/NvBlastExtSerializationLL.cmake26
25 files changed, 190 insertions, 464 deletions
diff --git a/sdk/compiler/cmake/NvBlast.cmake b/sdk/compiler/cmake/NvBlast.cmake
index 5ac9ce9..576328d 100644
--- a/sdk/compiler/cmake/NvBlast.cmake
+++ b/sdk/compiler/cmake/NvBlast.cmake
@@ -37,6 +37,7 @@ SET(PUBLIC_FILES
${PUBLIC_INCLUDE_DIR}/NvBlast.h
${PUBLIC_INCLUDE_DIR}/NvBlastPreprocessor.h
${PUBLIC_INCLUDE_DIR}/NvBlastTypes.h
+ ${PUBLIC_INCLUDE_DIR}/NvCTypes.h
${PUBLIC_INCLUDE_DIR}/NvPreprocessor.h
)
@@ -80,10 +81,13 @@ TARGET_COMPILE_DEFINITIONS(NvBlast
PRIVATE ${BLAST_COMPILE_DEFS}
)
+TARGET_COMPILE_OPTIONS(NvBlast
+ PRIVATE ${BLAST_PLATFORM_COMPILE_OPTIONS}
+)
+
SET_TARGET_PROPERTIES(NvBlast PROPERTIES
PDB_NAME_DEBUG "NvBlast${CMAKE_DEBUG_POSTFIX}"
PDB_NAME_CHECKED "NvBlast${CMAKE_CHECKED_POSTFIX}"
PDB_NAME_PROFILE "NvBlast${CMAKE_PROFILE_POSTFIX}"
PDB_NAME_RELEASE "NvBlast${CMAKE_RELEASE_POSTFIX}"
)
-
diff --git a/sdk/compiler/cmake/NvBlastExtAuthoring.cmake b/sdk/compiler/cmake/NvBlastExtAuthoring.cmake
index dda8056..9ba6173 100644
--- a/sdk/compiler/cmake/NvBlastExtAuthoring.cmake
+++ b/sdk/compiler/cmake/NvBlastExtAuthoring.cmake
@@ -11,6 +11,8 @@ SET(AUTHORING_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/authoring/include
FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED)
+FIND_PACKAGE(BoostMultiprecision $ENV{PM_BoostMultiprecision_VERSION} REQUIRED)
+
# Include here after the directories are defined so that the platform specific file can use the variables.
include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtAuthoring.cmake)
@@ -28,29 +30,40 @@ SET(PUBLIC_FILES
${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringFractureTool.h
${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringMesh.h
${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringTypes.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoring.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringMeshCleaner.h
)
SET(EXT_AUTHORING_FILES
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringAccelerator.cpp
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringAccelerator.h
- ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBondGenerator.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBondGeneratorImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBondGeneratorImpl.h
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBooleanTool.cpp
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBooleanTool.h
- ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCollisionBuilder.cpp
- ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMesh.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCollisionBuilderImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCollisionBuilderImpl.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshImpl.h
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringPerlinNoise.h
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringTriangulator.cpp
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringTriangulator.h
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringVSA.h
- ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringFractureTool.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringFractureToolImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringFractureToolImpl.h
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtTriangleProcessor.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshNoiser.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshNoiser.h
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtTriangleProcessor.h
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtApexSharedParts.cpp
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtApexSharedParts.h
${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringInternalCommon.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoring.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshCleanerImpl.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshCleanerImpl.cpp
)
-ADD_LIBRARY(NvBlastExtAuthoring STATIC
+ADD_LIBRARY(NvBlastExtAuthoring ${BLAST_EXT_SHARED_LIB_TYPE}
${COMMON_FILES}
${PUBLIC_FILES}
@@ -70,6 +83,9 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastExtAuthoring
PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include
PUBLIC ${AUTHORING_EXT_INCLUDE_DIR}
+ PRIVATE ${PROJECT_SOURCE_DIR}/toolkit/include
+ PRIVATE ${PHYSX_EXT_INCLUDE_DIR}
+
PRIVATE ${PROJECT_SOURCE_DIR}/common
PRIVATE ${COMMON_EXT_SOURCE_DIR}
@@ -77,6 +93,8 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastExtAuthoring
PRIVATE ${PHYSXSDK_INCLUDE_DIRS}
PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+
+ PRIVATE ${BOOSTMULTIPRECISION_INCLUDE_DIRS}
)
TARGET_COMPILE_DEFINITIONS(NvBlastExtAuthoring
@@ -97,10 +115,6 @@ SET_TARGET_PROPERTIES(NvBlastExtAuthoring PROPERTIES
# Do final direct sets after the target has been defined
TARGET_LINK_LIBRARIES(NvBlastExtAuthoring
- PRIVATE NvBlast
+ PUBLIC NvBlast NvBlastGlobals
PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
- PUBLIC $<$<CONFIG:debug>:${PHYSX3_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3EXTENSIONS_LIB_DEBUG}> $<$<CONFIG:debug>:${PXFOUNDATION_LIB_DEBUG}>
- PUBLIC $<$<CONFIG:checked>:${PHYSX3_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3EXTENSIONS_LIB_CHECKED}> $<$<CONFIG:checked>:${PXFOUNDATION_LIB_CHECKED}>
- PUBLIC $<$<CONFIG:profile>:${PHYSX3_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3EXTENSIONS_LIB_PROFILE}> $<$<CONFIG:profile>:${PXFOUNDATION_LIB_PROFILE}>
- PUBLIC $<$<CONFIG:release>:${PHYSX3_LIB}> $<$<CONFIG:release>:${PHYSX3EXTENSIONS_LIB}> $<$<CONFIG:release>:${PXFOUNDATION_LIB}>
)
diff --git a/sdk/compiler/cmake/NvBlastExtConverterLL.cmake b/sdk/compiler/cmake/NvBlastExtConverterLL.cmake
deleted file mode 100644
index c84b60d..0000000
--- a/sdk/compiler/cmake/NvBlastExtConverterLL.cmake
+++ /dev/null
@@ -1,77 +0,0 @@
-#
-# Build NvBlastExtConverterLL Common
-#
-
-
-SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
-SET(CONVERTERLL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/converter/source)
-SET(CONVERTERLL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/converter/include)
-
-
-# Include here after the directories are defined so that the platform specific file can use the variables.
-include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtConverterLL.cmake)
-
-SET(COMMON_FILES
- ${BLASTEXT_PLATFORM_COMMON_FILES}
-
- ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
- ${COMMON_SOURCE_DIR}/NvBlastAssert.h
-)
-
-SET(PUBLIC_FILES
- ${CONVERTERLL_EXT_INCLUDE_DIR}/NvBlastExtDataConverter.h
-)
-
-SET(EXT_CONVERSION_FILES
- ${CONVERTERLL_EXT_SOURCE_DIR}/conversion/NvBlastExtAssetBlockVersionConverter_v0_v1.h
- ${CONVERTERLL_EXT_SOURCE_DIR}/conversion/NvBlastExtBinaryBlockConverter.cpp
- ${CONVERTERLL_EXT_SOURCE_DIR}/conversion/NvBlastExtBinaryBlockConverter.h
- ${CONVERTERLL_EXT_SOURCE_DIR}/conversion/NvBlastExtDataConverter.cpp
-)
-
-ADD_LIBRARY(NvBlastExtConverterLL STATIC
- ${COMMON_FILES}
- ${PUBLIC_FILES}
-
- ${EXT_CONVERSION_FILES}
-)
-
-SOURCE_GROUP("common" FILES ${COMMON_FILES})
-SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
-SOURCE_GROUP("src\\conversion" FILES ${EXT_CONVERSION_FILES})
-
-
-# Target specific compile options
-
-TARGET_INCLUDE_DIRECTORIES(NvBlastExtConverterLL
- PRIVATE ${BLASTEXT_PLATFORM_INCLUDES}
-
- PUBLIC ${PROJECT_SOURCE_DIR}/converter/include
- PUBLIC ${CONVERTERLL_EXT_INCLUDE_DIR}
-
- PRIVATE ${CONVERTERLL_EXT_SOURCE_DIR}/conversion
- PRIVATE ${PROJECT_SOURCE_DIR}/common
-)
-
-TARGET_COMPILE_DEFINITIONS(NvBlastExtConverterLL
- PRIVATE ${BLASTEXT_COMPILE_DEFS}
-)
-
-# Warning disables for Capn Proto
-TARGET_COMPILE_OPTIONS(NvBlastExtConverterLL
- PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS}
-)
-
-SET_TARGET_PROPERTIES(NvBlastExtConverterLL PROPERTIES
- PDB_NAME_DEBUG "NvBlastExtConverterLL${CMAKE_DEBUG_POSTFIX}"
- PDB_NAME_CHECKED "NvBlastExtConverterLL${CMAKE_CHECKED_POSTFIX}"
- PDB_NAME_PROFILE "NvBlastExtConverterLL${CMAKE_PROFILE_POSTFIX}"
- PDB_NAME_RELEASE "NvBlastExtConverterLL${CMAKE_RELEASE_POSTFIX}"
-)
-
-# Do final direct sets after the target has been defined
-#TARGET_LINK_LIBRARIES(NvBlastExtConverterLL NvBlast ${PHYSXSDK_LIBRARIES} ${APEXSDK_LIBRARIES} ${PXSHAREDSDK_LIBRARIES})
-TARGET_LINK_LIBRARIES(NvBlastExtConverterLL
- PUBLIC NvBlast
- PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
-)
diff --git a/sdk/compiler/cmake/NvBlastExtPhysX.cmake b/sdk/compiler/cmake/NvBlastExtPhysX.cmake
index d2d0f0a..ee8dcc5 100644
--- a/sdk/compiler/cmake/NvBlastExtPhysX.cmake
+++ b/sdk/compiler/cmake/NvBlastExtPhysX.cmake
@@ -21,6 +21,10 @@ SET(COMMON_FILES
${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
${COMMON_SOURCE_DIR}/NvBlastAssert.h
+
+ ${COMMON_SOURCE_DIR}/NvBlastArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastHashMap.h
+ ${COMMON_SOURCE_DIR}/NvBlastHashSet.h
)
SET(PUBLIC_FILES
@@ -31,14 +35,15 @@ SET(PUBLIC_FILES
${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxFamily.h
${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxListener.h
${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxManager.h
- ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtStressSolver.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxStressSolver.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxTask.h
${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtSync.h
)
SET(EXT_PHYSICS_FILES
- ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtImpulseStressSolver.h
${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtImpactDamageManager.cpp
- ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtImpulseStressSolver.cpp
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxStressSolverImpl.h
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxStressSolverImpl.cpp
${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxActorImpl.h
${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxActorImpl.cpp
${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxAssetImpl.h
@@ -47,6 +52,13 @@ SET(EXT_PHYSICS_FILES
${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxFamilyImpl.cpp
${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxManagerImpl.h
${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxManagerImpl.cpp
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxTaskImpl.h
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxTaskImpl.cpp
+)
+
+SET(EXT_CALLBACKS_FILES
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtCustomProfiler.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastPxCallbacks.h
)
SET(EXT_SYNC_FILES
@@ -59,12 +71,14 @@ ADD_LIBRARY(NvBlastExtPhysX ${BLASTEXT_PHYSX_LIBTYPE}
${EXT_PHYSICS_FILES}
${EXT_SYNC_FILES}
+ ${EXT_CALLBACKS_FILES}
)
SOURCE_GROUP("common" FILES ${COMMON_FILES})
SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
SOURCE_GROUP("src\\physics" FILES ${EXT_PHYSICS_FILES})
SOURCE_GROUP("src\\sync" FILES ${EXT_SYNC_FILES})
+SOURCE_GROUP("src\\callbacks" FILES ${EXT_CALLBACKS_FILES})
# Target specific compile options
@@ -81,6 +95,8 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastExtPhysX
PRIVATE ${PHYSX_EXT_SOURCE_DIR}/physics
PRIVATE ${PHYSX_EXT_SOURCE_DIR}/sync
+ PUBLIC ${PROJECT_SOURCE_DIR}/extensions/profiler/include
+
PUBLIC ${PHYSXSDK_INCLUDE_DIRS}
PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
)
@@ -103,7 +119,7 @@ SET_TARGET_PROPERTIES(NvBlastExtPhysX PROPERTIES
# Do final direct sets after the target has been defined
TARGET_LINK_LIBRARIES(NvBlastExtPhysX
- PUBLIC NvBlast NvBlastExtShaders NvBlastTk
+ PUBLIC NvBlastTk NvBlastExtShaders NvBlastExtStress
PUBLIC $<$<CONFIG:debug>:${PHYSX3_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3COOKING_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3EXTENSIONS_LIB_DEBUG}> $<$<CONFIG:debug>:${PXFOUNDATION_LIB_DEBUG}>
PUBLIC $<$<CONFIG:checked>:${PHYSX3_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3COOKING_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3EXTENSIONS_LIB_CHECKED}> $<$<CONFIG:checked>:${PXFOUNDATION_LIB_CHECKED}>
PUBLIC $<$<CONFIG:profile>:${PHYSX3_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3COOKING_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3EXTENSIONS_LIB_PROFILE}> $<$<CONFIG:profile>:${PXFOUNDATION_LIB_PROFILE}>
diff --git a/sdk/compiler/cmake/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/NvBlastExtSerialization.cmake
index 440ad43..e6cd597 100644
--- a/sdk/compiler/cmake/NvBlastExtSerialization.cmake
+++ b/sdk/compiler/cmake/NvBlastExtSerialization.cmake
@@ -6,11 +6,6 @@ SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
SET(SERIAL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/source)
SET(SERIAL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/include)
-SET(TK_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/toolkit/include)
-SET(PHYSX_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/include)
-SET(PHYSX_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/source)
-SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
-SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include)
SET(DTO_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/DTO)
@@ -18,7 +13,6 @@ SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source)
SET(SERIAL_GENERATED_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/generated)
-FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED)
FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
FIND_PACKAGE(CapnProtoSDK $ENV{PM_CapnProto_VERSION} REQUIRED)
@@ -31,7 +25,7 @@ INCLUDE(CapnProtoGenerate)
SET(CAPNPC_OUTPUT_DIR ${SERIAL_GENERATED_SOURCE_DIR})
SET(CAPNPC_SRC_PREFIX ${SERIAL_EXT_SOURCE_DIR})
-CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLL.capn ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.capn)
+CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn)
SET(COMMON_FILES
${BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES}
@@ -46,7 +40,6 @@ SET(COMMON_FILES
${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h
${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h
${COMMON_SOURCE_DIR}/NvBlastGeometry.h
-# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp
${COMMON_SOURCE_DIR}/NvBlastIndexFns.h
${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h
${COMMON_SOURCE_DIR}/NvBlastMath.h
@@ -59,66 +52,37 @@ SET(COMMON_FILES
SET(EXT_SERIALIZATION_FILES
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLL.capn
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.capn
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.h
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationImpl.h
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLLImpl.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.cpp
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.cpp
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLLInterface.cpp
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInterface.cpp
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationCAPN.h
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInternal.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerializerCAPN.h
${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.h
${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.cpp
${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.h
${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.cpp
-
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxInputStream.h
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxInputStream.cpp
-
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxOutputStream.h
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxOutputStream.cpp
)
SET(DTO_SOURCE_FILES
${DTO_SOURCE_DIR}/DTOMacros.h
${DTO_SOURCE_DIR}/AssetDTO.h
${DTO_SOURCE_DIR}/AssetDTO.cpp
- ${DTO_SOURCE_DIR}/TkAssetDTO.h
- ${DTO_SOURCE_DIR}/TkAssetDTO.cpp
- ${DTO_SOURCE_DIR}/ExtPxAssetDTO.h
- ${DTO_SOURCE_DIR}/ExtPxAssetDTO.cpp
- ${DTO_SOURCE_DIR}/PxVec3DTO.h
- ${DTO_SOURCE_DIR}/PxVec3DTO.cpp
${DTO_SOURCE_DIR}/NvBlastChunkDTO.h
${DTO_SOURCE_DIR}/NvBlastChunkDTO.cpp
${DTO_SOURCE_DIR}/NvBlastBondDTO.h
${DTO_SOURCE_DIR}/NvBlastBondDTO.cpp
${DTO_SOURCE_DIR}/NvBlastIDDTO.h
${DTO_SOURCE_DIR}/NvBlastIDDTO.cpp
- ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.h
- ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.cpp
- ${DTO_SOURCE_DIR}/ExtPxChunkDTO.h
- ${DTO_SOURCE_DIR}/ExtPxChunkDTO.cpp
- ${DTO_SOURCE_DIR}/ExtPxSubchunkDTO.h
- ${DTO_SOURCE_DIR}/ExtPxSubchunkDTO.cpp
- ${DTO_SOURCE_DIR}/PxQuatDTO.h
- ${DTO_SOURCE_DIR}/PxQuatDTO.cpp
- ${DTO_SOURCE_DIR}/PxTransformDTO.h
- ${DTO_SOURCE_DIR}/PxTransformDTO.cpp
- ${DTO_SOURCE_DIR}/PxMeshScaleDTO.h
- ${DTO_SOURCE_DIR}/PxMeshScaleDTO.cpp
- ${DTO_SOURCE_DIR}/PxConvexMeshGeometryDTO.h
- ${DTO_SOURCE_DIR}/PxConvexMeshGeometryDTO.cpp
-
-
-
)
SET(EXT_SERIALIZATION_INCLUDES
- ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtSerializationLLInterface.h
- ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtSerializationInterface.h
+ ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtSerialization.h
+ ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtLlSerialization.h
)
ADD_LIBRARY(NvBlastExtSerialization ${BLASTEXTSERIALIZATION_LIB_TYPE}
@@ -133,6 +97,8 @@ ADD_LIBRARY(NvBlastExtSerialization ${BLASTEXTSERIALIZATION_LIB_TYPE}
${CAPNP_HDRS}
${MD5_FILES}
+
+ ${CAPNPROTOSDK_SOURCE_FILES}
)
SOURCE_GROUP("common" FILES ${COMMON_FILES})
@@ -141,7 +107,7 @@ SOURCE_GROUP("include" FILES ${EXT_SERIALIZATION_INCLUDES})
SOURCE_GROUP("src\\serialization" FILES ${EXT_SERIALIZATION_FILES})
SOURCE_GROUP("src\\serialization\\DTO" FILES ${DTO_SOURCE_FILES})
SOURCE_GROUP("src\\serialization\\generated" FILES ${CAPNP_SRCS} ${CAPNP_HDRS})
-
+SOURCE_GROUP("src\\serialization\\CapnProtoSDK" FILES ${CAPNPROTOSDK_SOURCE_FILES})
# Target specific compile options
@@ -158,22 +124,15 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastExtSerialization
PUBLIC ${SERIAL_EXT_SOURCE_DIR}
PUBLIC ${DTO_SOURCE_DIR}
- PRIVATE ${PHYSX_EXT_INCLUDE_DIR}
- PRIVATE ${PHYSX_EXT_SOURCE_DIR}
-
- PRIVATE ${EXT_COMMON_SOURCE_DIR}
- PRIVATE ${EXT_COMMON_INCLUDE_DIR}
-
PUBLIC ${CAPNPROTOSDK_INCLUDE_DIRS}
PRIVATE ${COMMON_SOURCE_DIR}
-
- PUBLIC ${PHYSXSDK_INCLUDE_DIRS}
+
PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
)
TARGET_COMPILE_DEFINITIONS(NvBlastExtSerialization
- PUBLIC CAPNP_LITE=1
+ PUBLIC CAPNP_LITE=1;BLAST_LL_ALLOC=1
PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_DEFS}
)
@@ -191,10 +150,5 @@ SET_TARGET_PROPERTIES(NvBlastExtSerialization PROPERTIES
# Do final direct sets after the target has been defined
TARGET_LINK_LIBRARIES(NvBlastExtSerialization
- PRIVATE NvBlast NvBlastExtPhysX NvBlastTk ${CAPNPROTOSDK_LIBRARIES}
- PUBLIC $<$<CONFIG:debug>:${PHYSX3_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3COOKING_LIB_DEBUG}>
- PUBLIC $<$<CONFIG:checked>:${PHYSX3_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3COOKING_LIB_CHECKED}>
- PUBLIC $<$<CONFIG:profile>:${PHYSX3_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3COOKING_LIB_PROFILE}>
- PUBLIC $<$<CONFIG:release>:${PHYSX3_LIB}> $<$<CONFIG:release>:${PHYSX3COOKING_LIB}>
-
+ PRIVATE NvBlast NvBlastGlobals ${CAPNPROTOSDK_LIBRARIES}
)
diff --git a/sdk/compiler/cmake/NvBlastExtSerializationLL.cmake b/sdk/compiler/cmake/NvBlastExtSerializationLL.cmake
deleted file mode 100644
index da1a9d2..0000000
--- a/sdk/compiler/cmake/NvBlastExtSerializationLL.cmake
+++ /dev/null
@@ -1,151 +0,0 @@
-#
-# Build NvBlastExtSerializationLL Common
-#
-
-SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
-
-SET(SERIAL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/source)
-SET(SERIAL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/include)
-
-SET(DTO_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/DTO)
-
-SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source)
-
-SET(SERIAL_GENERATED_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/generated)
-
-FIND_PACKAGE(CapnProtoSDK $ENV{PM_CapnProto_VERSION} REQUIRED)
-
-# Include here after the directories are defined so that the platform specific file can use the variables.
-include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtSerializationLL.cmake)
-
-# Compile the generated files for serialization
-
-INCLUDE(CapnProtoGenerate)
-
-SET(CAPNPC_OUTPUT_DIR ${SERIAL_GENERATED_SOURCE_DIR})
-SET(CAPNPC_SRC_PREFIX ${SERIAL_EXT_SOURCE_DIR})
-CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLL.capn)
-
-SET(COMMON_FILES
- ${BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES}
-
- ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
- ${COMMON_SOURCE_DIR}/NvBlastAssert.h
- ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp
- ${COMMON_SOURCE_DIR}/NvBlastAtomic.h
- ${COMMON_SOURCE_DIR}/NvBlastDLink.h
- ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h
- ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h
- ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h
- ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h
- ${COMMON_SOURCE_DIR}/NvBlastGeometry.h
- ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h
- ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h
- ${COMMON_SOURCE_DIR}/NvBlastMath.h
- ${COMMON_SOURCE_DIR}/NvBlastMemory.h
- ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h
- ${COMMON_SOURCE_DIR}/NvBlastTime.cpp
- ${COMMON_SOURCE_DIR}/NvBlastTime.h
- ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp
-)
-
-
-SET(EXT_SERIALIZATION_FILES
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLL.capn
-
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.h
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLLImpl.h
-
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLLInterface.cpp
-
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.h
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.cpp
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.h
- ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.cpp
-
-# ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxInputStream.h
-# ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxInputStream.cpp
-
-# ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxOutputStream.h
-# ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxOutputStream.cpp
-)
-
-SET(DTO_SOURCE_FILES
- ${DTO_SOURCE_DIR}/DTOMacros.h
- ${DTO_SOURCE_DIR}/AssetDTO.h
- ${DTO_SOURCE_DIR}/AssetDTO.cpp
- ${DTO_SOURCE_DIR}/NvBlastChunkDTO.h
- ${DTO_SOURCE_DIR}/NvBlastChunkDTO.cpp
- ${DTO_SOURCE_DIR}/NvBlastBondDTO.h
- ${DTO_SOURCE_DIR}/NvBlastBondDTO.cpp
- ${DTO_SOURCE_DIR}/NvBlastIDDTO.h
- ${DTO_SOURCE_DIR}/NvBlastIDDTO.cpp
-)
-
-SET(EXT_SERIALIZATION_INCLUDES
- ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtSerializationLLInterface.h
-)
-
-ADD_LIBRARY(NvBlastExtSerializationLL ${BLASTEXTSERIALIZATION_LIB_TYPE}
- ${COMMON_FILES}
-
- ${DTO_SOURCE_FILES}
-
- ${EXT_SERIALIZATION_INCLUDES}
- ${EXT_SERIALIZATION_FILES}
-
- ${CAPNP_SRCS}
- ${CAPNP_HDRS}
-
- ${MD5_FILES}
-)
-
-SOURCE_GROUP("common" FILES ${COMMON_FILES})
-
-SOURCE_GROUP("include" FILES ${EXT_SERIALIZATION_INCLUDES})
-SOURCE_GROUP("src\\serialization" FILES ${EXT_SERIALIZATION_FILES})
-SOURCE_GROUP("src\\serialization\\DTO" FILES ${DTO_SOURCE_FILES})
-SOURCE_GROUP("src\\serialization\\generated" FILES ${CAPNP_SRCS} ${CAPNP_HDRS})
-
-
-# Target specific compile options
-
-TARGET_INCLUDE_DIRECTORIES(NvBlastExtSerializationLL
- PRIVATE ${BLASTEXTSERIALIZATION_PLATFORM_INCLUDES}
-
- PRIVATE ${PROJECT_SOURCE_DIR}/common
- PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include
- PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source
-
- PRIVATE ${TK_INCLUDE_DIR}
-
- PUBLIC ${SERIAL_EXT_INCLUDE_DIR}
- PUBLIC ${SERIAL_EXT_SOURCE_DIR}
- PUBLIC ${DTO_SOURCE_DIR}
-
- PUBLIC ${CAPNPROTOSDK_INCLUDE_DIRS}
-
- PRIVATE ${COMMON_SOURCE_DIR}
-)
-
-TARGET_COMPILE_DEFINITIONS(NvBlastExtSerializationLL
- PUBLIC CAPNP_LITE=1;BLAST_LL_ALLOC=1
- PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_DEFS}
-)
-
-# Warning disables for Capn Proto
-TARGET_COMPILE_OPTIONS(NvBlastExtSerializationLL
- PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_OPTIONS}
-)
-
-SET_TARGET_PROPERTIES(NvBlastExtSerializationLL PROPERTIES
- PDB_NAME_DEBUG "NvBlastExtSerializationLL${CMAKE_DEBUG_POSTFIX}"
- PDB_NAME_CHECKED "NvBlastExtSerializationLL${CMAKE_CHECKED_POSTFIX}"
- PDB_NAME_PROFILE "NvBlastExtSerializationLL${CMAKE_PROFILE_POSTFIX}"
- PDB_NAME_RELEASE "NvBlastExtSerializationLL${CMAKE_RELEASE_POSTFIX}"
-)
-
-# Do final direct sets after the target has been defined
-TARGET_LINK_LIBRARIES(NvBlastExtSerializationLL
- PRIVATE NvBlast ${CAPNPROTOSDK_LIBRARIES}
-)
diff --git a/sdk/compiler/cmake/NvBlastExtShaders.cmake b/sdk/compiler/cmake/NvBlastExtShaders.cmake
index df4a3ad..f918326 100644
--- a/sdk/compiler/cmake/NvBlastExtShaders.cmake
+++ b/sdk/compiler/cmake/NvBlastExtShaders.cmake
@@ -22,8 +22,7 @@ SET(PUBLIC_FILES
)
SET(EXT_SOURCE_FILES
- ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtRadialShaders.cpp
- ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtShearShaders.cpp
+ ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageShaders.cpp
)
ADD_LIBRARY(NvBlastExtShaders ${BLAST_EXT_SHARED_LIB_TYPE}
@@ -69,6 +68,6 @@ SET_TARGET_PROPERTIES(NvBlastExtShaders PROPERTIES
# Do final direct sets after the target has been defined
#TARGET_LINK_LIBRARIES(NvBlastExtShaders NvBlast ${PHYSXSDK_LIBRARIES} ${APEXSDK_LIBRARIES} ${PXSHAREDSDK_LIBRARIES})
TARGET_LINK_LIBRARIES(NvBlastExtShaders
- PUBLIC NvBlast
+ PUBLIC NvBlast
PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
)
diff --git a/sdk/compiler/cmake/NvBlastTk.cmake b/sdk/compiler/cmake/NvBlastTk.cmake
index be9e04a..294e303 100644
--- a/sdk/compiler/cmake/NvBlastTk.cmake
+++ b/sdk/compiler/cmake/NvBlastTk.cmake
@@ -3,7 +3,6 @@
#
SET(TOOLKIT_DIR ${PROJECT_SOURCE_DIR}/toolkit)
-SET(PROFILER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/profiler)
SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
@@ -33,11 +32,9 @@ SET(COMMON_FILES
${COMMON_SOURCE_DIR}/NvBlastTime.cpp
${COMMON_SOURCE_DIR}/NvBlastTime.h
${COMMON_SOURCE_DIR}/NvBlastTimers.cpp
-)
-
-SET(PROFILER_FILES
- ${PROFILER_SOURCE_DIR}/NvBlastProfiler.cpp
- ${PROFILER_SOURCE_DIR}/NvBlastProfilerInternal.h
+ ${COMMON_SOURCE_DIR}/NvBlastArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastHashMap.h
+ ${COMMON_SOURCE_DIR}/NvBlastHashSet.h
)
SET(PUBLIC_FILES
@@ -51,16 +48,12 @@ SET(PUBLIC_FILES
${TOOLKIT_DIR}/include/NvBlastTkIdentifiable.h
${TOOLKIT_DIR}/include/NvBlastTkJoint.h
${TOOLKIT_DIR}/include/NvBlastTkObject.h
- ${TOOLKIT_DIR}/include/NvBlastTkSerializable.h
${TOOLKIT_DIR}/include/NvBlastTkType.h
)
SET(TOOLKIT_FILES
${TOOLKIT_DIR}/source/NvBlastTkActorImpl.cpp
${TOOLKIT_DIR}/source/NvBlastTkActorImpl.h
- ${TOOLKIT_DIR}/source/NvBlastTkAllocator.cpp
- ${TOOLKIT_DIR}/source/NvBlastTkAllocator.h
- ${TOOLKIT_DIR}/source/NvBlastTkArray.h
${TOOLKIT_DIR}/source/NvBlastTkAssetImpl.cpp
${TOOLKIT_DIR}/source/NvBlastTkAssetImpl.h
${TOOLKIT_DIR}/source/NvBlastTkCommon.h
@@ -72,8 +65,6 @@ SET(TOOLKIT_FILES
${TOOLKIT_DIR}/source/NvBlastTkGroupImpl.cpp
${TOOLKIT_DIR}/source/NvBlastTkGroupImpl.h
${TOOLKIT_DIR}/source/NvBlastTkGUID.h
- ${TOOLKIT_DIR}/source/NvBlastTkHashMap.h
- ${TOOLKIT_DIR}/source/NvBlastTkHashSet.h
${TOOLKIT_DIR}/source/NvBlastTkJointImpl.cpp
${TOOLKIT_DIR}/source/NvBlastTkJointImpl.h
${TOOLKIT_DIR}/source/NvBlastTkTaskImpl.cpp
@@ -83,13 +74,11 @@ SET(TOOLKIT_FILES
ADD_LIBRARY(NvBlastTk ${BLASTTK_LIBTYPE}
${COMMON_FILES}
- ${PROFILER_FILES}
${PUBLIC_FILES}
${TOOLKIT_FILES}
)
SOURCE_GROUP("common" FILES ${COMMON_FILES})
-SOURCE_GROUP("profiler" FILES ${PROFILER_FILES})
SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
SOURCE_GROUP("toolkit" FILES ${TOOLKIT_FILES})
@@ -99,7 +88,6 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastTk
PRIVATE ${BLASTTK_PLATFORM_INCLUDES}
PRIVATE ${PROJECT_SOURCE_DIR}/common
- PRIVATE ${PROJECT_SOURCE_DIR}/profiler
PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include
PUBLIC ${PROJECT_SOURCE_DIR}/toolkit/include
@@ -110,6 +98,10 @@ TARGET_COMPILE_DEFINITIONS(NvBlastTk
PRIVATE ${BLASTTK_COMPILE_DEFS}
)
+TARGET_COMPILE_OPTIONS(NvBlastTk
+ PRIVATE ${BLASTTK_PLATFORM_COMPILE_OPTIONS}
+)
+
SET_TARGET_PROPERTIES(NvBlastTk PROPERTIES
PDB_NAME_DEBUG "NvBlastTk${CMAKE_DEBUG_POSTFIX}"
PDB_NAME_CHECKED "NvBlastTk${CMAKE_CHECKED_POSTFIX}"
@@ -119,7 +111,7 @@ SET_TARGET_PROPERTIES(NvBlastTk PROPERTIES
# Do final direct sets after the target has been defined
TARGET_LINK_LIBRARIES(NvBlastTk
- PRIVATE NvBlast
+ PUBLIC NvBlast NvBlastGlobals
PUBLIC ${BLASTTK_PLATFORM_LINKED_LIBS}
)
diff --git a/sdk/compiler/cmake/linux/CMakeLists.txt b/sdk/compiler/cmake/linux/CMakeLists.txt
index 440351e..d0cf60a 100644
--- a/sdk/compiler/cmake/linux/CMakeLists.txt
+++ b/sdk/compiler/cmake/linux/CMakeLists.txt
@@ -1,6 +1,6 @@
#Platform specific compile flags and project includes
-SET(CMAKE_CXX_FLAGS "-Wextra -Werror -pedantic -fdiagnostics-show-option -fno-rtti -fno-exceptions -m64 -msse2 -mfpmath=sse -fpic -ffast-math -fno-exceptions -fno-rtti -Wno-invalid-offsetof -Wno-unknown-pragmas -std=c++0x")
+SET(CMAKE_CXX_FLAGS "-Wextra -Werror -fdiagnostics-show-option -fno-rtti -fno-exceptions -m64 -msse2 -mfpmath=sse -fPIC -ffast-math -fno-exceptions -fno-rtti -Wno-invalid-offsetof -Wno-unknown-pragmas -std=c++0x")
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -gdwarf-2")
SET(CMAKE_CXX_FLAGS_CHECKED "-O3 -g3 -gdwarf-2 -fno-strict-aliasing")
@@ -16,12 +16,31 @@ SET(BLAST_SLN_RELEASE_COMPILE_DEFS NDEBUG;)
# Include all of the projects
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlast.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastGlobals.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastTk.cmake)
-INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtConverterLL.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtShaders.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtStress.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPhysX.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAuthoring.cmake)
-#INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtImport.cmake)
-#INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake)
-#INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerializationLL.cmake)
+IF(${UE4_LINUX_CROSSCOMPILE})
+ #This uses the Windows CapnProto exe so it works
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake)
+
+ #The UE4 Linux cross tools don't include libc++, it's in the UE4 source, however UE4 uses libc++
+ #and not libstdc++ so link this statically to avoid a dependency
+ SET(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++")
+ SET(CMAKE_SHARED_LINKER_FLAGS "-static-libgcc -static-libstdc++")
+ELSE()
+ #TODO Update Linux CapnProto build to generate correct version code
+
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake)
+
+ #INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtImport.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake)
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlast.cmake b/sdk/compiler/cmake/linux/NvBlast.cmake
index 63ebeea..c1b0363 100644
--- a/sdk/compiler/cmake/linux/NvBlast.cmake
+++ b/sdk/compiler/cmake/linux/NvBlast.cmake
@@ -18,4 +18,6 @@ SET(BLAST_COMPILE_DEFS
$<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
)
-SET(BLAST_LIB_TYPE STATIC)
+SET(BLAST_LIB_TYPE SHARED)
+
+SET(BLAST_PLATFORM_COMPILE_OPTIONS "-pedantic")
diff --git a/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake b/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake
index c99653b..3d7bb78 100644
--- a/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake
+++ b/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake
@@ -18,6 +18,12 @@ SET(BLASTEXT_COMPILE_DEFS
$<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
)
-SET(BLAST_EXT_SHARED_LIB_TYPE STATIC)
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
-SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-maybe-uninitialized")
+#Exceptions are needed by boost
+#This option doesn't work on Clang
+IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-maybe-uninitialized" "-fexceptions" "-Wno-unused-parameter")
+ELSE ()
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic" "-fexceptions" "-Wno-unused-parameter")
+ENDIF() \ No newline at end of file
diff --git a/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake b/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake
deleted file mode 100644
index d37a1dc..0000000
--- a/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake
+++ /dev/null
@@ -1,23 +0,0 @@
-#
-# Build NvBlast Linux
-#
-
-SET(BLASTEXT_PLATFORM_COMMON_FILES
-)
-
-SET(BLASTEXT_PLATFORM_INCLUDES
-)
-
-SET(BLASTEXT_COMPILE_DEFS
- # Common to all configurations
- ${BLAST_SLN_COMPILE_DEFS};
-
- $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
- $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
- $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
- $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
-)
-
-SET(BLAST_EXT_SHARED_LIB_TYPE STATIC)
-
-SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas")
diff --git a/sdk/compiler/cmake/linux/NvBlastExtImport.cmake b/sdk/compiler/cmake/linux/NvBlastExtImport.cmake
index d37a1dc..543887d 100644
--- a/sdk/compiler/cmake/linux/NvBlastExtImport.cmake
+++ b/sdk/compiler/cmake/linux/NvBlastExtImport.cmake
@@ -18,6 +18,6 @@ SET(BLASTEXT_COMPILE_DEFS
$<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
)
-SET(BLAST_EXT_SHARED_LIB_TYPE STATIC)
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas")
diff --git a/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake b/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake
index 22fd8ad..9edb58c 100644
--- a/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake
+++ b/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake
@@ -18,6 +18,11 @@ SET(BLASTEXT_COMPILE_DEFS
$<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
)
-SET(BLASTEXT_PHYSX_LIBTYPE STATIC)
+SET(BLASTEXT_PHYSX_LIBTYPE SHARED)
-SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-maybe-uninitialized")
+#-Wno-maybe-uninitialized doesn't work on Clang
+IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-maybe-uninitialized")
+ELSE()
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-return-type-c-linkage")
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake
index a8bc1cf..b6d4d84 100644
--- a/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake
+++ b/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake
@@ -18,4 +18,10 @@ SET(BLASTEXTSERIALIZATION_COMPILE_DEFS
$<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
)
-SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "")
+SET(BLASTEXTSERIALIZATION_LIB_TYPE SHARED)
+
+IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare")
+ELSE()
+ SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare" "-Wno-unused-parameter" "-Wno-return-type-c-linkage")
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake b/sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake
deleted file mode 100644
index a8bc1cf..0000000
--- a/sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake
+++ /dev/null
@@ -1,21 +0,0 @@
-#
-# Build NvBlastExtSerialization Linux
-#
-
-SET(BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES
-)
-
-SET(BLASTEXTSERIALIZATION_PLATFORM_INCLUDES
-)
-
-SET(BLASTEXTSERIALIZATION_COMPILE_DEFS
- # Common to all configurations
- ${BLAST_SLN_COMPILE_DEFS};
-
- $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
- $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
- $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
- $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
-)
-
-SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "")
diff --git a/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake b/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake
index d37a1dc..a5c8c67 100644
--- a/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake
+++ b/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake
@@ -18,6 +18,6 @@ SET(BLASTEXT_COMPILE_DEFS
$<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
)
-SET(BLAST_EXT_SHARED_LIB_TYPE STATIC)
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
-SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas")
+SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-pedantic")
diff --git a/sdk/compiler/cmake/linux/NvBlastTk.cmake b/sdk/compiler/cmake/linux/NvBlastTk.cmake
index 4f70825..5ea3746 100644
--- a/sdk/compiler/cmake/linux/NvBlastTk.cmake
+++ b/sdk/compiler/cmake/linux/NvBlastTk.cmake
@@ -18,5 +18,11 @@ SET(BLASTTK_COMPILE_DEFS
$<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
)
-SET(BLASTTK_LIBTYPE "STATIC")
+SET(BLASTTK_LIBTYPE SHARED)
+
+IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTTK_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic")
+ELSE ()
+ SET(BLASTTK_PLATFORM_COMPILE_OPTIONS "-pedantic")
+ENDIF()
diff --git a/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake b/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake
index 3579784..5d57cd0 100644
--- a/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake
+++ b/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake
@@ -46,10 +46,9 @@ function(CAPNP_GENERATE_CPP SOURCES HEADERS)
endif()
if(DEFINED CAPNPC_OUTPUT_DIR)
- # Prepend a ':' to get the format for the '-o' flag right
- set(output_dir ":${CAPNPC_OUTPUT_DIR}")
+ set(output_dir "${CAPNPC_OUTPUT_DIR}")
else()
- set(output_dir ":.")
+ set(output_dir ".")
endif()
if(NOT DEFINED CAPNPC_SRC_PREFIX)
@@ -79,17 +78,18 @@ function(CAPNP_GENERATE_CPP SOURCES HEADERS)
set(output_base "${CAPNPC_OUTPUT_DIR}${output_path}")
endif()
- MESSAGE("Output base: " ${output_base})
- MESSAGE("Output path: " ${output_path})
- MESSAGE("Output dir: " ${output_dir})
- MESSAGE("Src prefix: " ${CAPNPC_SRC_PREFIX})
-
+ MESSAGE("Output base: " ${output_base})
+ MESSAGE("Output path: " ${output_path})
+ MESSAGE("Output dir: " ${output_dir})
+ MESSAGE("Src prefix: " ${CAPNPC_SRC_PREFIX})
+
add_custom_command(
OUTPUT "${output_base}.c++" "${output_base}.h"
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${output_dir}
COMMAND "${CAPNP_EXECUTABLE}"
ARGS compile
- -o ${CAPNPC_CXX_EXECUTABLE}${output_dir}
- --verbose
+ -o ${CAPNPC_CXX_EXECUTABLE}:${output_dir}
+ --verbose
--src-prefix ${CAPNPC_SRC_PREFIX}
${include_path}
${CAPNPC_FLAGS}
diff --git a/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake b/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake
index dcf5190..9e2cd60 100644
--- a/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake
+++ b/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake
@@ -1,5 +1,6 @@
# - Try to find CapnProto SDK
# - Sets CAPNPROTOSDK_LIBRARIES - list of the libraries found
+# - Sets CAPNPROTOSDK_SOURCE_FILES
# - Sets CAPNPROTOSDK_INCLUDE_DIRS
include(FindPackageHandleStandardArgs)
@@ -43,7 +44,11 @@ elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne")
SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
elseif(TARGET_BUILD_PLATFORM STREQUAL "linux")
SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/ubuntu64)
- SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/ubuntu64)
+ if (UE4_LINUX_CROSSCOMPILE)
+ SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32)
+ else()
+ SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/ubuntu64)
+ endif()
SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
endif()
@@ -85,11 +90,11 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(CAPNPROTOSDK
CAPNP_EXECUTABLE
CAPNPC_CXX_EXECUTABLE
- CAPNPROTO_LIB
- KJ_LIB
+ #CAPNPROTO_LIB
+ #KJ_LIB
- CAPNPROTO_LIB_DEBUG
- KJ_LIB_DEBUG
+ #CAPNPROTO_LIB_DEBUG
+ #KJ_LIB_DEBUG
)
if (CAPNPROTOSDK_FOUND)
@@ -103,9 +108,30 @@ if (CAPNPROTOSDK_FOUND)
)
SET(CAPNPROTOSDK_LIBRARIES "" CACHE STRING "")
+ SET(CAPNPROTOSDK_SOURCE_FILES "")
- LIST(APPEND CAPNPROTOSDK_LIBRARIES
- optimized ${CAPNPROTO_LIB} debug ${CAPNPROTO_LIB_DEBUG}
- optimized ${KJ_LIB} debug ${KJ_LIB_DEBUG}
- )
+ IF ((TARGET_BUILD_PLATFORM STREQUAL "PLATFROM_USING_PREBUILT_LIBS"))
+ LIST(APPEND CAPNPROTOSDK_LIBRARIES
+ optimized ${CAPNPROTO_LIB} debug ${CAPNPROTO_LIB_DEBUG}
+ optimized ${KJ_LIB} debug ${KJ_LIB_DEBUG}
+ )
+ ELSE()
+ #Include source files for the "lite" version only, there aren't too many it avoids needing many permutations of static libs
+ LIST(APPEND CAPNPROTOSDK_SOURCE_FILES
+ ${CAPNPROTOSDK_PATH}/src/capnp/arena.c++
+ ${CAPNPROTOSDK_PATH}/src/capnp/blob.c++
+ ${CAPNPROTOSDK_PATH}/src/capnp/layout.c++
+ ${CAPNPROTOSDK_PATH}/src/capnp/message.c++
+ ${CAPNPROTOSDK_PATH}/src/capnp/serialize.c++
+
+ ${CAPNPROTOSDK_PATH}/src/kj/array.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/common.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/debug.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/exception.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/io.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/mutex.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/string.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/units.c++
+ )
+ ENDIF()
endif()
diff --git a/sdk/compiler/cmake/modules/FindPhysXSDK.cmake b/sdk/compiler/cmake/modules/FindPhysXSDK.cmake
index 830e6c5..4b9176f 100644
--- a/sdk/compiler/cmake/modules/FindPhysXSDK.cmake
+++ b/sdk/compiler/cmake/modules/FindPhysXSDK.cmake
@@ -16,9 +16,9 @@ find_path(PHYSXSDK_PATH Include/PxActor.h
if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
# If the project pulling in this dependency needs the static crt, then append that to the path.
if (STATIC_WINCRT)
- SET(PXSHARED_CRT_SUFFIX "-staticcrt")
+ SET(PHYSX_CRT_SUFFIX "-staticcrt")
else()
- SET(PXSHARED_CRT_SUFFIX "")
+ SET(PHYSX_CRT_SUFFIX "")
endif()
if (CMAKE_CL_64)
diff --git a/sdk/compiler/cmake/windows/CMakeLists.txt b/sdk/compiler/cmake/windows/CMakeLists.txt
index ac8b186..4c31d6a 100644
--- a/sdk/compiler/cmake/windows/CMakeLists.txt
+++ b/sdk/compiler/cmake/windows/CMakeLists.txt
@@ -50,18 +50,17 @@ SET(CMAKE_RELEASE_POSTFIX "${CMAKE_RELEASE_POSTFIX}_${LIBPATH_SUFFIX}")
# Include all of the projects
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlast.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastGlobals.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastTk.cmake)
-INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtConverterLL.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtShaders.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtStress.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPhysX.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAuthoring.cmake)
INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtImport.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtExporter.cmake)
-#Sadly, CapnProto won't compile on anything less than VS2015.
-if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0)
- SET(SERIALIZATION_INCLUDED 1 PARENT_SCOPE)
- INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake)
- INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerializationLL.cmake)
-else()
- SET(SERIALIZATION_INCLUDED 0)
-endif()
+SET(SERIALIZATION_INCLUDED 1 PARENT_SCOPE)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake)
diff --git a/sdk/compiler/cmake/windows/NvBlastExtConverterLL.cmake b/sdk/compiler/cmake/windows/NvBlastExtConverterLL.cmake
deleted file mode 100644
index 7406d74..0000000
--- a/sdk/compiler/cmake/windows/NvBlastExtConverterLL.cmake
+++ /dev/null
@@ -1,24 +0,0 @@
-#
-# Build NvBlastExt Windows
-#
-
-SET(BLASTEXT_PLATFORM_COMMON_FILES
- ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
-)
-
-SET(BLASTEXT_PLATFORM_INCLUDES
-)
-
-SET(BLASTEXT_COMPILE_DEFS
- # Common to all configurations
- ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
-
- $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
- $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
- $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
- $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
-)
-
-SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
-
-SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
diff --git a/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake
index 20910be..8b26799 100644
--- a/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake
+++ b/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake
@@ -22,5 +22,5 @@ SET(BLASTEXTSERIALIZATION_COMPILE_DEFS
SET(BLASTEXTSERIALIZATION_LIB_TYPE SHARED)
-SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
+SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/wd4702;/wd4800;/wd4541;/wd4189;/wd4714;/wd4018;/wd4456;/wd4091;/wd4127;/EHsc")
diff --git a/sdk/compiler/cmake/windows/NvBlastExtSerializationLL.cmake b/sdk/compiler/cmake/windows/NvBlastExtSerializationLL.cmake
deleted file mode 100644
index 20910be..0000000
--- a/sdk/compiler/cmake/windows/NvBlastExtSerializationLL.cmake
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# Build NvBlastExtSerialization Windows
-#
-
-SET(BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES
- ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
-)
-
-SET(BLASTEXTSERIALIZATION_PLATFORM_INCLUDES
-)
-
-SET(BLASTEXTSERIALIZATION_COMPILE_DEFS
- # Common to all configurations
- ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
-
- $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
- $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
- $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
- $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
-)
-
-SET(BLASTEXTSERIALIZATION_LIB_TYPE SHARED)
-
-
-SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
-