diff --git a/Blarg.GameFramework/Blarg.GameFramework.csproj b/Blarg.GameFramework/Blarg.GameFramework.csproj
index 174b6aa..44d4302 100644
--- a/Blarg.GameFramework/Blarg.GameFramework.csproj
+++ b/Blarg.GameFramework/Blarg.GameFramework.csproj
@@ -213,6 +213,10 @@
+
+
+
+
@@ -241,6 +245,7 @@
+
diff --git a/Blarg.GameFramework/TileMap/Meshes/Json/JsonCubeTextures.cs b/Blarg.GameFramework/TileMap/Meshes/Json/JsonCubeTextures.cs
new file mode 100644
index 0000000..a072a55
--- /dev/null
+++ b/Blarg.GameFramework/TileMap/Meshes/Json/JsonCubeTextures.cs
@@ -0,0 +1,15 @@
+using System;
+
+namespace Blarg.GameFramework.TileMap.Meshes.Json
+{
+ public class JsonCubeTextures
+ {
+ public int Top;
+ public int Bottom;
+ public int Front;
+ public int Back;
+ public int Left;
+ public int Right;
+ }
+}
+
diff --git a/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileDefinition.cs b/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileDefinition.cs
new file mode 100644
index 0000000..1f15c3a
--- /dev/null
+++ b/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileDefinition.cs
@@ -0,0 +1,27 @@
+using System;
+using System.Collections.Generic;
+using Blarg.GameFramework.Graphics;
+
+namespace Blarg.GameFramework.TileMap.Meshes.Json
+{
+ public class JsonTileDefinition
+ {
+ public bool Cube;
+ public JsonCubeTextures Textures;
+ public int Texture;
+ public List Faces;
+ public string Model;
+ public List JsonTileSubModels;
+ public string CollisionModel;
+ public string CollisionShape;
+ public List OpaqueSides;
+ public int Light;
+ public bool Alpha;
+ public float Translucency;
+ public Color Color;
+ public Vector3 ScaleToSize;
+ public Vector3 PositionOffset;
+ public Vector3 CollisionPositionOffset;
+ }
+}
+
diff --git a/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileMeshCollection.cs b/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileMeshCollection.cs
new file mode 100644
index 0000000..18dbf8b
--- /dev/null
+++ b/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileMeshCollection.cs
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+
+namespace Blarg.GameFramework.TileMap.Meshes.Json
+{
+ public class JsonTileMeshCollection
+ {
+ public List Tiles;
+ }
+}
+
diff --git a/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileSubModel.cs b/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileSubModel.cs
new file mode 100644
index 0000000..b63b0ad
--- /dev/null
+++ b/Blarg.GameFramework/TileMap/Meshes/Json/JsonTileSubModel.cs
@@ -0,0 +1,14 @@
+using System;
+using Blarg.GameFramework.Graphics;
+
+namespace Blarg.GameFramework.TileMap.Meshes.Json
+{
+ public class JsonTileSubModel
+ {
+ public string Submodel;
+ public Color Color;
+ public Vector3 ScaleToSize;
+ public Vector3 PositionOffset;
+ }
+}
+