Bläddra i källkod

Added HingeJoint.

Mark Sibly 7 år sedan
förälder
incheckning
7005dc2e1b

+ 2 - 0
VERSIONS.TXT

@@ -1,6 +1,8 @@
 
 ***** Monkey-v2018.05 Mx2cc-v1.1.12 Ted2go-2.10 *****
 
+Added mojo3d HingeJoint. See tests/hingechain.monkey2
+
 Renamed mojo3d Constraint->Joint and PointToPointConstraint->BallSocketJoint.
 
 Added mojo3d support for 'spherical' sky textures. Also added TextureFlags.Envmap which must be used for envmap textures. Previously, cubemap+mipmap implied envmap but this is no longer true.

+ 4429 - 0
hingechain-scene.mojo3d

@@ -0,0 +1,4429 @@
+{
+	"assetsDir":"modules/mojo3d/tests/assets/",
+	"instances":[{
+		"ctor":{
+			"args":[true],
+			"decl":"mojo3d.Scene.New",
+			"type":"Void(Bool)"
+		},
+		"id":0,
+		"state":{
+			"AmbientLight":[0.05000000074505806,0.15000000596046448,0.25,0.25],
+			"ClearColor":[0.20000000298023224,0.60000002384185791,1,1],
+			"FogColor":[0.20000000298023224,0.60000002384185791,1,1],
+			"FogFar":200
+		},
+		"type":"mojo3d.Scene"
+	},{
+		"ctor":{
+			"args":[null],
+			"decl":"mojo3d.Camera.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":1,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,2.5,-5]
+		},
+		"type":"mojo3d.Camera"
+	},{
+		"ctor":{
+			"args":["@1"],
+			"decl":"mojo3d.FlyBehaviour.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":2,
+		"type":"mojo3d.FlyBehaviour"
+	},{
+		"ctor":{
+			"args":[null],
+			"decl":"mojo3d.Light.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":3,
+		"state":{
+			"CastsShadow":true,
+			"LocalMatrix":[0.70710676908493042,0,0.70710676908493042,-0.49999997019767761,0.70710676908493042,0.49999997019767761,-0.49999997019767761,-0.70710676908493042,0.49999997019767761,0,0,0]
+		},
+		"type":"mojo3d.Light"
+	},{
+		"ctor":{
+			"args":[[0.69999998807907104,1,0,1],1,1],
+			"decl":"mojo3d.PbrMaterial.New",
+			"type":"Void(std.graphics.Color,Float,Float)"
+		},
+		"id":4,
+		"type":"mojo3d.PbrMaterial"
+	},{
+		"ctor":{
+			"args":[[-100,-1,-100,100,0,100],1,1,1],
+			"decl":"mojo3d.Mesh.CreateBox",
+			"type":"mojo3d.Mesh(std.geom.Box<monkey.types.Float>,Int,Int,Int)"
+		},
+		"id":5,
+		"type":"mojo3d.Mesh"
+	},{
+		"ctor":{
+			"args":["@5","@4",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Mesh,mojo3d.Material,mojo3d.Entity)"
+		},
+		"id":6,
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@6"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":7,
+		"state":{
+			"Box":[-100,-1,-100,100,0,100]
+		},
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@6"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":8,
+		"state":{
+			"Mass":0
+		},
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":[[1,0,0,1],0.05000000074505806,0.20000000298023224],
+			"decl":"mojo3d.PbrMaterial.New",
+			"type":"Void(std.graphics.Color,Float,Float)"
+		},
+		"id":9,
+		"type":"mojo3d.PbrMaterial"
+	},{
+		"ctor":{
+			"args":[[-0.20000000298023224,-0.44999998807907104,-0.0099999997764825821,0.20000000298023224,0.44999998807907104,0.0099999997764825821],1,1,1],
+			"decl":"mojo3d.Mesh.CreateBox",
+			"type":"mojo3d.Mesh(std.geom.Box<monkey.types.Float>,Int,Int,Int)"
+		},
+		"id":10,
+		"type":"mojo3d.Mesh"
+	},{
+		"ctor":{
+			"args":["@10","@9",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Mesh,mojo3d.Material,mojo3d.Entity)"
+		},
+		"id":11,
+		"state":{
+			"Visible":false
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@11"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":12,
+		"state":{
+			"Box":[-0.20000000298023224,-0.44999998807907104,-0.0099999997764825821,0.20000000298023224,0.44999998807907104,0.0099999997764825821]
+		},
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@11"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":13,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":14,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,10,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@14","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":15,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@14","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":16,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":17,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,11,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@17","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":18,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@17","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":19,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@17"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":20,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@16",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":21,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,12,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@21","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":22,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@21","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":23,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@21"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":24,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@19",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":25,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,13,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@25","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":26,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@25","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":27,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@25"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":28,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@23",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":29,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,14,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@29","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":30,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@29","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":31,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@29"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":32,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@27",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":33,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,15,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@33","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":34,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@33","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":35,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@33"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":36,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@31",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":37,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,16,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@37","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":38,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@37","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":39,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@37"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":40,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@35",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":41,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,17,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@41","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":42,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@41","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":43,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@41"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":44,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@39",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":45,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,18,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@45","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":46,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@45","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":47,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@45"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":48,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@43",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":49,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,19,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@49","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":50,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@49","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":51,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@49"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":52,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@47",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":53,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,20,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@53","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":54,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@53","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":55,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@53"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":56,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@51",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":57,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,21,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@57","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":58,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@57","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":59,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@57"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":60,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@55",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":61,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,22,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@61","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":62,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@61","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":63,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@61"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":64,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@59",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":65,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,23,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@65","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":66,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@65","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":67,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@65"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":68,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@63",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":69,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,24,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@69","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":70,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@69","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":71,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@69"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":72,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@67",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":73,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,25,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@73","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":74,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@73","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":75,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@73"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":76,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@71",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":77,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,26,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@77","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":78,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@77","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":79,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@77"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":80,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@75",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":81,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,27,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@81","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":82,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@81","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":83,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@81"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":84,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@79",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":85,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,28,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@85","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":86,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@85","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":87,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@85"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":88,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@83",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":89,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,29,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@89","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":90,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@89","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":91,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@89"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":92,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@87",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":93,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,30,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@93","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":94,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@93","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":95,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@93"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":96,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@91",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":97,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,31,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@97","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":98,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@97","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":99,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@97"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":100,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@95",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":101,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,32,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@101","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":102,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@101","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":103,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@101"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":104,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@99",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":105,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,33,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@105","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":106,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@105","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":107,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@105"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":108,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@103",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":109,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,34,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@109","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":110,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@109","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":111,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@109"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":112,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@107",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":113,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,35,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@113","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":114,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@113","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":115,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@113"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":116,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@111",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":117,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,36,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@117","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":118,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@117","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":119,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@117"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":120,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@115",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":121,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,37,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@121","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":122,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@121","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":123,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@121"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":124,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@119",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":125,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,38,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@125","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":126,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@125","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":127,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@125"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":128,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@123",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":129,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,39,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@129","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":130,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@129","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":131,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@129"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":132,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@127",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":133,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,40,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@133","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":134,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@133","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":135,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@133"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":136,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@131",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":137,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,41,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@137","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":138,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@137","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":139,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@137"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":140,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@135",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":141,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,42,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@141","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":142,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@141","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":143,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@141"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":144,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@139",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":145,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,43,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@145","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":146,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@145","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":147,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@145"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":148,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@143",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":149,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,44,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@149","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":150,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@149","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":151,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@149"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":152,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@147",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":153,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,45,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@153","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":154,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@153","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":155,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@153"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":156,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@151",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":157,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,46,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@157","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":158,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@157","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":159,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@157"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":160,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@155",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":161,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,47,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@161","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":162,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@161","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":163,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@161"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":164,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@159",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":165,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,48,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@165","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":166,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@165","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":167,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@165"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":168,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@163",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":169,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,49,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@169","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":170,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@169","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":171,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@169"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":172,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@167",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":173,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,50,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@173","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":174,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@173","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":175,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@173"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":176,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@171",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":177,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,51,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@177","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":178,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@177","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":179,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@177"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":180,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@175",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":181,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,52,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@181","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":182,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@181","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":183,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@181"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":184,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@179",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":185,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,53,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@185","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":186,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@185","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":187,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@185"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":188,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@183",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":189,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,54,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@189","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":190,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@189","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":191,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@189"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":192,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@187",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":193,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,55,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@193","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":194,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@193","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":195,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@193"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":196,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@191",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":197,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,56,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@197","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":198,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@197","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":199,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@197"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":200,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@195",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":201,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,57,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@201","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":202,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@201","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":203,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@201"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":204,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@199",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":205,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,58,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@205","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":206,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@205","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":207,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@205"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":208,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@203",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":209,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,59,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@209","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":210,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@209","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":211,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@209"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":212,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@207",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":213,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,60,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@213","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":214,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@213","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":215,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@213"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":216,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@211",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":217,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,61,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@217","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":218,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@217","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":219,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@217"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":220,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@215",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":221,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,62,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@221","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":222,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@221","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":223,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@221"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":224,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@219",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":225,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,63,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@225","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":226,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@225","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":227,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@225"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":228,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@223",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":229,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,64,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@229","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":230,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@229","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":231,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@229"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":232,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@227",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":233,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,65,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@233","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":234,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@233","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":235,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@233"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":236,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@231",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":237,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,66,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@237","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":238,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@237","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":239,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@237"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":240,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@235",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":241,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,67,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@241","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":242,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@241","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":243,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@241"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":244,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@239",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":245,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,68,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@245","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":246,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@245","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":247,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@245"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":248,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@243",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":249,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,69,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@249","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":250,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@249","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":251,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@249"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":252,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@247",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":253,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,70,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@253","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":254,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@253","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":255,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@253"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":256,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@251",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":257,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,71,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@257","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":258,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@257","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":259,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@257"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":260,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@255",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":261,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,72,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@261","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":262,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@261","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":263,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@261"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":264,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@259",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":265,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,73,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@265","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":266,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@265","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":267,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@265"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":268,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@263",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":269,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,74,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@269","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":270,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@269","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":271,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@269"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":272,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@267",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":273,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,75,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@273","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":274,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@273","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":275,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@273"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":276,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@271",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":277,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,76,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@277","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":278,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@277","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":279,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@277"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":280,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@275",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":281,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,77,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@281","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":282,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@281","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":283,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@281"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":284,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@279",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":285,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,78,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@285","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":286,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@285","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":287,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@285"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":288,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@283",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":289,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,79,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@289","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":290,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@289","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":291,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@289"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":292,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@287",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":293,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,80,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@293","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":294,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@293","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":295,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@293"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":296,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@291",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":297,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,81,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@297","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":298,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@297","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":299,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@297"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":300,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@295",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":301,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,82,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@301","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":302,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@301","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":303,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@301"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":304,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@299",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":305,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,83,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@305","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":306,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@305","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":307,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@305"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":308,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@303",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":309,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,84,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@309","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":310,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@309","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":311,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@309"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":312,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@307",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":313,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,85,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@313","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":314,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@313","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":315,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@313"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":316,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@311",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":317,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,86,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@317","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":318,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@317","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":319,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@317"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":320,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@315",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":321,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,87,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@321","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":322,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@321","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":323,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@321"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":324,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@319",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":325,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,88,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@325","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":326,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@325","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":327,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@325"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":328,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@323",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":329,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,89,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@329","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":330,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@329","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":331,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@329"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":332,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@327",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":333,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,90,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@333","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":334,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@333","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":335,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@333"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":336,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@331",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":337,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,91,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@337","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":338,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@337","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":339,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@337"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":340,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@335",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":341,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,92,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@341","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":342,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@341","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":343,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@341"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":344,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@339",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":345,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,93,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@345","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":346,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@345","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":347,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@345"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":348,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@343",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":349,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,94,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@349","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":350,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@349","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":351,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@349"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":352,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@347",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":353,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,95,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@353","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":354,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@353","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":355,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@353"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":356,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@351",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":357,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,96,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@357","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":358,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@357","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":359,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@357"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":360,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@355",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":361,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,97,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@361","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":362,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@361","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":363,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@361"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":364,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@359",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":365,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,98,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@365","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":366,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@365","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":367,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@365"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":368,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@363",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":369,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,99,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@369","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":370,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@369","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":371,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@369"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":372,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@367",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":373,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,100,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@373","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":374,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@373","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":375,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@373"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":376,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@371",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":377,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,101,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@377","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":378,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@377","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":379,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@377"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":380,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@375",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":381,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,102,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@381","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":382,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@381","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":383,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@381"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":384,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@379",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":385,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,103,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@385","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":386,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@385","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":387,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@385"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":388,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@383",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":389,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,104,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@389","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":390,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@389","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":391,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@389"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":392,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@387",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":393,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,105,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@393","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":394,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@393","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":395,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@393"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":396,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@391",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":397,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,106,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@397","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":398,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@397","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":399,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@397"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":400,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@395",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":401,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,107,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@401","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":402,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@401","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":403,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@401"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":404,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@399",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":405,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,108,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@405","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":406,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@405","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":407,
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@405"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":408,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@403",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	},{
+		"ctor":{
+			"args":["@11",null],
+			"decl":"mojo3d.Model.New",
+			"type":"Void(mojo3d.Model,mojo3d.Entity)"
+		},
+		"id":409,
+		"state":{
+			"LocalMatrix":[1,0,0,0,1,0,0,0,1,0,109,0],
+			"Visible":true
+		},
+		"type":"mojo3d.Model"
+	},{
+		"ctor":{
+			"args":["@409","@12"],
+			"decl":"mojo3d.BoxCollider.New",
+			"type":"Void(mojo3d.Entity,mojo3d.BoxCollider)"
+		},
+		"id":410,
+		"type":"mojo3d.BoxCollider"
+	},{
+		"ctor":{
+			"args":["@409","@13"],
+			"decl":"mojo3d.RigidBody.New",
+			"type":"Void(mojo3d.Entity,mojo3d.RigidBody)"
+		},
+		"id":411,
+		"state":{
+			"Mass":0
+		},
+		"type":"mojo3d.RigidBody"
+	},{
+		"ctor":{
+			"args":["@409"],
+			"decl":"mojo3d.HingeJoint.New",
+			"type":"Void(mojo3d.Entity)"
+		},
+		"id":412,
+		"state":{
+			"Axis":[1,0,0],
+			"ConnectedAxis":[1,0,0],
+			"ConnectedBody":"@407",
+			"ConnectedPivot":[0,0.5,0],
+			"Pivot":[0,-0.5,0]
+		},
+		"type":"mojo3d.HingeJoint"
+	}]
+}

+ 16 - 0
modules/bullet/bullet.monkey2

@@ -610,4 +610,20 @@ Class btPoint2PointConstraint Extends btTypedConstraint="bbBullet::Point2PointCo
 		
 End
 
+Class btHingeConstraint Extends btTypedConstraint="bbBullet::HingeConstraint"
+
+ 	method New( rbA:btRigidBody,rtB:btRigidBody,pivotInA:btVector3,pivotInB:btVector3,axisInA:btVector3,axisInB:btVector3,useReferenceFrameA:Bool=False)
+ 
+ 	Method New( rbA:btRigidBody,pivotInA:btVector3,axisInA:btVector3,useReferenceFrameA:Bool=False)
+ 
+ 	Method New( rbA:btRigidBody,rbB:btRigidBody,rbAFrame:btTransform,rbBFrame:btTransform,useReferenceFrameA:Bool=False )
+ 	
+ 	Method New( rbA:btRigidBody,rbAFrame:btTransform,useReferenceFrameA:Bool=False )
+	 	
+	Method getFrameOffsetA:btTransform()
+		
+	Method getFrameOffsetB:btTransform()
+End
+
+
 

+ 15 - 0
modules/bullet/bullet_glue.h

@@ -18,6 +18,21 @@ namespace bbBullet{
 		Point2PointConstraint(btRigidBody* rbA,const btVector3& pivotInA):
 		btPoint2PointConstraint(*rbA,pivotInA){}
 	};
+
+	struct HingeConstraint : public btHingeConstraint{
+			
+		HingeConstraint(btRigidBody *rbA, btRigidBody *rbB, const btVector3 &pivotInA, const btVector3 &pivotInB, const btVector3 &axisInA, const btVector3 &axisInB, bool useReferenceFrameA=false):
+		btHingeConstraint(*rbA, *rbB, pivotInA, pivotInB, axisInA, axisInB, useReferenceFrameA){}
+ 
+		HingeConstraint(btRigidBody *rbA, const btVector3 &pivotInA, const btVector3 &axisInA, bool useReferenceFrameA=false):
+		btHingeConstraint(*rbA, pivotInA, axisInA, useReferenceFrameA){}
+ 
+		HingeConstraint(btRigidBody *rbA, btRigidBody *rbB, const btTransform &rbAFrame, const btTransform &rbBFrame, bool useReferenceFrameA=false):
+		btHingeConstraint(*rbA, *rbB, rbAFrame, rbBFrame, useReferenceFrameA){}
+ 
+		HingeConstraint(btRigidBody *rbA, const btTransform &rbAFrame, bool useReferenceFrameA=false):
+		btHingeConstraint(*rbA, rbAFrame, useReferenceFrameA){}
+	};
 	
 	struct MotionState : public btMotionState{
 		

+ 100 - 0
modules/mojo3d/scene/components/joint.monkey2

@@ -150,3 +150,103 @@ Class BallSocketJoint Extends Joint
 	End
 		
 End
+
+Class HingeJoint Extends Joint
+
+	Method New( entity:Entity )
+		
+		Super.New( entity )
+		
+		Axis=New Vec3f( 0,1,0 )
+		ConnectedAxis=New Vec3f( 0,1,0 )
+		
+		AddInstance()
+	End
+	
+	Method New( entity:Entity,joint:HingeJoint )
+		
+		Super.New( entity,joint )
+		
+		Pivot=joint.Pivot
+		Axis=joint.Axis
+		ConnectedBody=joint.ConnectedBody
+		ConnectedPivot=joint.ConnectedPivot
+		ConnectedAxis=joint.ConnectedAxis
+		
+		AddInstance( joint )
+	End
+	
+	[jsonify=1]
+	Property Pivot:Vec3f()
+		
+		Return _pivot1
+		
+	Setter( pivot:Vec3f )
+		
+		_pivot1=pivot
+	End
+	
+	[jsonify=1]
+	Property Axis:Vec3f()
+		
+		Return _axis1
+		
+	Setter( axis:Vec3f )
+		
+		_axis1=axis
+	End
+	
+	[jsonify=1]
+	Property ConnectedBody:RigidBody()
+		
+		Return _connected
+		
+	Setter( body:RigidBody )
+		
+		_connected=body
+	End
+	
+	[jsonify=1]
+	Property ConnectedPivot:Vec3f()
+	
+		Return _pivot2
+	
+	Setter( pivot:Vec3f )
+		
+		_pivot2=pivot
+	End
+	
+	[jsonify=1]
+	Property ConnectedAxis:Vec3f()
+		
+		Return _axis2
+		
+	Setter( axis:Vec3f )
+		
+		_axis2=axis
+	End
+	
+	Protected
+	
+	Field _connected:RigidBody
+	Field _pivot1:Vec3f
+	Field _pivot2:Vec3f
+	Field _axis1:Vec3f
+	Field _axis2:Vec3f
+	
+	Method OnCreate() Override
+		
+		Local btBody1:=Entity.GetComponent<RigidBody>().btBody
+		Assert( btBody1,"BallSocketJoint: No rigid body" )	'todo: fail nicely
+		
+		If _connected
+			Local btBody2:=_connected.btBody
+			Assert( btBody2,"BallSocketJoint: No rigid body" )	'todo: fail nicely
+			_btconstraint=New btHingeConstraint( btBody1,btBody2,_pivot1,_pivot2,_axis1,_axis2 )
+		Else
+			_btconstraint=New btHingeConstraint( btBody1,_pivot1,_axis1 )
+		End
+	End
+	
+End
+

+ 111 - 0
modules/mojo3d/tests/hingechain.monkey2

@@ -0,0 +1,111 @@
+Namespace myapp3d
+
+#Import "<std>"
+#Import "<mojo>"
+#Import "<mojo3d>"
+
+#Reflect mojo3d
+
+Using std..
+Using mojo..
+Using mojo3d..
+
+Class MyWindow Extends Window
+	
+	Field _scene:Scene
+	Field _camera:Camera
+	Field _light:Light
+	Field _ground:Model
+	Field _donut:Model
+	
+	Method New( title:String="Simple mojo3d app",width:Int=640,height:Int=480,flags:WindowFlags=WindowFlags.Resizable )
+		
+		Super.New( title,width,height,flags )
+	End
+	
+	Method OnCreateWindow() Override
+		
+		_scene=New Scene( True )
+		
+		_scene.ClearColor = New Color( 0.2, 0.6, 1.0 )
+		_scene.AmbientLight = _scene.ClearColor * 0.25
+		_scene.FogColor = _scene.ClearColor
+		_scene.FogFar = 1.0
+		_scene.FogFar = 200.0
+		
+		'create camera
+		Local camera:=New Camera( Self )
+		camera.AddComponent<FlyBehaviour>()
+		camera.Move( 0,2.5,-5 )
+		
+		'create light
+		Local light:=New Light
+		light.CastsShadow=True
+		light.Rotate( 45, 45, 0 )
+		
+		'create ground
+		Local groundBox:=New Boxf( -100,-1,-100,100,0,100 )
+		Local groundMaterial:=New PbrMaterial( Color.Lime )
+		Local ground:=Model.CreateBox( groundBox,1,1,1,groundMaterial )
+		ground.AddComponent<BoxCollider>().Box=groundBox
+		ground.AddComponent<RigidBody>().Mass=0
+		ground.CastsShadow=False
+
+		'create chain link
+		Local box:=New Boxf( -.2,-.45,-.01,.2,.45,.01 )
+		Local material:=New PbrMaterial( Color.Red, 0.05, 0.2 )
+		Local model:=Model.CreateBox( box,1,1,1,material )
+		model.AddComponent<BoxCollider>().Box=box
+		model.AddComponent<RigidBody>()
+
+		Local prev:Model
+
+		For Local y:=0 Until 100
+			
+			Local copy:=model.Copy()
+			
+			copy.Position=New Vec3f( 0,y+10,0 )
+			
+			If prev
+				Local joint:=copy.AddComponent<HingeJoint>()
+				joint.Pivot=New Vec3f( 0,-.5,0 )
+				joint.Axis=New Vec3f( 1,0,0 )
+				joint.ConnectedBody=prev.RigidBody
+				joint.ConnectedPivot=New Vec3f( 0,.5,0 )
+				joint.ConnectedAxis=New Vec3f( 1,0,0 )
+			Endif
+			
+			prev=copy
+		Next
+		
+		prev.RigidBody.Mass=0
+		
+		model.Visible=False
+		
+		If _scene.Editable 
+			_scene.Save( "hingechain-scene.mojo3d","modules/mojo3d/tests/assets/" )
+			_scene=Scene.Load( "hingechain-scene.mojo3d" )
+		Endif
+	End
+	
+	Method OnRender( canvas:Canvas ) Override
+		
+		RequestRender()
+		
+		_scene.Update()
+		
+		_scene.Render( canvas )
+		
+		canvas.DrawText( "FPS="+App.FPS,0,0 )
+	End
+	
+End
+
+Function Main()
+
+	New AppInstance
+	
+	New MyWindow
+	
+	App.Run()
+End

+ 1 - 0
modules/mojo3d/tests/shapes.monkey2

@@ -149,6 +149,7 @@ Class MyWindow Extends Window
 		body.CollisionGroup=32
 		body.CollisionMask=127
 		body.Kinematic=True
+		body.Friction=0	'no friction best for kinematic bodies?
 		body.Mass=0
 		
 		'create light