aboutsummaryrefslogtreecommitdiff
path: root/PhysX_3.4/Samples/PxToolkit
diff options
context:
space:
mode:
Diffstat (limited to 'PhysX_3.4/Samples/PxToolkit')
-rw-r--r--PhysX_3.4/Samples/PxToolkit/compiler/vc11win32/PxToolkit.vcxproj260
-rw-r--r--PhysX_3.4/Samples/PxToolkit/compiler/vc11win64/PxToolkit.vcxproj256
-rw-r--r--PhysX_3.4/Samples/PxToolkit/compiler/vc12win32/PxToolkit.vcxproj260
-rw-r--r--PhysX_3.4/Samples/PxToolkit/compiler/vc12win64/PxToolkit.vcxproj256
-rw-r--r--PhysX_3.4/Samples/PxToolkit/compiler/vc14win32/PxToolkit.vcxproj248
-rw-r--r--PhysX_3.4/Samples/PxToolkit/compiler/vc14win64/PxToolkit.vcxproj248
-rw-r--r--PhysX_3.4/Samples/PxToolkit/include/PxTkBmpLoader.h57
-rw-r--r--PhysX_3.4/Samples/PxToolkit/include/PxTkFPS.h61
-rw-r--r--PhysX_3.4/Samples/PxToolkit/include/PxTkFile.h81
-rw-r--r--PhysX_3.4/Samples/PxToolkit/include/PxTkMatrixUtils.h48
-rw-r--r--PhysX_3.4/Samples/PxToolkit/include/PxTkNamespaceMangle.h39
-rw-r--r--PhysX_3.4/Samples/PxToolkit/include/PxTkRandom.h148
-rw-r--r--PhysX_3.4/Samples/PxToolkit/include/PxTkStream.h60
-rw-r--r--PhysX_3.4/Samples/PxToolkit/include/PxToolkit.h34
-rw-r--r--PhysX_3.4/Samples/PxToolkit/src/PxTkBmpLoader.cpp195
-rw-r--r--PhysX_3.4/Samples/PxToolkit/src/PxTkFPS.cpp69
-rw-r--r--PhysX_3.4/Samples/PxToolkit/src/PxTkMatrixUtils.cpp89
-rw-r--r--PhysX_3.4/Samples/PxToolkit/src/PxTkRandom.cpp141
-rw-r--r--PhysX_3.4/Samples/PxToolkit/src/PxTkStream.cpp155
19 files changed, 2705 insertions, 0 deletions
diff --git a/PhysX_3.4/Samples/PxToolkit/compiler/vc11win32/PxToolkit.vcxproj b/PhysX_3.4/Samples/PxToolkit/compiler/vc11win32/PxToolkit.vcxproj
new file mode 100644
index 00000000..5a36d366
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/compiler/vc11win32/PxToolkit.vcxproj
@@ -0,0 +1,260 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="debug|Win32">
+ <Configuration>debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="checked|Win32">
+ <Configuration>checked</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="profile|Win32">
+ <Configuration>profile</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="release|Win32">
+ <Configuration>release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{AE26EE6F-9143-D9EE-6480-FA134AAAFC48}</ProjectGuid>
+ <RootNamespace>PxToolkit</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <OutDir>./../../lib/vc11win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/debug\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)DEBUG</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <BasicRuntimeChecks>UninitializedLocalUsageCheck</BasicRuntimeChecks>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;_DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)DEBUG.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <OutDir>./../../lib/vc11win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/checked\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)CHECKED</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)CHECKED.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <OutDir>./../../lib/vc11win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/profile\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)PROFILE</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_PROFILE=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)PROFILE.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <OutDir>./../../lib/vc11win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/release\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_SUPPORT_PVD=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName).lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\PxTkBmpLoader.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFile.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFPS.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkMatrixUtils.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkNamespaceMangle.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkRandom.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkStream.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxToolkit.h">
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\PxTkBmpLoader.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkFPS.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkMatrixUtils.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkRandom.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkStream.cpp">
+ </ClCompile>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets"></ImportGroup>
+</Project>
diff --git a/PhysX_3.4/Samples/PxToolkit/compiler/vc11win64/PxToolkit.vcxproj b/PhysX_3.4/Samples/PxToolkit/compiler/vc11win64/PxToolkit.vcxproj
new file mode 100644
index 00000000..9d4912e3
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/compiler/vc11win64/PxToolkit.vcxproj
@@ -0,0 +1,256 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="debug|x64">
+ <Configuration>debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="checked|x64">
+ <Configuration>checked</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="profile|x64">
+ <Configuration>profile</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="release|x64">
+ <Configuration>release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{AE26EE6F-9143-D9EE-6480-FA134AAAFC48}</ProjectGuid>
+ <RootNamespace>PxToolkit</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <OutDir>./../../lib/vc11win64\</OutDir>
+ <IntDir>./x64/PxToolkit/debug\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)DEBUG</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <BasicRuntimeChecks>UninitializedLocalUsageCheck</BasicRuntimeChecks>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;_DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)DEBUG.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <OutDir>./../../lib/vc11win64\</OutDir>
+ <IntDir>./x64/PxToolkit/checked\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)CHECKED</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)CHECKED.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <OutDir>./../../lib/vc11win64\</OutDir>
+ <IntDir>./x64/PxToolkit/profile\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)PROFILE</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_PROFILE=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)PROFILE.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <OutDir>./../../lib/vc11win64\</OutDir>
+ <IntDir>./x64/PxToolkit/release\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_SUPPORT_PVD=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName).lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\PxTkBmpLoader.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFile.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFPS.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkMatrixUtils.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkNamespaceMangle.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkRandom.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkStream.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxToolkit.h">
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\PxTkBmpLoader.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkFPS.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkMatrixUtils.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkRandom.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkStream.cpp">
+ </ClCompile>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets"></ImportGroup>
+</Project>
diff --git a/PhysX_3.4/Samples/PxToolkit/compiler/vc12win32/PxToolkit.vcxproj b/PhysX_3.4/Samples/PxToolkit/compiler/vc12win32/PxToolkit.vcxproj
new file mode 100644
index 00000000..c19634dd
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/compiler/vc12win32/PxToolkit.vcxproj
@@ -0,0 +1,260 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="debug|Win32">
+ <Configuration>debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="checked|Win32">
+ <Configuration>checked</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="profile|Win32">
+ <Configuration>profile</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="release|Win32">
+ <Configuration>release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{AE26EE6F-9143-D9EE-6480-FA134AAAFC48}</ProjectGuid>
+ <RootNamespace>PxToolkit</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <OutDir>./../../lib/vc12win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/debug\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)DEBUG</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <BasicRuntimeChecks>UninitializedLocalUsageCheck</BasicRuntimeChecks>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;_DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)DEBUG.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <OutDir>./../../lib/vc12win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/checked\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)CHECKED</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)CHECKED.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <OutDir>./../../lib/vc12win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/profile\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)PROFILE</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_PROFILE=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)PROFILE.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <OutDir>./../../lib/vc12win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/release\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_SUPPORT_PVD=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName).lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\PxTkBmpLoader.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFile.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFPS.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkMatrixUtils.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkNamespaceMangle.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkRandom.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkStream.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxToolkit.h">
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\PxTkBmpLoader.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkFPS.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkMatrixUtils.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkRandom.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkStream.cpp">
+ </ClCompile>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets"></ImportGroup>
+</Project>
diff --git a/PhysX_3.4/Samples/PxToolkit/compiler/vc12win64/PxToolkit.vcxproj b/PhysX_3.4/Samples/PxToolkit/compiler/vc12win64/PxToolkit.vcxproj
new file mode 100644
index 00000000..84319167
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/compiler/vc12win64/PxToolkit.vcxproj
@@ -0,0 +1,256 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="debug|x64">
+ <Configuration>debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="checked|x64">
+ <Configuration>checked</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="profile|x64">
+ <Configuration>profile</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="release|x64">
+ <Configuration>release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{AE26EE6F-9143-D9EE-6480-FA134AAAFC48}</ProjectGuid>
+ <RootNamespace>PxToolkit</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <OutDir>./../../lib/vc12win64\</OutDir>
+ <IntDir>./x64/PxToolkit/debug\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)DEBUG</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <BasicRuntimeChecks>UninitializedLocalUsageCheck</BasicRuntimeChecks>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;_DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)DEBUG.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <OutDir>./../../lib/vc12win64\</OutDir>
+ <IntDir>./x64/PxToolkit/checked\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)CHECKED</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)CHECKED.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <OutDir>./../../lib/vc12win64\</OutDir>
+ <IntDir>./x64/PxToolkit/profile\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)PROFILE</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_PROFILE=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)PROFILE.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <OutDir>./../../lib/vc12win64\</OutDir>
+ <IntDir>./x64/PxToolkit/release\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_SUPPORT_PVD=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName).lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\PxTkBmpLoader.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFile.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFPS.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkMatrixUtils.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkNamespaceMangle.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkRandom.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkStream.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxToolkit.h">
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\PxTkBmpLoader.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkFPS.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkMatrixUtils.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkRandom.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkStream.cpp">
+ </ClCompile>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets"></ImportGroup>
+</Project>
diff --git a/PhysX_3.4/Samples/PxToolkit/compiler/vc14win32/PxToolkit.vcxproj b/PhysX_3.4/Samples/PxToolkit/compiler/vc14win32/PxToolkit.vcxproj
new file mode 100644
index 00000000..d4a2bb10
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/compiler/vc14win32/PxToolkit.vcxproj
@@ -0,0 +1,248 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="debug|Win32">
+ <Configuration>debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="checked|Win32">
+ <Configuration>checked</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="profile|Win32">
+ <Configuration>profile</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="release|Win32">
+ <Configuration>release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{AE26EE6F-9143-D9EE-6480-FA134AAAFC48}</ProjectGuid>
+ <RootNamespace>PxToolkit</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <OutDir>./../../lib/vc14win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/debug\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)DEBUG</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <BasicRuntimeChecks>UninitializedLocalUsageCheck</BasicRuntimeChecks>
+ <AdditionalOptions>/GR- /GF /arch:SSE2 /MP /Zi /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /wd4456 /wd4457 /wd4458 /wd4459 /wd4774 /wd4777 /wd5027 /wd5029 /wd4464 /d2Zi+</AdditionalOptions>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;_DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)DEBUG.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <OutDir>./../../lib/vc14win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/checked\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)CHECKED</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='checked|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/GR- /GF /arch:SSE2 /MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /wd4456 /wd4457 /wd4458 /wd4459 /wd4774 /wd4777 /wd5027 /wd5029 /wd4464 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)CHECKED.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <OutDir>./../../lib/vc14win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/profile\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)PROFILE</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='profile|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/GR- /GF /arch:SSE2 /MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /wd4456 /wd4457 /wd4458 /wd4459 /wd4774 /wd4777 /wd5027 /wd5029 /wd4464 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_PROFILE=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)PROFILE.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <OutDir>./../../lib/vc14win32\</OutDir>
+ <IntDir>./Win32/PxToolkit/release\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/GR- /GF /arch:SSE2 /MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /wd4456 /wd4457 /wd4458 /wd4459 /wd4774 /wd4777 /wd5027 /wd5029 /wd4464 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_SUPPORT_PVD=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName).lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\PxTkBmpLoader.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFile.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFPS.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkMatrixUtils.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkNamespaceMangle.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkRandom.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkStream.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxToolkit.h">
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\PxTkBmpLoader.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkFPS.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkMatrixUtils.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkRandom.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkStream.cpp">
+ </ClCompile>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets"></ImportGroup>
+</Project>
diff --git a/PhysX_3.4/Samples/PxToolkit/compiler/vc14win64/PxToolkit.vcxproj b/PhysX_3.4/Samples/PxToolkit/compiler/vc14win64/PxToolkit.vcxproj
new file mode 100644
index 00000000..9a577598
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/compiler/vc14win64/PxToolkit.vcxproj
@@ -0,0 +1,248 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="debug|x64">
+ <Configuration>debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="checked|x64">
+ <Configuration>checked</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="profile|x64">
+ <Configuration>profile</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="release|x64">
+ <Configuration>release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{AE26EE6F-9143-D9EE-6480-FA134AAAFC48}</ProjectGuid>
+ <RootNamespace>PxToolkit</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'" Label="Configuration">
+ <ConfigurationType>StaticLibrary</ConfigurationType>
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <OutDir>./../../lib/vc14win64\</OutDir>
+ <IntDir>./x64/PxToolkit/debug\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)DEBUG</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <BasicRuntimeChecks>UninitializedLocalUsageCheck</BasicRuntimeChecks>
+ <AdditionalOptions>/GR- /GF /MP /Zi /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /wd4456 /wd4457 /wd4458 /wd4459 /wd4774 /wd4777 /wd5027 /wd5029 /wd4464 /d2Zi+</AdditionalOptions>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;_DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)DEBUG.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <OutDir>./../../lib/vc14win64\</OutDir>
+ <IntDir>./x64/PxToolkit/checked\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)CHECKED</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='checked|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/GR- /GF /MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /wd4456 /wd4457 /wd4458 /wd4459 /wd4774 /wd4777 /wd5027 /wd5029 /wd4464 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_CHECKED=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)CHECKED.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <OutDir>./../../lib/vc14win64\</OutDir>
+ <IntDir>./x64/PxToolkit/profile\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)PROFILE</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='profile|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/GR- /GF /MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /wd4456 /wd4457 /wd4458 /wd4459 /wd4774 /wd4777 /wd5027 /wd5029 /wd4464 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_PROFILE=1;PX_NVTX=1;PX_SUPPORT_PVD=1;PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName)PROFILE.lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <OutDir>./../../lib/vc14win64\</OutDir>
+ <IntDir>./x64/PxToolkit/release\</IntDir>
+ <TargetExt>.lib</TargetExt>
+ <TargetName>$(ProjectName)</TargetName>
+ <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules />
+ <CodeAnalysisRuleAssemblies />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'">
+ <ClCompile>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <FloatingPointModel>Fast</FloatingPointModel>
+ <AdditionalOptions>/GR- /GF /MP /Wall /wd4514 /wd4820 /wd4062 /wd4100 /wd4130 /wd4201 /wd4242 /wd4244 /wd4245 /wd4265 /wd4266 /wd4324 /wd4389 /wd4365 /wd4371 /wd4447 /wd4189 /wd4191 /wd4350 /wd4505 /wd4512 /wd4548 /wd4571 /wd4625 /wd4626 /wd4668 /wd4619 /wd4701 /wd4702 /wd4706 /wd4710 /wd4711 /wd4640 /wd4061 /wd4826 /wd4946 /wd4917 /wd4986 /wd4987 /wd4456 /wd4457 /wd4458 /wd4459 /wd4774 /wd4777 /wd5027 /wd5029 /wd4464 /d2Zi+</AdditionalOptions>
+ <Optimization>Full</Optimization>
+ <AdditionalIncludeDirectories>./../../../../Source/Common/include;./../../../../../PxShared/include;./../../../../../PxShared/src/foundation/include;./../../../../../PxShared/src/fastxml/include;./../../../../../PxShared/src/pvd/include;./../../include;./../../../../Include/common;./../../../../Include/geometry;./../../../../Include/pvd;./../../../../Include/particles;./../../../../Include/cooking;./../../../../Include/extensions;./../../../../Include/characterdynamic;./../../../../Include/vehicle;./../../../../Include/RepX;./../../../../Include;./../../../../Source/GeomUtils/headers;./../../../../Source/GeomUtils/src/contact;./../../../../Source/GeomUtils/src/common;./../../../../Source/GeomUtils/src/convex;./../../../../Source/GeomUtils/src/distance;./../../../../Source/GeomUtils/src/gjk;./../../../../Source/GeomUtils/src/intersection;./../../../../Source/GeomUtils/src/mesh;./../../../../Source/GeomUtils/src/Ice;./../../../../Source/GeomUtils/src/hf;./../../../../Source/GeomUtils/src/pcm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;NDEBUG;PX_SUPPORT_PVD=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ExceptionHandling>false</ExceptionHandling>
+ <WarningLevel>Level4</WarningLevel>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <PrecompiledHeaderFile></PrecompiledHeaderFile>
+ <ProgramDataBaseFileName>$(TargetDir)\$(TargetName).pdb</ProgramDataBaseFileName>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Lib>
+ <AdditionalOptions>/INCREMENTAL:NO</AdditionalOptions>
+ <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
+ <OutputFile>$(OutDir)$(ProjectName).lib</OutputFile>
+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <ProgramDatabaseFile>$(TargetDir)\$(TargetName).pdb</ProgramDatabaseFile>
+ <TargetMachine>MachineX64</TargetMachine>
+ </Lib>
+ <ResourceCompile>
+ </ResourceCompile>
+ <ProjectReference>
+ <LinkLibraryDependencies>true</LinkLibraryDependencies>
+ </ProjectReference>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\PxTkBmpLoader.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFile.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkFPS.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkMatrixUtils.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkNamespaceMangle.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkRandom.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxTkStream.h">
+ </ClInclude>
+ <ClInclude Include="..\..\include\PxToolkit.h">
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\src\PxTkBmpLoader.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkFPS.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkMatrixUtils.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkRandom.cpp">
+ </ClCompile>
+ <ClCompile Include="..\..\src\PxTkStream.cpp">
+ </ClCompile>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets"></ImportGroup>
+</Project>
diff --git a/PhysX_3.4/Samples/PxToolkit/include/PxTkBmpLoader.h b/PhysX_3.4/Samples/PxToolkit/include/PxTkBmpLoader.h
new file mode 100644
index 00000000..8fd8c371
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/include/PxTkBmpLoader.h
@@ -0,0 +1,57 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#ifndef PX_TOOLKIT_BMP_LOADER_H
+#define PX_TOOLKIT_BMP_LOADER_H
+
+ #include "extensions/PxDefaultStreams.h"
+
+ namespace PxToolkit
+ {
+
+ class BmpLoader
+ {
+ public:
+
+ BmpLoader(void);
+ ~BmpLoader(void);
+
+ // returns true if success. Data is persists until the class is destructed.
+ bool loadBmp(const char* filename);
+ bool loadBmp(PxFileHandle f);
+
+ int mWidth;
+ int mHeight;
+ unsigned char* mRGB;
+ bool mHasAlpha;
+ };
+
+ }
+
+#endif
diff --git a/PhysX_3.4/Samples/PxToolkit/include/PxTkFPS.h b/PhysX_3.4/Samples/PxToolkit/include/PxTkFPS.h
new file mode 100644
index 00000000..d7fc0126
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/include/PxTkFPS.h
@@ -0,0 +1,61 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#ifndef PX_TOOLKIT_FPS_H
+#define PX_TOOLKIT_FPS_H
+
+#include "common/PxPhysXCommonConfig.h"
+#include "PsTime.h"
+
+namespace PxToolkit
+{
+ using namespace physx;
+
+ class FPS
+ {
+ public:
+ FPS();
+ ~FPS();
+
+ void update();
+ PX_FORCE_INLINE float getFPS() const { return mFPS; }
+ PX_FORCE_INLINE float getInstantFPS() const { return mInstantFPS; }
+
+ private:
+ shdfnd::Time mTimer;
+ shdfnd::Time mTimer2;
+ PxReal mFPS;
+ PxReal mInstantFPS;
+ PxU32 mFrames;
+ PxU32 mFrames2;
+ };
+
+}
+
+#endif
diff --git a/PhysX_3.4/Samples/PxToolkit/include/PxTkFile.h b/PhysX_3.4/Samples/PxToolkit/include/PxTkFile.h
new file mode 100644
index 00000000..052624a2
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/include/PxTkFile.h
@@ -0,0 +1,81 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+
+#ifndef PX_TOOLKIT_FILE_H
+#define PX_TOOLKIT_FILE_H
+
+#include "foundation/PxSimpleTypes.h"
+// fopen_s - returns 0 on success, non-zero on failure
+
+#if PX_MICROSOFT_FAMILY
+
+#include <stdio.h>
+
+namespace PxToolkit
+{
+
+PX_INLINE physx::PxI32 fopen_s(FILE** file, const char* name, const char* mode)
+{
+ static const physx::PxU32 MAX_LEN = 300;
+ char buf[MAX_LEN+1];
+
+ physx::PxU32 i;
+ for(i = 0; i<MAX_LEN && name[i]; i++)
+ buf[i] = name[i] == '/' ? '\\' : name[i];
+ buf[i] = 0;
+
+ return i == MAX_LEN ? -1 : ::fopen_s(file, buf, mode);
+};
+
+} // namespace PxToolkit
+
+#elif PX_UNIX_FAMILY || PX_PS4
+
+#include <stdio.h>
+
+namespace PxToolkit
+{
+
+PX_INLINE physx::PxI32 fopen_s(FILE** file, const char* name, const char* mode)
+{
+ FILE* fp = ::fopen(name, mode);
+ return fp ? *file = fp, physx::PxI32(0) : -1;
+}
+
+} // PxToolkit
+
+#else
+
+#error "Platform not supported!"
+
+#endif
+
+#endif //PX_TOOLKIT_FILE_H
+
diff --git a/PhysX_3.4/Samples/PxToolkit/include/PxTkMatrixUtils.h b/PhysX_3.4/Samples/PxToolkit/include/PxTkMatrixUtils.h
new file mode 100644
index 00000000..028784c1
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/include/PxTkMatrixUtils.h
@@ -0,0 +1,48 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#ifndef PX_TOOLKIT_MATRIX_UTILS_H
+#define PX_TOOLKIT_MATRIX_UTILS_H
+
+#include "common/PxPhysXCommonConfig.h"
+#include "foundation/PxMat33.h"
+
+namespace PxToolkit
+{
+ using namespace physx;
+ void setRotX(PxMat33& m, PxReal angle);
+ void setRotY(PxMat33& m, PxReal angle);
+ void setRotZ(PxMat33& m, PxReal angle);
+
+ PxQuat getRotXQuat(float angle);
+ PxQuat getRotYQuat(float angle);
+ PxQuat getRotZQuat(float angle);
+}
+
+#endif
diff --git a/PhysX_3.4/Samples/PxToolkit/include/PxTkNamespaceMangle.h b/PhysX_3.4/Samples/PxToolkit/include/PxTkNamespaceMangle.h
new file mode 100644
index 00000000..bdbddfec
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/include/PxTkNamespaceMangle.h
@@ -0,0 +1,39 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#ifndef PX_TOOLKIT_NAMESPACE_MANGLE_H
+#define PX_TOOLKIT_NAMESPACE_MANGLE_H
+#include "Ps.h"
+
+namespace physx {
+ namespace Ps = shdfnd;
+ // we need this until all our code lives in physx namespace
+}
+
+#endif
diff --git a/PhysX_3.4/Samples/PxToolkit/include/PxTkRandom.h b/PhysX_3.4/Samples/PxToolkit/include/PxTkRandom.h
new file mode 100644
index 00000000..7a6914f0
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/include/PxTkRandom.h
@@ -0,0 +1,148 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#ifndef PX_TOOLKIT_RANDOM_H
+#define PX_TOOLKIT_RANDOM_H
+
+#include "common/PxPhysXCommonConfig.h"
+#define TEST_MAX_RAND 0xffff
+
+namespace PxToolkit
+{
+ using namespace physx;
+
+ class BasicRandom
+ {
+ public:
+ BasicRandom(PxU32 seed=0) : mRnd(seed) {}
+ ~BasicRandom() {}
+
+ PX_FORCE_INLINE void setSeed(PxU32 seed) { mRnd = seed; }
+ PX_FORCE_INLINE PxU32 getCurrentValue() const { return mRnd; }
+ PxU32 randomize() { mRnd = mRnd * 2147001325 + 715136305; return mRnd; }
+
+ PX_FORCE_INLINE PxU32 rand() { return randomize() & 0xffff; }
+ PX_FORCE_INLINE PxU32 rand32() { return randomize() & 0xffffffff; }
+
+ PxF32 randLegacy(PxF32 a, PxF32 b)
+ {
+ const PxF32 r = static_cast<PxF32>(rand())/(static_cast<PxF32>(0x7fff)+1.0f);
+ return r*(b-a) + a;
+ }
+
+ PxI32 randLegacy(PxI32 a, PxI32 b)
+ {
+ return a + static_cast<PxI32>(rand()%(b-a));
+ }
+
+ PxF32 rand(PxF32 a, PxF32 b)
+ {
+ const PxF32 r = rand32()/(static_cast<PxF32>(0xffffffff));
+ return r*(b-a) + a;
+ }
+
+ PxI32 rand(PxI32 a, PxI32 b)
+ {
+ return a + static_cast<PxI32>(rand32()%(b-a));
+ }
+
+ PxF32 randomFloat()
+ {
+ return rand()/(static_cast<PxF32>(0xffff)) - 0.5f;
+ }
+ PxF32 randomFloat32()
+ {
+ return rand32()/(static_cast<PxF32>(0xffffffff)) - 0.5f;
+ }
+
+ PxF32 randomFloat32(PxReal a, PxReal b) { return rand32()/PxF32(0xffffffff)*(b-a)+a; }
+ void unitRandomPt(physx::PxVec3& v);
+ void unitRandomQuat(physx::PxQuat& v);
+
+ PxVec3 unitRandomPt();
+ PxQuat unitRandomQuat();
+
+ private:
+ PxU32 mRnd;
+ };
+
+ //--------------------------------------
+ // Fast, very good random numbers
+ //
+ // Period = 2^249
+ //
+ // Kirkpatrick, S., and E. Stoll, 1981; A Very Fast Shift-Register
+ // Sequence Random Number Generator, Journal of Computational Physics,
+ // V. 40.
+ //
+ // Maier, W.L., 1991; A Fast Pseudo Random Number Generator,
+ // Dr. Dobb's Journal, May, pp. 152 - 157
+
+ class RandomR250
+ {
+ public:
+ RandomR250(PxI32 s);
+
+ void setSeed(PxI32 s);
+ PxU32 randI();
+ PxReal randUnit();
+
+ PxReal rand(PxReal lower, PxReal upper)
+ {
+ return lower + randUnit() * (upper - lower);
+ }
+
+ private:
+ PxU32 mBuffer[250];
+ PxI32 mIndex;
+ };
+
+ void SetSeed(PxU32 seed);
+ PxU32 Rand();
+
+ PX_INLINE PxF32 Rand(PxF32 a,PxF32 b)
+ {
+ const PxF32 r = static_cast<PxF32>(Rand())/(static_cast<PxF32>(TEST_MAX_RAND));
+ return r*(b-a) + a;
+ }
+
+ PX_INLINE PxF32 RandLegacy(PxF32 a,PxF32 b)
+ {
+ const PxF32 r = static_cast<PxF32>(Rand())/(static_cast<PxF32>(0x7fff)+1.0f);
+ return r*(b-a) + a;
+ }
+
+ //returns numbers from [a, b-1]
+ PX_INLINE PxI32 Rand(PxI32 a,PxI32 b)
+ {
+ return a + static_cast<PxI32>(Rand()%(b-a));
+ }
+}
+
+#endif
diff --git a/PhysX_3.4/Samples/PxToolkit/include/PxTkStream.h b/PhysX_3.4/Samples/PxToolkit/include/PxTkStream.h
new file mode 100644
index 00000000..0aecc4cc
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/include/PxTkStream.h
@@ -0,0 +1,60 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#ifndef PX_TOOLKIT_STREAM_H
+#define PX_TOOLKIT_STREAM_H
+
+#include "extensions/PxDefaultStreams.h"
+
+#include "cooking/PxCooking.h"
+namespace physx
+{
+ class PxTriangleMesh;
+ class PxConvexMesh;
+ class PxPhysics;
+ class PxCooking;
+ class PxTriangleMeshDesc;
+}
+
+namespace PxToolkit
+{
+ using namespace physx;
+
+ // temporarily located here
+ physx::PxTriangleMesh* createTriangleMesh32(physx::PxPhysics& physics, physx::PxCooking& cooking, const PxVec3* verts, PxU32 vertCount, const PxU32* indices32, PxU32 triCount, bool insert = false);
+ physx::PxConvexMesh* createConvexMesh(physx::PxPhysics& physics, physx::PxCooking& cooking, const PxVec3* verts, PxU32 vertCount, PxConvexFlags flags);
+ physx::PxConvexMesh* createConvexMeshSafe(physx::PxPhysics& physics, physx::PxCooking& cooking, const PxVec3* verts, PxU32 vertCount, PxConvexFlags flags, PxU32 vLimit = 256);
+
+ //this function is for MultiMaterial and MultiMaterialTerrain
+ physx::PxTriangleMesh* createTriangleMesh32(physx::PxPhysics& physics, physx::PxCooking& cooking, physx::PxTriangleMeshDesc* meshDesc, bool insert = false);
+}
+
+
+
+#endif
diff --git a/PhysX_3.4/Samples/PxToolkit/include/PxToolkit.h b/PhysX_3.4/Samples/PxToolkit/include/PxToolkit.h
new file mode 100644
index 00000000..4fc565e4
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/include/PxToolkit.h
@@ -0,0 +1,34 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#include "PxTkRandom.h"
+#include "PxTkFPS.h"
+#include "PxTkStream.h"
+#include "PxTkBmpLoader.h"
+#include "PxTkMatrixUtils.h"
diff --git a/PhysX_3.4/Samples/PxToolkit/src/PxTkBmpLoader.cpp b/PhysX_3.4/Samples/PxToolkit/src/PxTkBmpLoader.cpp
new file mode 100644
index 00000000..458c68d1
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/src/PxTkBmpLoader.cpp
@@ -0,0 +1,195 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <assert.h>
+#include "PxTkBmpLoader.h"
+#include "PxTkFile.h"
+
+
+using namespace PxToolkit;
+
+#define MAKETWOCC(a,b) ( (static_cast<char>(a)) | ((static_cast<char>(b))<< 8) )
+
+static bool isBigEndian() { int i = 1; return *(reinterpret_cast<char*>(&i))==0; }
+
+static unsigned short endianSwap(unsigned short nValue)
+{
+ return (((nValue>> 8)) | (nValue << 8));
+
+}
+
+static unsigned int endianSwap(unsigned int i)
+{
+ unsigned char b1, b2, b3, b4;
+
+ b1 = i & 255;
+ b2 = ( i >> 8 ) & 255;
+ b3 = ( i>>16 ) & 255;
+ b4 = ( i>>24 ) & 255;
+
+ return (static_cast<unsigned int>(b1) << 24) + (static_cast<unsigned int>(b2) << 16) + (static_cast<unsigned int>(b3) << 8) + b4;
+}
+
+// -------------------------------------------------------------------
+
+#pragma pack(1)
+
+struct BMPHEADER {
+ unsigned short Type;
+ unsigned int Size;
+ unsigned short Reserved1;
+ unsigned short Reserved2;
+ unsigned int OffBits;
+};
+
+// Only Win3.0 BMPINFO (see later for OS/2)
+struct BMPINFO {
+ unsigned int Size;
+ unsigned int Width;
+ unsigned int Height;
+ unsigned short Planes;
+ unsigned short BitCount;
+ unsigned int Compression;
+ unsigned int SizeImage;
+ unsigned int XPelsPerMeter;
+ unsigned int YPelsPerMeter;
+ unsigned int ClrUsed;
+ unsigned int ClrImportant;
+};
+
+#pragma pack()
+
+// Compression Type
+#define BI_RGB 0L
+#define BI_RLE8 1L
+#define BI_RLE4 2L
+
+// -------------------------------------------------------------------
+BmpLoader::BmpLoader() :
+ mWidth (0),
+ mHeight (0),
+ mRGB (NULL),
+ mHasAlpha (false)
+{
+}
+
+// -------------------------------------------------------------------
+BmpLoader::~BmpLoader()
+{
+ if (mRGB) free(mRGB);
+}
+
+// -------------------------------------------------------------------
+bool BmpLoader::loadBmp(PxFileHandle f)
+{
+ if (!f) return false;
+
+ if (mRGB) {
+ free(mRGB);
+ mRGB = NULL;
+ }
+ mWidth = 0;
+ mHeight = 0;
+
+ size_t num;
+ BMPHEADER header;
+ num = fread(&header, 1, sizeof(BMPHEADER), f);
+ if(isBigEndian()) header.Type = endianSwap(header.Type);
+ if (num != sizeof(BMPHEADER)) { fclose(f); return false; }
+ if (header.Type != MAKETWOCC('B','M')) { fclose(f); return false; }
+
+ BMPINFO info;
+ num = fread(&info, 1, sizeof(BMPINFO), f);
+ if (num != sizeof(BMPINFO)) { fclose(f); return false; }
+ if(isBigEndian()) info.Size = endianSwap(info.Size);
+ if(isBigEndian()) info.BitCount = endianSwap(info.BitCount);
+ if(isBigEndian()) info.Compression = endianSwap(info.Compression);
+ if(isBigEndian()) info.Width = endianSwap(info.Width);
+ if(isBigEndian()) info.Height = endianSwap(info.Height);
+
+ if (info.Size != sizeof(BMPINFO)) { fclose(f); return false; }
+ if (info.BitCount != 24 && info.BitCount != 32) { fclose(f); return false; }
+ if (info.Compression != BI_RGB) { fclose(f); return false; }
+
+ mWidth = info.Width;
+ mHeight = info.Height;
+
+ int bytesPerPixel = 0;
+ if(info.BitCount == 24)
+ {
+ mHasAlpha = false;
+ bytesPerPixel = 3;
+ }
+ else if(info.BitCount == 32)
+ {
+ mHasAlpha = true;
+ bytesPerPixel = 4;
+ }
+ else assert(0);
+
+ mRGB = static_cast<unsigned char*>(malloc(mWidth * mHeight * bytesPerPixel));
+
+ int lineLen = (((info.Width * (info.BitCount>>3)) + 3)>>2)<<2;
+ unsigned char* line = static_cast<unsigned char*>(malloc(lineLen));
+
+ for(int i = info.Height-1; i >= 0; i--)
+ {
+ num = fread(line, 1, static_cast<size_t>(lineLen), f);
+ if (num != static_cast<size_t>(lineLen)) { fclose(f); return false; }
+ unsigned char* src = line;
+ unsigned char* dest = mRGB + i*info.Width*bytesPerPixel;
+ for(unsigned int j = 0; j < info.Width; j++)
+ {
+ unsigned char b = *src++;
+ unsigned char g = *src++;
+ unsigned char r = *src++;
+ unsigned char a = mHasAlpha ? *src++ : 0;
+ *dest++ = r;
+ *dest++ = g;
+ *dest++ = b;
+ if(mHasAlpha)
+ *dest++ = a;
+ }
+ }
+
+ free(line);
+ return true;
+}
+
+// -------------------------------------------------------------------
+bool BmpLoader::loadBmp(const char *filename)
+{
+ PxFileHandle f = NULL;
+ PxToolkit::fopen_s(&f, filename, "rb");
+ bool ret = loadBmp(f);
+ if(f) fclose(f);
+ return ret;
+}
diff --git a/PhysX_3.4/Samples/PxToolkit/src/PxTkFPS.cpp b/PhysX_3.4/Samples/PxToolkit/src/PxTkFPS.cpp
new file mode 100644
index 00000000..2161d769
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/src/PxTkFPS.cpp
@@ -0,0 +1,69 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#include "PxTkFPS.h"
+
+using namespace PxToolkit;
+
+FPS::FPS()
+{
+ mFrames = 0;
+ mFrames2 = 0;
+ mFPS = 0.0f;
+ mInstantFPS = 0.0f;
+}
+
+FPS::~FPS()
+{
+}
+
+void FPS::update()
+{
+ // Keep track of the time lapse and frame count
+ mFrames++;
+ mFrames2++;
+
+ // Instant frame rate
+ PxReal Delta = PxReal(mTimer2.peekElapsedSeconds());
+ if(Delta > 0.01f)
+ {
+ mInstantFPS = PxReal(mFrames2) / Delta;
+ mTimer2.getElapsedSeconds();
+ mFrames2 = 0;
+ }
+
+ // Update the frame rate once per second
+ Delta = PxReal(mTimer.peekElapsedSeconds());
+ if(Delta > 1.0f)
+ {
+ mFPS = PxReal(mFrames) / Delta;
+ mTimer.getElapsedSeconds();
+ mFrames = 0;
+ }
+}
diff --git a/PhysX_3.4/Samples/PxToolkit/src/PxTkMatrixUtils.cpp b/PhysX_3.4/Samples/PxToolkit/src/PxTkMatrixUtils.cpp
new file mode 100644
index 00000000..39b8e7e5
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/src/PxTkMatrixUtils.cpp
@@ -0,0 +1,89 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#include "PxTkMatrixUtils.h"
+
+using namespace PxToolkit;
+
+void PxToolkit::setRotX(PxMat33& m, PxReal angle)
+{
+ m = PxMat33(PxIdentity);
+
+ const PxReal cos = cosf(angle);
+ const PxReal sin = sinf(angle);
+
+ m[1][1] = m[2][2] = cos;
+ m[1][2] = sin;
+ m[2][1] = -sin;
+}
+
+void PxToolkit::setRotY(PxMat33& m, PxReal angle)
+{
+ m = PxMat33(PxIdentity);
+
+ const PxReal cos = cosf(angle);
+ const PxReal sin = sinf(angle);
+
+ m[0][0] = m[2][2] = cos;
+ m[0][2] = -sin;
+ m[2][0] = sin;
+}
+
+void PxToolkit::setRotZ(PxMat33& m, PxReal angle)
+{
+ m = PxMat33(PxIdentity);
+
+ const PxReal cos = cosf(angle);
+ const PxReal sin = sinf(angle);
+
+ m[0][0] = m[1][1] = cos;
+ m[0][1] = sin;
+ m[1][0] = -sin;
+}
+
+PxQuat PxToolkit::getRotXQuat(float angle)
+{
+ PxMat33 m;
+ setRotX(m, angle);
+ return PxQuat(m);
+}
+
+PxQuat PxToolkit::getRotYQuat(float angle)
+{
+ PxMat33 m;
+ setRotY(m, angle);
+ return PxQuat(m);
+}
+
+PxQuat PxToolkit::getRotZQuat(float angle)
+{
+ PxMat33 m;
+ setRotZ(m, angle);
+ return PxQuat(m);
+}
diff --git a/PhysX_3.4/Samples/PxToolkit/src/PxTkRandom.cpp b/PhysX_3.4/Samples/PxToolkit/src/PxTkRandom.cpp
new file mode 100644
index 00000000..e25a9357
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/src/PxTkRandom.cpp
@@ -0,0 +1,141 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#include "PxTkRandom.h"
+#include "foundation/PxQuat.h"
+
+using namespace physx;
+using namespace PxToolkit;
+
+static RandomR250 gRandomR250(0x95d6739b);
+
+PxVec3 BasicRandom::unitRandomPt()
+{
+ PxVec3 v;
+ do
+ {
+ v.x = randomFloat();
+ v.y = randomFloat();
+ v.z = randomFloat();
+ }
+ while(v.normalize()<1e-6f);
+ return v;
+}
+
+PxQuat BasicRandom::unitRandomQuat()
+{
+ PxQuat v;
+ do
+ {
+ v.x = randomFloat();
+ v.y = randomFloat();
+ v.z = randomFloat();
+ v.w = randomFloat();
+ }
+ while(v.normalize()<1e-6f);
+
+ return v;
+}
+
+
+void BasicRandom::unitRandomPt(PxVec3& v)
+{
+ v = unitRandomPt();
+}
+void BasicRandom::unitRandomQuat(PxQuat& v)
+{
+ v = unitRandomQuat();
+}
+
+
+void PxToolkit::SetSeed(PxU32 seed)
+{
+ gRandomR250.setSeed(seed);
+}
+
+PxU32 PxToolkit::Rand()
+{
+ return gRandomR250.randI() & TEST_MAX_RAND;
+}
+
+
+RandomR250::RandomR250(PxI32 s)
+{
+ setSeed(s);
+}
+
+void RandomR250::setSeed(PxI32 s)
+{
+ BasicRandom lcg(s);
+ mIndex = 0;
+
+ PxI32 j;
+ for (j = 0; j < 250; j++) // fill r250 buffer with bit values
+ mBuffer[j] = lcg.randomize();
+
+ for (j = 0; j < 250; j++) // set some MSBs to 1
+ if ( lcg.randomize() > 0x40000000L )
+ mBuffer[j] |= 0x80000000L;
+
+ PxU32 msb = 0x80000000; // turn on diagonal bit
+ PxU32 mask = 0xffffffff; // turn off the leftmost bits
+
+ for (j = 0; j < 32; j++)
+ {
+ const PxI32 k = 7 * j + 3; // select a word to operate on
+ mBuffer[k] &= mask; // turn off bits left of the diagonal
+ mBuffer[k] |= msb; // turn on the diagonal bit
+ mask >>= 1;
+ msb >>= 1;
+ }
+}
+
+PxU32 RandomR250::randI()
+{
+ PxI32 j;
+
+ // wrap pointer around
+ if ( mIndex >= 147 ) j = mIndex - 147;
+ else j = mIndex + 103;
+
+ const PxU32 new_rand = mBuffer[ mIndex ] ^ mBuffer[ j ];
+ mBuffer[ mIndex ] = new_rand;
+
+ // increment pointer for next time
+ if ( mIndex >= 249 ) mIndex = 0;
+ else mIndex++;
+
+ return new_rand >> 1;
+}
+
+PxReal RandomR250::randUnit()
+{
+ PxU32 mask = (1<<23)-1;
+ return PxF32(randI()&(mask))/PxF32(mask);
+}
diff --git a/PhysX_3.4/Samples/PxToolkit/src/PxTkStream.cpp b/PhysX_3.4/Samples/PxToolkit/src/PxTkStream.cpp
new file mode 100644
index 00000000..2d289af1
--- /dev/null
+++ b/PhysX_3.4/Samples/PxToolkit/src/PxTkStream.cpp
@@ -0,0 +1,155 @@
+// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.
+// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
+// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
+
+#include "PxTkStream.h"
+#include "foundation/PxAssert.h"
+#include "PxTkFile.h"
+#include "PxTkNamespaceMangle.h"
+#include "PsIntrinsics.h"
+#include "foundation/PxMath.h"
+#include "PxPhysics.h"
+#include "geometry/PxConvexMesh.h"
+#include "cooking/PxCooking.h"
+#include "foundation/PxBounds3.h"
+#include "extensions/PxDefaultStreams.h"
+
+using namespace PxToolkit;
+///////////////////////////////////////////////////////////////////////////////
+
+PxTriangleMesh* PxToolkit::createTriangleMesh32(PxPhysics& physics, PxCooking& cooking, const PxVec3* verts, PxU32 vertCount, const PxU32* indices32, PxU32 triCount, bool insert)
+{
+ PxTriangleMeshDesc meshDesc;
+ meshDesc.points.count = vertCount;
+ meshDesc.points.stride = sizeof(PxVec3);
+ meshDesc.points.data = verts;
+
+ meshDesc.triangles.count = triCount;
+ meshDesc.triangles.stride = 3*sizeof(PxU32);
+ meshDesc.triangles.data = indices32;
+
+ if(!insert)
+ {
+ PxDefaultMemoryOutputStream writeBuffer;
+ bool status = cooking.cookTriangleMesh(meshDesc, writeBuffer);
+ if(!status)
+ return NULL;
+
+ PxDefaultMemoryInputData readBuffer(writeBuffer.getData(), writeBuffer.getSize());
+ return physics.createTriangleMesh(readBuffer);
+ }
+ else
+ {
+ return cooking.createTriangleMesh(meshDesc,physics.getPhysicsInsertionCallback());
+ }
+}
+
+PxTriangleMesh* PxToolkit::createTriangleMesh32(PxPhysics& physics, PxCooking& cooking, PxTriangleMeshDesc* meshDesc, bool insert)
+{
+ if(!insert)
+ {
+ PxDefaultMemoryOutputStream writeBuffer;
+ bool status = cooking.cookTriangleMesh(*meshDesc, writeBuffer);
+ if(!status)
+ return NULL;
+
+ PxDefaultMemoryInputData readBuffer(writeBuffer.getData(), writeBuffer.getSize());
+ return physics.createTriangleMesh(readBuffer);
+ }
+ else
+ {
+ return cooking.createTriangleMesh(*meshDesc,physics.getPhysicsInsertionCallback());
+ }
+}
+
+PxConvexMesh* PxToolkit::createConvexMesh(PxPhysics& physics, PxCooking& cooking, const PxVec3* verts, PxU32 vertCount, PxConvexFlags flags)
+{
+ PxConvexMeshDesc convexDesc;
+ convexDesc.points.count = vertCount;
+ convexDesc.points.stride = sizeof(PxVec3);
+ convexDesc.points.data = verts;
+ convexDesc.flags = flags;
+
+ PxDefaultMemoryOutputStream buf;
+ if(!cooking.cookConvexMesh(convexDesc, buf))
+ return NULL;
+
+ PxDefaultMemoryInputData input(buf.getData(), buf.getSize());
+ return physics.createConvexMesh(input);
+}
+
+PxConvexMesh* PxToolkit::createConvexMeshSafe(PxPhysics& physics, PxCooking& cooking, const PxVec3* verts, PxU32 vertCount, PxConvexFlags flags, PxU32 vLimit)
+{
+ PxConvexMeshDesc convexDesc;
+ convexDesc.points.count = vertCount;
+ convexDesc.points.stride = sizeof(PxVec3);
+ convexDesc.points.data = verts;
+ convexDesc.flags = flags;
+ convexDesc.vertexLimit = vLimit;
+
+ PxDefaultMemoryOutputStream buf;
+ bool retVal = cooking.cookConvexMesh(convexDesc, buf);
+ if(!retVal)
+ {
+ // create AABB
+ PxBounds3 aabb;
+ aabb.setEmpty();
+ for (PxU32 i = 0; i < vertCount; i++)
+ {
+ aabb.include(verts[i]);
+ }
+
+ PxVec3 aabbVerts[8];
+ aabbVerts[0] = PxVec3(aabb.minimum.x,aabb.minimum.y,aabb.minimum.z);
+ aabbVerts[1] = PxVec3(aabb.maximum.x,aabb.minimum.y,aabb.minimum.z);
+ aabbVerts[2] = PxVec3(aabb.maximum.x,aabb.maximum.y,aabb.minimum.z);
+ aabbVerts[3] = PxVec3(aabb.minimum.x,aabb.maximum.y,aabb.minimum.z);
+
+ aabbVerts[4] = PxVec3(aabb.minimum.x,aabb.minimum.y,aabb.maximum.z);
+ aabbVerts[5] = PxVec3(aabb.maximum.x,aabb.minimum.y,aabb.maximum.z);
+ aabbVerts[6] = PxVec3(aabb.maximum.x,aabb.maximum.y,aabb.maximum.z);
+ aabbVerts[7] = PxVec3(aabb.minimum.x,aabb.maximum.y,aabb.maximum.z);
+
+ convexDesc.points.count = 8;
+ convexDesc.points.stride = sizeof(PxVec3);
+ convexDesc.points.data = &aabbVerts[0];
+ convexDesc.flags = flags;
+
+ retVal = cooking.cookConvexMesh(convexDesc, buf);
+ }
+
+ if(!retVal)
+ {
+ return NULL;
+ }
+
+ PxDefaultMemoryInputData input(buf.getData(), buf.getSize());
+ return physics.createConvexMesh(input);
+}
+
+