diff --git a/msvc/2005_dx11_directcompute/BULLET_PHYSICS.sln b/msvc/2005_dx11_directcompute/BULLET_PHYSICS.sln
new file mode 100644
index 000000000..e70d6074c
--- /dev/null
+++ b/msvc/2005_dx11_directcompute/BULLET_PHYSICS.sln
@@ -0,0 +1,92 @@
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AppDX11ClothDemo", "Demos\DX11ClothDemo\AppDX11ClothDemo.vcproj", "{33295DAF-D179-485E-9723-E9AB006464FC}"
+ ProjectSection(ProjectDependencies) = postProject
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E} = {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72} = {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}
+ {9D2761AC-C8C5-405E-9202-017B3D647930} = {9D2761AC-C8C5-405E-9202-017B3D647930}
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0} = {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3} = {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BulletCollision", "src\BulletCollision\BulletCollision.vcproj", "{A34A72FD-C315-41CA-BE55-DB5D2783D3F3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BulletDynamics", "src\BulletDynamics\BulletDynamics.vcproj", "{7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BulletMultiThreaded", "src\BulletMultiThreaded\BulletMultiThreaded.vcproj", "{AA63C563-1518-42AC-91EA-E0FA73FDB3CB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BulletSoftBody", "src\BulletSoftBody\BulletSoftBody.vcproj", "{21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BulletSoftBodySolvers_DX11", "src\BulletMultiThreaded\GpuSoftBodySolvers\DX11\BulletSoftBodySolvers_DX11.vcproj", "{B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LinearMath", "src\LinearMath\LinearMath.vcproj", "{9D2761AC-C8C5-405E-9202-017B3D647930}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ MinSizeRel|Win32 = MinSizeRel|Win32
+ Release|Win32 = Release|Win32
+ RelWithDebInfo|Win32 = RelWithDebInfo|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {33295DAF-D179-485E-9723-E9AB006464FC}.Debug|Win32.ActiveCfg = Debug|Win32
+ {33295DAF-D179-485E-9723-E9AB006464FC}.Debug|Win32.Build.0 = Debug|Win32
+ {33295DAF-D179-485E-9723-E9AB006464FC}.MinSizeRel|Win32.ActiveCfg = MinSizeRel|Win32
+ {33295DAF-D179-485E-9723-E9AB006464FC}.MinSizeRel|Win32.Build.0 = MinSizeRel|Win32
+ {33295DAF-D179-485E-9723-E9AB006464FC}.Release|Win32.ActiveCfg = Release|Win32
+ {33295DAF-D179-485E-9723-E9AB006464FC}.Release|Win32.Build.0 = Release|Win32
+ {33295DAF-D179-485E-9723-E9AB006464FC}.RelWithDebInfo|Win32.ActiveCfg = RelWithDebInfo|Win32
+ {33295DAF-D179-485E-9723-E9AB006464FC}.RelWithDebInfo|Win32.Build.0 = RelWithDebInfo|Win32
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}.Debug|Win32.ActiveCfg = Debug|Win32
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}.Debug|Win32.Build.0 = Debug|Win32
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}.MinSizeRel|Win32.ActiveCfg = MinSizeRel|Win32
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}.MinSizeRel|Win32.Build.0 = MinSizeRel|Win32
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}.Release|Win32.ActiveCfg = Release|Win32
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}.Release|Win32.Build.0 = Release|Win32
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}.RelWithDebInfo|Win32.ActiveCfg = RelWithDebInfo|Win32
+ {A34A72FD-C315-41CA-BE55-DB5D2783D3F3}.RelWithDebInfo|Win32.Build.0 = RelWithDebInfo|Win32
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}.Debug|Win32.Build.0 = Debug|Win32
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}.MinSizeRel|Win32.ActiveCfg = MinSizeRel|Win32
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}.MinSizeRel|Win32.Build.0 = MinSizeRel|Win32
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}.Release|Win32.ActiveCfg = Release|Win32
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}.Release|Win32.Build.0 = Release|Win32
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}.RelWithDebInfo|Win32.ActiveCfg = RelWithDebInfo|Win32
+ {7A8E1B76-0DA5-4C03-9D93-99BE0CD3E09E}.RelWithDebInfo|Win32.Build.0 = RelWithDebInfo|Win32
+ {AA63C563-1518-42AC-91EA-E0FA73FDB3CB}.Debug|Win32.ActiveCfg = Debug|Win32
+ {AA63C563-1518-42AC-91EA-E0FA73FDB3CB}.Debug|Win32.Build.0 = Debug|Win32
+ {AA63C563-1518-42AC-91EA-E0FA73FDB3CB}.MinSizeRel|Win32.ActiveCfg = MinSizeRel|Win32
+ {AA63C563-1518-42AC-91EA-E0FA73FDB3CB}.MinSizeRel|Win32.Build.0 = MinSizeRel|Win32
+ {AA63C563-1518-42AC-91EA-E0FA73FDB3CB}.Release|Win32.ActiveCfg = Release|Win32
+ {AA63C563-1518-42AC-91EA-E0FA73FDB3CB}.Release|Win32.Build.0 = Release|Win32
+ {AA63C563-1518-42AC-91EA-E0FA73FDB3CB}.RelWithDebInfo|Win32.ActiveCfg = RelWithDebInfo|Win32
+ {AA63C563-1518-42AC-91EA-E0FA73FDB3CB}.RelWithDebInfo|Win32.Build.0 = RelWithDebInfo|Win32
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}.Debug|Win32.ActiveCfg = Debug|Win32
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}.Debug|Win32.Build.0 = Debug|Win32
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}.MinSizeRel|Win32.ActiveCfg = MinSizeRel|Win32
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}.MinSizeRel|Win32.Build.0 = MinSizeRel|Win32
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}.Release|Win32.ActiveCfg = Release|Win32
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}.Release|Win32.Build.0 = Release|Win32
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}.RelWithDebInfo|Win32.ActiveCfg = RelWithDebInfo|Win32
+ {21C8F687-6EB9-4EE0-A5E4-2B3182AC4E72}.RelWithDebInfo|Win32.Build.0 = RelWithDebInfo|Win32
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}.Debug|Win32.ActiveCfg = Debug|Win32
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}.Debug|Win32.Build.0 = Debug|Win32
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}.MinSizeRel|Win32.ActiveCfg = MinSizeRel|Win32
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}.MinSizeRel|Win32.Build.0 = MinSizeRel|Win32
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}.Release|Win32.ActiveCfg = Release|Win32
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}.Release|Win32.Build.0 = Release|Win32
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}.RelWithDebInfo|Win32.ActiveCfg = RelWithDebInfo|Win32
+ {B4DDD5C4-1ED4-43BA-9579-51CC60A31DB0}.RelWithDebInfo|Win32.Build.0 = RelWithDebInfo|Win32
+ {9D2761AC-C8C5-405E-9202-017B3D647930}.Debug|Win32.ActiveCfg = Debug|Win32
+ {9D2761AC-C8C5-405E-9202-017B3D647930}.Debug|Win32.Build.0 = Debug|Win32
+ {9D2761AC-C8C5-405E-9202-017B3D647930}.MinSizeRel|Win32.ActiveCfg = MinSizeRel|Win32
+ {9D2761AC-C8C5-405E-9202-017B3D647930}.MinSizeRel|Win32.Build.0 = MinSizeRel|Win32
+ {9D2761AC-C8C5-405E-9202-017B3D647930}.Release|Win32.ActiveCfg = Release|Win32
+ {9D2761AC-C8C5-405E-9202-017B3D647930}.Release|Win32.Build.0 = Release|Win32
+ {9D2761AC-C8C5-405E-9202-017B3D647930}.RelWithDebInfo|Win32.ActiveCfg = RelWithDebInfo|Win32
+ {9D2761AC-C8C5-405E-9202-017B3D647930}.RelWithDebInfo|Win32.Build.0 = RelWithDebInfo|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/msvc/2005_dx11_directcompute/Demos/DX11ClothDemo/AppDX11ClothDemo.vcproj b/msvc/2005_dx11_directcompute/Demos/DX11ClothDemo/AppDX11ClothDemo.vcproj
new file mode 100644
index 000000000..7ddfb8a88
--- /dev/null
+++ b/msvc/2005_dx11_directcompute/Demos/DX11ClothDemo/AppDX11ClothDemo.vcproj
@@ -0,0 +1,349 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/msvc/2005_dx11_directcompute/src/BulletCollision/BulletCollision.vcproj b/msvc/2005_dx11_directcompute/src/BulletCollision/BulletCollision.vcproj
new file mode 100644
index 000000000..85f750da2
--- /dev/null
+++ b/msvc/2005_dx11_directcompute/src/BulletCollision/BulletCollision.vcproj
@@ -0,0 +1,863 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/msvc/2005_dx11_directcompute/src/BulletDynamics/BulletDynamics.vcproj b/msvc/2005_dx11_directcompute/src/BulletDynamics/BulletDynamics.vcproj
new file mode 100644
index 000000000..32028fc66
--- /dev/null
+++ b/msvc/2005_dx11_directcompute/src/BulletDynamics/BulletDynamics.vcproj
@@ -0,0 +1,383 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/msvc/2005_dx11_directcompute/src/BulletMultiThreaded/BulletMultiThreaded.vcproj b/msvc/2005_dx11_directcompute/src/BulletMultiThreaded/BulletMultiThreaded.vcproj
new file mode 100644
index 000000000..a605b36d9
--- /dev/null
+++ b/msvc/2005_dx11_directcompute/src/BulletMultiThreaded/BulletMultiThreaded.vcproj
@@ -0,0 +1,377 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/msvc/2005_dx11_directcompute/src/BulletMultiThreaded/GpuSoftBodySolvers/DX11/BulletSoftBodySolvers_DX11.vcproj b/msvc/2005_dx11_directcompute/src/BulletMultiThreaded/GpuSoftBodySolvers/DX11/BulletSoftBodySolvers_DX11.vcproj
new file mode 100644
index 000000000..8602ae1b5
--- /dev/null
+++ b/msvc/2005_dx11_directcompute/src/BulletMultiThreaded/GpuSoftBodySolvers/DX11/BulletSoftBodySolvers_DX11.vcproj
@@ -0,0 +1,299 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/msvc/2005_dx11_directcompute/src/BulletSoftBody/BulletSoftBody.vcproj b/msvc/2005_dx11_directcompute/src/BulletSoftBody/BulletSoftBody.vcproj
new file mode 100644
index 000000000..b13cb89be
--- /dev/null
+++ b/msvc/2005_dx11_directcompute/src/BulletSoftBody/BulletSoftBody.vcproj
@@ -0,0 +1,290 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/msvc/2005_dx11_directcompute/src/LinearMath/LinearMath.vcproj b/msvc/2005_dx11_directcompute/src/LinearMath/LinearMath.vcproj
new file mode 100644
index 000000000..511fa5624
--- /dev/null
+++ b/msvc/2005_dx11_directcompute/src/LinearMath/LinearMath.vcproj
@@ -0,0 +1,317 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+