diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..8524089 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +*.glb filter=lfs diff=lfs merge=lfs -text +*.fxb filter=lfs diff=lfs merge=lfs -text diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 0f406cb..8b9dd1f 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -95,7 +95,7 @@ "env": { "LD_LIBRARY_PATH": "./lib64", "DYLD_LIBRARY_PATH": "./osx", - "FNA3D_FORCE_DRIVER": "Vulkan" + "FNA3D_FORCE_DRIVER": "OpenGL" }, "cwd": "${workspaceFolder}/KavTest/bin/Debug/net461" }, diff --git a/Kav b/Kav index 8cb7601..016cb6e 160000 --- a/Kav +++ b/Kav @@ -1 +1 @@ -Subproject commit 8cb760171745a7bc75ff56d88f0773dc55e2f2e3 +Subproject commit 016cb6e6a4e9ad32aec022717f5c2dac14cc101d diff --git a/KavTest/Content/avocado.glb b/KavTest/Content/avocado.glb new file mode 100644 index 0000000..82d62bb --- /dev/null +++ b/KavTest/Content/avocado.glb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85ae91e60ed519f53a7e2096508837fedd446dcc450f8e05678b7a204679bd12 +size 8328156 diff --git a/KavTest/Content/cube.glb b/KavTest/Content/cube.glb index 371748f..619fa28 100644 Binary files a/KavTest/Content/cube.glb and b/KavTest/Content/cube.glb differ diff --git a/KavTest/Content/floor.glb b/KavTest/Content/floor.glb index 4c763b5..6ac2e64 100644 Binary files a/KavTest/Content/floor.glb and b/KavTest/Content/floor.glb differ diff --git a/KavTest/Content/rustysphere.glb b/KavTest/Content/rustysphere.glb index db9e8e5..fc48bc9 100644 Binary files a/KavTest/Content/rustysphere.glb and b/KavTest/Content/rustysphere.glb differ diff --git a/KavTest/KavTestGame.cs b/KavTest/KavTestGame.cs index 954bfa3..ed3d800 100644 --- a/KavTest/KavTestGame.cs +++ b/KavTest/KavTestGame.cs @@ -25,7 +25,7 @@ namespace KavTest graphics = new GraphicsDeviceManager(this); graphics.PreferredBackBufferWidth = 1280; graphics.PreferredBackBufferHeight = 720; - graphics.PreferMultiSampling = true; + graphics.PreferMultiSampling = false; Content.RootDirectory = "Content"; Window.AllowUserResizing = true; @@ -63,6 +63,11 @@ namespace KavTest Smuggler.Importer.ImportGLB(GraphicsDevice, File.OpenRead("Content/floor.glb")) ); + var avocadoModel = Kav.ModelLoader.Load( + GraphicsDevice, + Smuggler.Importer.ImportGLB(GraphicsDevice, File.OpenRead("Content/avocado.glb")) + ); + WorldBuilder.AddEngine(new InputEngine(this)); WorldBuilder.AddEngine(new AngularVelocityEngine()); WorldBuilder.AddEngine(new MoveAlongCurve3DEngine()); @@ -74,26 +79,37 @@ namespace KavTest WorldBuilder.AddEngine(new DirectionalLightSpawner()); WorldBuilder.AddGeneralRenderer(new SceneRenderer(GraphicsDevice), 0); - WorldBuilder.SendMessage(new RustyBallSpawnMessage( - new Transform3D(new Vector3(0, 0, 0)), - new Vector3(1, 1, -1) - )); + // WorldBuilder.SendMessage(new RustyBallSpawnMessage( + // new Transform3D(new Vector3(0, 0, 0)), + // new Vector3(1, 1, -1) + // )); - WorldBuilder.SendMessage(new RustyBallSpawnMessage( - new Transform3D(new Vector3(-3, 0, 0)), - new Vector3(-1, 1, -1) - )); + // WorldBuilder.SendMessage(new RustyBallSpawnMessage( + // new Transform3D(new Vector3(-3, 0, 0)), + // new Vector3(-1, 1, -1) + // )); - WorldBuilder.SendMessage(new RustyBallSpawnMessage( - new Transform3D(new Vector3(3, 0, 0)), - new Vector3(-1, 1, 1) - )); + // WorldBuilder.SendMessage(new RustyBallSpawnMessage( + // new Transform3D(new Vector3(3, 0, 0)), + // new Vector3(-1, 1, 1) + // )); WorldBuilder.SendMessage(new StaticModelSpawnMessage( new Transform3D(new Vector3(0, -3, 0), Quaternion.Identity, new Vector3(10f, 1f, 10f)), floorModel )); + var entity = WorldBuilder.CreateEntity(); + + WorldBuilder.SetComponent(entity, new Transform3DComponent( + new Transform3D( + new Vector3(0, 1, 0), + Quaternion.CreateFromAxisAngle(Vector3.Right, -Microsoft.Xna.Framework.MathHelper.PiOver2), + new Vector3(30, 30, 30)) + ) + ); + WorldBuilder.SetComponent(entity, new ModelComponent(avocadoModel)); + for (var i = 0; i < 1; i++) { var start = RandomHelper.RandomVector3(-5, 5); @@ -101,15 +117,15 @@ namespace KavTest WorldBuilder.SendMessage(new LightBulbSpawnMessage( new Transform3D(start.ToXNAVector(), Quaternion.Identity, new Vector3(0.1f, 0.1f, 0.1f)), RandomHelper.RandomColor(), - 10f, + 1f, RandomHelper.RandomLoop(start, -15, 15, 3, 10) )); } WorldBuilder.SendMessage(new DirectionalLightSpawnMessage( Quaternion.CreateFromAxisAngle(Vector3.Right, Microsoft.Xna.Framework.MathHelper.PiOver4), - Color.GhostWhite, - 0.1f + Color.LightGoldenrodYellow, + 0.7f )); // WorldBuilder.SendMessage(new DirectionalLightSpawnMessage( diff --git a/KavTest/Renderers/SceneRenderer.cs b/KavTest/Renderers/SceneRenderer.cs index f5b7db6..0bfe6c0 100644 --- a/KavTest/Renderers/SceneRenderer.cs +++ b/KavTest/Renderers/SceneRenderer.cs @@ -79,7 +79,8 @@ namespace KavTest.Renderers graphicsDevice, graphicsDevice.PresentationParameters.BackBufferWidth, graphicsDevice.PresentationParameters.BackBufferHeight, - 3 + 4, + 4096 ); }