diff --git a/Bindings/Raylib.projitems b/Bindings/Raylib.projitems
deleted file mode 100644
index c126779..0000000
--- a/Bindings/Raylib.projitems
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
- $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
- true
- f660ff67-d70e-4ae0-9080-d922243e9b6e
-
-
- Raylib
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Bindings/Raylib.shproj b/Bindings/Raylib.shproj
deleted file mode 100644
index 2be244b..0000000
--- a/Bindings/Raylib.shproj
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- f660ff67-d70e-4ae0-9080-d922243e9b6e
- 14.0
-
-
-
-
-
-
-
-
diff --git a/Examples/Examples.projitems b/Examples/Examples.projitems
deleted file mode 100644
index 4fe020d..0000000
--- a/Examples/Examples.projitems
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
- $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
- true
- 36e54e2a-5899-4d4d-9d78-120db1b4c7b2
-
-
- Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Examples/Examples.shproj b/Examples/Examples.shproj
deleted file mode 100644
index 5949e1d..0000000
--- a/Examples/Examples.shproj
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- 36e54e2a-5899-4d4d-9d78-120db1b4c7b2
- 14.0
-
-
-
-
-
-
-
-
diff --git a/Tests/Program.cs b/Tests/Program.cs
new file mode 100644
index 0000000..a0c89af
--- /dev/null
+++ b/Tests/Program.cs
@@ -0,0 +1,48 @@
+using Raylib;
+using static Raylib.Raylib;
+
+namespace Tests
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ // Initialization
+ //--------------------------------------------------------------------------------------
+ const int screenWidth = 800;
+ const int screenHeight = 450;
+
+ InitWindow(screenWidth, screenHeight, "raylib [core] example - basic window");
+
+ SetTargetFPS(60); // Set our game to run at 60 frames-per-second
+ //--------------------------------------------------------------------------------------
+
+ // Main game loop
+ while (!WindowShouldClose()) // Detect window close button or ESC key
+ {
+ // Update
+ //----------------------------------------------------------------------------------
+ // TODO: Update your variables here
+ //----------------------------------------------------------------------------------
+
+ // Draw
+ //----------------------------------------------------------------------------------
+ BeginDrawing();
+
+ ClearBackground(Color.RAYWHITE);
+
+ DrawText("Congrats! You created your first window!", 190, 200, 20, Color.LIGHTGRAY);
+
+ EndDrawing();
+ //----------------------------------------------------------------------------------
+ }
+
+ // De-Initialization
+ //--------------------------------------------------------------------------------------
+ CloseWindow(); // Close window and OpenGL context
+ //--------------------------------------------------------------------------------------
+
+ return;
+ }
+ }
+}
diff --git a/Tests/Test.NetCore/Program.cs b/Tests/Test.NetCore/Program.cs
deleted file mode 100644
index 3e77a51..0000000
--- a/Tests/Test.NetCore/Program.cs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-namespace Test.NetCore
-{
- class Program
- {
- static void Main(string[] args)
- {
- Examples.Test.Run(args);
- }
- }
-}
diff --git a/Tests/Test.NetCore/Test.NetCore.csproj b/Tests/Test.NetCore/Test.NetCore.csproj
deleted file mode 100644
index bc2a387..0000000
--- a/Tests/Test.NetCore/Test.NetCore.csproj
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
- Exe
- netcoreapp2.1
- raylib-cs.ico
- x64
-
-
-
- true
-
-
- true
- false
-
-
- false
- true
- true
- DEBUG;TRACE
-
-
- true
- false
-
-
-
-
-
-
-
-
-
-
diff --git a/Tests/Test.NetCoreRT/Program.cs b/Tests/Test.NetCoreRT/Program.cs
deleted file mode 100644
index 5a07db4..0000000
--- a/Tests/Test.NetCoreRT/Program.cs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-namespace Test.NetCoreRT
-{
- class Program
- {
- static void Main(string[] args)
- {
- Examples.Test.Run(args);
- }
- }
-}
diff --git a/Tests/Test.NetCoreRT/Test.NetCoreRT.csproj b/Tests/Test.NetCoreRT/Test.NetCoreRT.csproj
deleted file mode 100644
index d941b37..0000000
--- a/Tests/Test.NetCoreRT/Test.NetCoreRT.csproj
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
- Exe
- netcoreapp2.1
- raylib-cs.ico
- AnyCPU;x64;x86
- core_basic_window
-
-
- true
-
-
- true
- false
-
-
- true
-
-
- true
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Tests/Test.NetCoreRT/raylib-cs.ico b/Tests/Test.NetCoreRT/raylib-cs.ico
deleted file mode 100644
index 296d5dd..0000000
Binary files a/Tests/Test.NetCoreRT/raylib-cs.ico and /dev/null differ
diff --git a/Tests/Test.NetFX/App.config b/Tests/Test.NetFX/App.config
deleted file mode 100644
index 00bfd11..0000000
--- a/Tests/Test.NetFX/App.config
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Tests/Test.NetFX/Program.cs b/Tests/Test.NetFX/Program.cs
deleted file mode 100644
index 6835a79..0000000
--- a/Tests/Test.NetFX/Program.cs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-namespace Test.NetFX
-{
- class Program
- {
- static void Main(string[] args)
- {
- Examples.Test.Run(args);
- }
- }
-}
diff --git a/Tests/Test.NetFX/Properties/AssemblyInfo.cs b/Tests/Test.NetFX/Properties/AssemblyInfo.cs
deleted file mode 100644
index 825cc70..0000000
--- a/Tests/Test.NetFX/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-[assembly: AssemblyTitle("Test.NetFX")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Test.NetFX")]
-[assembly: AssemblyCopyright("Copyright © 2018")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
-// COM, set the ComVisible attribute to true on that type.
-[assembly: ComVisible(false)]
-
-// The following GUID is for the ID of the typelib if this project is exposed to COM
-[assembly: Guid("55d7bb37-3dc7-4a33-b21e-4f549ec988b5")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-//
-// You can specify all the values or you can default the Build and Revision Numbers
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/Tests/Test.NetFX/RayForm.cs b/Tests/Test.NetFX/RayForm.cs
deleted file mode 100644
index 120e729..0000000
--- a/Tests/Test.NetFX/RayForm.cs
+++ /dev/null
@@ -1,99 +0,0 @@
-using System;
-using System.Drawing;
-using System.Runtime.InteropServices;
-using System.Windows.Forms;
-using Raylib;
-using rl = Raylib.Raylib;
-using Color = Raylib.Color;
-
-namespace Test.NetFX
-{
- public partial class RayForms : Form
- {
- private Panel gamePanel;
- private bool windowAttached = false;
-
- #region WinAPI Entry Points
-
- [DllImport("user32.dll")]
- private static extern IntPtr SetWindowPos(IntPtr handle, IntPtr handleAfter, int x, int y, int cx, int cy, uint flags);
- [DllImport("user32.dll")]
- private static extern IntPtr SetParent(IntPtr child, IntPtr newParent);
- [DllImport("user32.dll")]
- private static extern IntPtr ShowWindow(IntPtr handle, int command);
-
- #endregion
-
- public RayForms()
- {
- Size = new Size(1024, 700);
- Text = "Rayforms";
-
- gamePanel = new Panel();
- gamePanel.Size = new Size(800, 500);
- gamePanel.Location = new Point(50, 50);
-
- Button button = new Button();
- button.Text = "Attach window";
- button.Size = new Size(150, 20);
- button.Location = new Point(
- (Size.Width / 2) - (button.Size.Width / 2),
- gamePanel.Location.Y + gamePanel.Size.Height + 10
- );
- button.Click += new EventHandler(ClickedButton);
- Controls.Add(button);
- Controls.Add(gamePanel);
- }
-
- private void ClickedButton(object sender, EventArgs e)
- {
- if (!windowAttached)
- {
- // new Thread(Test).Start();
- Test();
- }
- }
-
- private void Test()
- {
- rl.SetConfigFlags(ConfigFlag.FLAG_WINDOW_UNDECORATED);
- rl.InitWindow(800, 480, "Rayforms test");
- rl.SetTargetFPS(60);
-
- IntPtr winHandle = rl.GetWindowHandle();
- Invoke(new Action(() =>
- {
- SetWindowPos(winHandle, Handle, 0, 0, 0, 0, 0x0401 /*NOSIZE | SHOWWINDOW */);
- SetParent(winHandle, gamePanel.Handle);
- ShowWindow(winHandle, 1);
- windowAttached = true;
- }));
-
- while (!rl.WindowShouldClose()) // Detect window close button or ESC key
- {
- // Update
- //----------------------------------------------------------------------------------
- // TODO: Update your variables here
- //----------------------------------------------------------------------------------
-
- // Draw
- //----------------------------------------------------------------------------------
- rl.BeginDrawing();
- rl.ClearBackground(Color.RAYWHITE);
-
- rl.DrawText("Congrats! You created your first window!", 190, 200, 20, Color.MAROON);
- rl.DrawText(rl.GetFrameTime().ToString(), 100, 10, 15, Color.MAROON);
- rl.DrawFPS(10, 10);
-
- rl.EndDrawing();
- //----------------------------------------------------------------------------------
- }
- rl.CloseWindow();
- }
-
- public static void Run()
- {
- Application.Run(new RayForms());
- }
- }
-}
diff --git a/Tests/Test.NetFX/Test.NetFX.csproj b/Tests/Test.NetFX/Test.NetFX.csproj
deleted file mode 100644
index 2cf6d51..0000000
--- a/Tests/Test.NetFX/Test.NetFX.csproj
+++ /dev/null
@@ -1,126 +0,0 @@
-
-
-
-
- Debug
- AnyCPU
- {55D7BB37-3DC7-4A33-B21E-4F549EC988B5}
- Exe
- Test.NetFX
- Test.NetFX
- v4.6.1
- 512
- true
- true
-
-
- AnyCPU
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
- true
-
-
- AnyCPU
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
-
-
- raylib-cs.ico
-
-
- true
- bin\x64\Debug\
- DEBUG;TRACE
- full
- x64
- prompt
- MinimumRecommendedRules.ruleset
- true
- true
- false
-
-
- bin\x64\Release\
- TRACE
- true
- pdbonly
- x64
- prompt
- MinimumRecommendedRules.ruleset
- true
- true
-
-
- true
- bin\x86\Debug\
- DEBUG;TRACE
- full
- x86
- prompt
- MinimumRecommendedRules.ruleset
- true
- true
-
-
- bin\x86\Release\
- TRACE
- true
- pdbonly
- x86
- prompt
- MinimumRecommendedRules.ruleset
- true
- true
-
-
- Test.NetFX.Program
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Form
-
-
-
-
-
-
-
- 4.5.1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Tests/Test.NetFX/raylib-cs.ico b/Tests/Test.NetFX/raylib-cs.ico
deleted file mode 100644
index 296d5dd..0000000
Binary files a/Tests/Test.NetFX/raylib-cs.ico and /dev/null differ
diff --git a/Tests/Tests.MultiTarget.csproj b/Tests/Tests.MultiTarget.csproj
new file mode 100644
index 0000000..9988494
--- /dev/null
+++ b/Tests/Tests.MultiTarget.csproj
@@ -0,0 +1,28 @@
+
+
+ net40;net45;net46;net461;net462;netcoreapp2.1
+
+
+
+ Exe
+ netcoreapp2.1
+ raylib-cs.ico
+ AnyCPU;x64;x86
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Tests/Test.NetCoreRT/nuget.config b/Tests/nuget.config
similarity index 100%
rename from Tests/Test.NetCoreRT/nuget.config
rename to Tests/nuget.config
diff --git a/Tests/Test.NetCore/raylib-cs.ico b/Tests/raylib-cs.ico
similarity index 100%
rename from Tests/Test.NetCore/raylib-cs.ico
rename to Tests/raylib-cs.ico