diff --git a/build/vs2015/bounce.sln b/build/vs2015/bounce.sln
new file mode 100644
index 0000000..4f3d5a8
--- /dev/null
+++ b/build/vs2015/bounce.sln
@@ -0,0 +1,66 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2015
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bounce", "bounce.vcxproj", "{C13B93F4-ADDD-BDCA-9698-D11E82D9441B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glad", "glad.vcxproj", "{DD62977C-C999-980D-7286-7E105E9C140F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glfw", "glfw.vcxproj", "{9563977C-819A-980D-2A87-7E10169D140F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "imgui", "imgui.vcxproj", "{0098A80F-6CAC-D0C0-352E-7420A101CDF1}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testbed", "testbed.vcxproj", "{90781ED9-FC57-9D74-0570-284B71CE03D6}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ debug|Win32 = debug|Win32
+ debug|x64 = debug|x64
+ release|Win32 = release|Win32
+ release|x64 = release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}.debug|Win32.ActiveCfg = debug|Win32
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}.debug|Win32.Build.0 = debug|Win32
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}.debug|x64.ActiveCfg = debug|x64
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}.debug|x64.Build.0 = debug|x64
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}.release|Win32.ActiveCfg = release|Win32
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}.release|Win32.Build.0 = release|Win32
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}.release|x64.ActiveCfg = release|x64
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}.release|x64.Build.0 = release|x64
+ {DD62977C-C999-980D-7286-7E105E9C140F}.debug|Win32.ActiveCfg = debug|Win32
+ {DD62977C-C999-980D-7286-7E105E9C140F}.debug|Win32.Build.0 = debug|Win32
+ {DD62977C-C999-980D-7286-7E105E9C140F}.debug|x64.ActiveCfg = debug|x64
+ {DD62977C-C999-980D-7286-7E105E9C140F}.debug|x64.Build.0 = debug|x64
+ {DD62977C-C999-980D-7286-7E105E9C140F}.release|Win32.ActiveCfg = release|Win32
+ {DD62977C-C999-980D-7286-7E105E9C140F}.release|Win32.Build.0 = release|Win32
+ {DD62977C-C999-980D-7286-7E105E9C140F}.release|x64.ActiveCfg = release|x64
+ {DD62977C-C999-980D-7286-7E105E9C140F}.release|x64.Build.0 = release|x64
+ {9563977C-819A-980D-2A87-7E10169D140F}.debug|Win32.ActiveCfg = debug|Win32
+ {9563977C-819A-980D-2A87-7E10169D140F}.debug|Win32.Build.0 = debug|Win32
+ {9563977C-819A-980D-2A87-7E10169D140F}.debug|x64.ActiveCfg = debug|x64
+ {9563977C-819A-980D-2A87-7E10169D140F}.debug|x64.Build.0 = debug|x64
+ {9563977C-819A-980D-2A87-7E10169D140F}.release|Win32.ActiveCfg = release|Win32
+ {9563977C-819A-980D-2A87-7E10169D140F}.release|Win32.Build.0 = release|Win32
+ {9563977C-819A-980D-2A87-7E10169D140F}.release|x64.ActiveCfg = release|x64
+ {9563977C-819A-980D-2A87-7E10169D140F}.release|x64.Build.0 = release|x64
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}.debug|Win32.ActiveCfg = debug|Win32
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}.debug|Win32.Build.0 = debug|Win32
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}.debug|x64.ActiveCfg = debug|x64
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}.debug|x64.Build.0 = debug|x64
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}.release|Win32.ActiveCfg = release|Win32
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}.release|Win32.Build.0 = release|Win32
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}.release|x64.ActiveCfg = release|x64
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}.release|x64.Build.0 = release|x64
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}.debug|Win32.ActiveCfg = debug|Win32
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}.debug|Win32.Build.0 = debug|Win32
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}.debug|x64.ActiveCfg = debug|x64
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}.debug|x64.Build.0 = debug|x64
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}.release|Win32.ActiveCfg = release|Win32
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}.release|Win32.Build.0 = release|Win32
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}.release|x64.ActiveCfg = release|x64
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}.release|x64.Build.0 = release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/build/vs2015/bounce.vcxproj b/build/vs2015/bounce.vcxproj
new file mode 100644
index 0000000..970e25b
--- /dev/null
+++ b/build/vs2015/bounce.vcxproj
@@ -0,0 +1,294 @@
+
+
+
+
+ debug
+ Win32
+
+
+ debug
+ x64
+
+
+ release
+ Win32
+
+
+ release
+ x64
+
+
+
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}
+ true
+ Win32Proj
+ bounce
+
+
+
+ StaticLibrary
+ true
+ Unicode
+ v140
+
+
+ StaticLibrary
+ true
+ Unicode
+ v140
+
+
+ StaticLibrary
+ false
+ Unicode
+ v140
+
+
+ StaticLibrary
+ false
+ Unicode
+ v140
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ bin\x32\debug\bounce\
+ obj\x32\debug\bounce\
+ bounce
+ .lib
+
+
+ bin\x64\debug\bounce\
+ obj\x64\debug\bounce\
+ bounce
+ .lib
+
+
+ bin\x32\release\bounce\
+ obj\x32\release\bounce\
+ bounce
+ .lib
+
+
+ bin\x64\release\bounce\
+ obj\x64\release\bounce\
+ bounce
+ .lib
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\include;%(AdditionalIncludeDirectories)
+ EditAndContinue
+ Disabled
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Windows
+ true
+
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\include;%(AdditionalIncludeDirectories)
+ ProgramDatabase
+ Disabled
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Windows
+ true
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\include;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\include;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/bounce.vcxproj.filters b/build/vs2015/bounce.vcxproj.filters
new file mode 100644
index 0000000..60b71ff
--- /dev/null
+++ b/build/vs2015/bounce.vcxproj.filters
@@ -0,0 +1,455 @@
+
+
+
+
+ {89AF369E-F58E-B539-FEA6-40106A051C9B}
+
+
+ {D419DC43-C0E7-CF49-A97B-407095E8ABAE}
+
+
+ {0FC81CFD-FBEC-6B7D-2438-510D10BC6A9B}
+
+
+ {9AC16B4F-867C-5BFB-2F34-D4451BCEA58B}
+
+
+ {86F36B4F-72AE-5BFB-1B66-D4450700A68B}
+
+
+ {02B88A21-6E9B-9961-779E-C79DE30060B2}
+
+
+ {A12552DA-8D4B-1C41-7691-A10C6256410D}
+
+
+ {AC64A0F9-18D1-5BF4-E1C4-F3514DF07D5C}
+
+
+ {252146D6-1131-F2A6-7AEA-56C56619E13F}
+
+
+ {B4B69780-A071-872C-4929-007735C3D1BC}
+
+
+ {577D3B7B-43A3-05E2-2CE9-8AAD18AE2AAE}
+
+
+ {DB55CFD2-478D-176A-5097-7B8DBC4D3E63}
+
+
+ {09FBB88C-F54B-A4CE-1EB0-92900A603738}
+
+
+ {14818B0F-00FE-7E52-297B-7F6615571BE6}
+
+
+ {A1E236CD-8D08-0134-764E-86FF62132600}
+
+
+ {4E48B2E1-3A6E-7C48-23B4-01140F79A114}
+
+
+ {F52AA7E9-E14F-F669-0A9B-DBF9F61EF587}
+
+
+ {2DAB880B-99B4-887C-2230-9F7C8E38947C}
+
+
+ {F814F251-E4CC-339F-4DD4-0CFB39ABCE8F}
+
+
+ {33003210-1F8F-BBD9-C8AD-CFD4B41BCC7F}
+
+
+ {BE6BE8DC-AA90-375D-D3DB-1CEDBF5F367B}
+
+
+ {AA9DE8DC-96C2-375D-BF0D-1DEDAB91367B}
+
+
+ {A6DFD2EA-12ED-00D1-9BD3-FCBB07E0CC87}
+
+
+ {C5E8A1B9-B1F8-4D8A-1AB2-B2A806E13C23}
+
+
+ {50EF0F83-BC05-0E19-057D-993A71D2DEA0}
+
+
+ {49F28903-35EC-B255-1E59-49660AF218C2}
+
+
+ {D860140E-C485-638E-EDD0-481ED95462AC}
+
+
+ {7F194C76-EB7A-2984-74E8-6F36E0486043}
+
+
+ {2D17067F-19D2-F52A-C289-6E75AE2340BB}
+
+
+ {3881B4FC-2468-76F4-CDB8-DC11B97EEF5A}
+
+
+ {C5A586AC-B1B5-327D-1A6F-979B069E2116}
+
+
+ {720B02C1-5E1B-AE91-C7D4-12B0B3039D2A}
+
+
+ {1963BCFC-05F2-45C6-AE10-5AC19A7E566C}
+
+
+
+
+ include\bounce
+
+
+ include\bounce\collision
+
+
+ include\bounce\collision
+
+
+ include\bounce\collision\gjk
+
+
+ include\bounce\collision\gjk
+
+
+ include\bounce\collision\gjk
+
+
+ include\bounce\collision\sat
+
+
+ include\bounce\collision\sat
+
+
+ include\bounce\collision\sat
+
+
+ include\bounce\collision\shapes
+
+
+ include\bounce\collision\shapes
+
+
+ include\bounce\collision\shapes
+
+
+ include\bounce\collision\shapes
+
+
+ include\bounce\collision\shapes
+
+
+ include\bounce\collision\shapes
+
+
+ include\bounce\collision\shapes
+
+
+ include\bounce\collision\trees
+
+
+ include\bounce\collision\trees
+
+
+ include\bounce\common
+
+
+ include\bounce\common
+
+
+ include\bounce\common\math
+
+
+ include\bounce\common\math
+
+
+ include\bounce\common\math
+
+
+ include\bounce\common\math
+
+
+ include\bounce\common\math
+
+
+ include\bounce\common\math
+
+
+ include\bounce\common\math
+
+
+ include\bounce\common\math
+
+
+ include\bounce\common\memory
+
+
+ include\bounce\common\memory
+
+
+ include\bounce\common
+
+
+ include\bounce\common\template
+
+
+ include\bounce\common\template
+
+
+ include\bounce\common\template
+
+
+ include\bounce\common\template
+
+
+ include\bounce\common
+
+
+ include\bounce\dynamics
+
+
+ include\bounce\dynamics
+
+
+ include\bounce\dynamics\contacts\collide
+
+
+ include\bounce\dynamics\contacts\collide
+
+
+ include\bounce\dynamics\contacts
+
+
+ include\bounce\dynamics\contacts
+
+
+ include\bounce\dynamics\contacts
+
+
+ include\bounce\dynamics\contacts
+
+
+ include\bounce\dynamics\contacts
+
+
+ include\bounce\dynamics\contacts
+
+
+ include\bounce\dynamics
+
+
+ include\bounce\dynamics
+
+
+ include\bounce\dynamics\joints
+
+
+ include\bounce\dynamics\joints
+
+
+ include\bounce\dynamics\joints
+
+
+ include\bounce\dynamics\joints
+
+
+ include\bounce\dynamics\joints
+
+
+ include\bounce\dynamics\joints
+
+
+ include\bounce\dynamics\joints
+
+
+ include\bounce\dynamics\shapes
+
+
+ include\bounce\dynamics\shapes
+
+
+ include\bounce\dynamics\shapes
+
+
+ include\bounce\dynamics\shapes
+
+
+ include\bounce\dynamics\shapes
+
+
+ include\bounce\dynamics
+
+
+ include\bounce\dynamics
+
+
+ include\bounce\dynamics
+
+
+ include\bounce\quickhull
+
+
+
+
+ src\bounce\collision
+
+
+ src\bounce\collision
+
+
+ src\bounce\collision\gjk
+
+
+ src\bounce\collision\gjk
+
+
+ src\bounce\collision\gjk
+
+
+ src\bounce\collision\sat
+
+
+ src\bounce\collision\sat
+
+
+ src\bounce\collision\sat
+
+
+ src\bounce\collision\shapes
+
+
+ src\bounce\collision\trees
+
+
+ src\bounce\collision\trees
+
+
+ src\bounce\common\math
+
+
+ src\bounce\common\memory
+
+
+ src\bounce\common\memory
+
+
+ src\bounce\common
+
+
+ src\bounce\dynamics
+
+
+ src\bounce\dynamics
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts\collide
+
+
+ src\bounce\dynamics\contacts
+
+
+ src\bounce\dynamics\contacts
+
+
+ src\bounce\dynamics\contacts
+
+
+ src\bounce\dynamics\contacts
+
+
+ src\bounce\dynamics\contacts
+
+
+ src\bounce\dynamics\contacts
+
+
+ src\bounce\dynamics
+
+
+ src\bounce\dynamics
+
+
+ src\bounce\dynamics
+
+
+ src\bounce\dynamics\joints
+
+
+ src\bounce\dynamics\joints
+
+
+ src\bounce\dynamics\joints
+
+
+ src\bounce\dynamics\joints
+
+
+ src\bounce\dynamics\joints
+
+
+ src\bounce\dynamics\joints
+
+
+ src\bounce\dynamics\joints
+
+
+ src\bounce\dynamics\shapes
+
+
+ src\bounce\dynamics\shapes
+
+
+ src\bounce\dynamics\shapes
+
+
+ src\bounce\dynamics\shapes
+
+
+ src\bounce\dynamics\shapes
+
+
+ src\bounce\dynamics
+
+
+ src\bounce\quickhull
+
+
+
+
+ include\bounce\collision\shapes
+
+
+ include\bounce\quickhull
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/glad.vcxproj b/build/vs2015/glad.vcxproj
new file mode 100644
index 0000000..8c0a384
--- /dev/null
+++ b/build/vs2015/glad.vcxproj
@@ -0,0 +1,180 @@
+
+
+
+
+ debug
+ Win32
+
+
+ debug
+ x64
+
+
+ release
+ Win32
+
+
+ release
+ x64
+
+
+
+ {DD62977C-C999-980D-7286-7E105E9C140F}
+ true
+ Win32Proj
+ glad
+
+
+
+ StaticLibrary
+ true
+ Unicode
+ v140
+
+
+ StaticLibrary
+ true
+ Unicode
+ v140
+
+
+ StaticLibrary
+ false
+ Unicode
+ v140
+
+
+ StaticLibrary
+ false
+ Unicode
+ v140
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ bin\x32\debug\glad\
+ obj\x32\debug\glad\
+ glad
+ .lib
+
+
+ bin\x64\debug\glad\
+ obj\x64\debug\glad\
+ glad
+ .lib
+
+
+ bin\x32\release\glad\
+ obj\x32\release\glad\
+ glad
+ .lib
+
+
+ bin\x64\release\glad\
+ obj\x64\release\glad\
+ glad
+ .lib
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;%(AdditionalIncludeDirectories)
+ EditAndContinue
+ Disabled
+ false
+ Fast
+ CompileAsC
+
+
+ Windows
+ true
+
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;%(AdditionalIncludeDirectories)
+ ProgramDatabase
+ Disabled
+ false
+ Fast
+ CompileAsC
+
+
+ Windows
+ true
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ CompileAsC
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ CompileAsC
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/glad.vcxproj.filters b/build/vs2015/glad.vcxproj.filters
new file mode 100644
index 0000000..3f4c0a6
--- /dev/null
+++ b/build/vs2015/glad.vcxproj.filters
@@ -0,0 +1,24 @@
+
+
+
+
+ {C196CD9C-2D76-4C38-368E-D70EA2ECB299}
+
+
+ {89565304-F535-D29F-FE4D-5D766AAC3801}
+
+
+
+
+ Headers
+
+
+ Headers
+
+
+
+
+ Sources
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/glfw.vcxproj b/build/vs2015/glfw.vcxproj
new file mode 100644
index 0000000..6f99bae
--- /dev/null
+++ b/build/vs2015/glfw.vcxproj
@@ -0,0 +1,198 @@
+
+
+
+
+ debug
+ Win32
+
+
+ debug
+ x64
+
+
+ release
+ Win32
+
+
+ release
+ x64
+
+
+
+ {9563977C-819A-980D-2A87-7E10169D140F}
+ true
+ Win32Proj
+ glfw
+
+
+
+ StaticLibrary
+ true
+ Unicode
+ v140
+
+
+ StaticLibrary
+ true
+ Unicode
+ v140
+
+
+ StaticLibrary
+ false
+ Unicode
+ v140
+
+
+ StaticLibrary
+ false
+ Unicode
+ v140
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ bin\x32\debug\glfw\
+ obj\x32\debug\glfw\
+ glfw
+ .lib
+
+
+ bin\x64\debug\glfw\
+ obj\x64\debug\glfw\
+ glfw
+ .lib
+
+
+ bin\x32\release\glfw\
+ obj\x32\release\glfw\
+ glfw
+ .lib
+
+
+ bin\x64\release\glfw\
+ obj\x64\release\glfw\
+ glfw
+ .lib
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;_GLFW_USE_CONFIG_H;%(PreprocessorDefinitions)
+ ..\..\external\glfw;%(AdditionalIncludeDirectories)
+ EditAndContinue
+ Disabled
+ false
+ Fast
+ CompileAsC
+
+
+ Windows
+ true
+
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;_GLFW_USE_CONFIG_H;%(PreprocessorDefinitions)
+ ..\..\external\glfw;%(AdditionalIncludeDirectories)
+ ProgramDatabase
+ Disabled
+ false
+ Fast
+ CompileAsC
+
+
+ Windows
+ true
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;_GLFW_USE_CONFIG_H;%(PreprocessorDefinitions)
+ ..\..\external\glfw;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ CompileAsC
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;_GLFW_USE_CONFIG_H;%(PreprocessorDefinitions)
+ ..\..\external\glfw;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ CompileAsC
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/glfw.vcxproj.filters b/build/vs2015/glfw.vcxproj.filters
new file mode 100644
index 0000000..0f71ea6
--- /dev/null
+++ b/build/vs2015/glfw.vcxproj.filters
@@ -0,0 +1,78 @@
+
+
+
+
+ {C196CD9C-2D76-4C38-368E-D70EA2ECB299}
+
+
+ {89565304-F535-D29F-FE4D-5D766AAC3801}
+
+
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/imgui.vcxproj b/build/vs2015/imgui.vcxproj
new file mode 100644
index 0000000..19bdb56
--- /dev/null
+++ b/build/vs2015/imgui.vcxproj
@@ -0,0 +1,187 @@
+
+
+
+
+ debug
+ Win32
+
+
+ debug
+ x64
+
+
+ release
+ Win32
+
+
+ release
+ x64
+
+
+
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}
+ true
+ Win32Proj
+ imgui
+
+
+
+ StaticLibrary
+ true
+ Unicode
+ v140
+
+
+ StaticLibrary
+ true
+ Unicode
+ v140
+
+
+ StaticLibrary
+ false
+ Unicode
+ v140
+
+
+ StaticLibrary
+ false
+ Unicode
+ v140
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ bin\x32\debug\imgui\
+ obj\x32\debug\imgui\
+ imgui
+ .lib
+
+
+ bin\x64\debug\imgui\
+ obj\x64\debug\imgui\
+ imgui
+ .lib
+
+
+ bin\x32\release\imgui\
+ obj\x32\release\imgui\
+ imgui
+ .lib
+
+
+ bin\x64\release\imgui\
+ obj\x64\release\imgui\
+ imgui
+ .lib
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;%(AdditionalIncludeDirectories)
+ EditAndContinue
+ Disabled
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Windows
+ true
+
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;%(AdditionalIncludeDirectories)
+ ProgramDatabase
+ Disabled
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Windows
+ true
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Windows
+ false
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/imgui.vcxproj.filters b/build/vs2015/imgui.vcxproj.filters
new file mode 100644
index 0000000..d8aa08e
--- /dev/null
+++ b/build/vs2015/imgui.vcxproj.filters
@@ -0,0 +1,45 @@
+
+
+
+
+ {C196CD9C-2D76-4C38-368E-D70EA2ECB299}
+
+
+ {89565304-F535-D29F-FE4D-5D766AAC3801}
+
+
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/testbed.vcxproj b/build/vs2015/testbed.vcxproj
new file mode 100644
index 0000000..e4de6d1
--- /dev/null
+++ b/build/vs2015/testbed.vcxproj
@@ -0,0 +1,239 @@
+
+
+
+
+ debug
+ Win32
+
+
+ debug
+ x64
+
+
+ release
+ Win32
+
+
+ release
+ x64
+
+
+
+ {90781ED9-FC57-9D74-0570-284B71CE03D6}
+ true
+ Win32Proj
+ testbed
+
+
+
+ Application
+ true
+ Unicode
+ v140
+
+
+ Application
+ true
+ Unicode
+ v140
+
+
+ Application
+ false
+ Unicode
+ v140
+
+
+ Application
+ false
+ Unicode
+ v140
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ bin\x32\debug\testbed\
+ obj\x32\debug\testbed\
+ testbed
+ .exe
+
+
+ true
+ bin\x64\debug\testbed\
+ obj\x64\debug\testbed\
+ testbed
+ .exe
+
+
+ false
+ bin\x32\release\testbed\
+ obj\x32\release\testbed\
+ testbed
+ .exe
+
+
+ false
+ bin\x64\release\testbed\
+ obj\x64\release\testbed\
+ testbed
+ .exe
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;..\..\include;%(AdditionalIncludeDirectories)
+ EditAndContinue
+ Disabled
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Console
+ true
+ glu32.lib;opengl32.lib;winmm.lib;%(AdditionalDependencies)
+ mainCRTStartup
+
+
+
+
+ NotUsing
+ Level3
+ _DEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;..\..\include;%(AdditionalIncludeDirectories)
+ ProgramDatabase
+ Disabled
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Console
+ true
+ glu32.lib;opengl32.lib;winmm.lib;%(AdditionalDependencies)
+ mainCRTStartup
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;..\..\include;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Console
+ false
+ true
+ true
+ glu32.lib;opengl32.lib;winmm.lib;%(AdditionalDependencies)
+ mainCRTStartup
+
+
+
+
+ NotUsing
+ Level3
+ NDEBUG;_CRT_SECURE_NO_WARNINGS;_WIN32;WIN32;_WINDOWS;%(PreprocessorDefinitions)
+ ..\..\external;..\..\include;%(AdditionalIncludeDirectories)
+ Full
+ true
+ true
+ false
+ true
+ false
+ Fast
+ -std=c++11 %(AdditionalOptions)
+
+
+ Console
+ false
+ true
+ true
+ glu32.lib;opengl32.lib;winmm.lib;%(AdditionalDependencies)
+ mainCRTStartup
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {9563977C-819A-980D-2A87-7E10169D140F}
+
+
+ {DD62977C-C999-980D-7286-7E105E9C140F}
+
+
+ {0098A80F-6CAC-D0C0-352E-7420A101CDF1}
+
+
+ {C13B93F4-ADDD-BDCA-9698-D11E82D9441B}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build/vs2015/testbed.vcxproj.filters b/build/vs2015/testbed.vcxproj.filters
new file mode 100644
index 0000000..2edc665
--- /dev/null
+++ b/build/vs2015/testbed.vcxproj.filters
@@ -0,0 +1,123 @@
+
+
+
+
+ {C196CD9C-2D76-4C38-368E-D70EA2ECB299}
+
+
+ {89565304-F535-D29F-FE4D-5D766AAC3801}
+
+
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+ Headers
+
+
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+ Sources
+
+
+
\ No newline at end of file
diff --git a/premake5 b/premake5
deleted file mode 100644
index d57048a..0000000
Binary files a/premake5 and /dev/null differ
diff --git a/premake5.exe b/premake5.exe
new file mode 100644
index 0000000..a4bd472
Binary files /dev/null and b/premake5.exe differ