From 0e2946f20b002eac1959931b0df18875ff0365ab Mon Sep 17 00:00:00 2001 From: Calum Date: Sat, 9 Sep 2017 12:34:08 +1200 Subject: [PATCH] Added ocean object --- .../java/seng302/visualiser/GameView3D.java | 9 +- .../fxObjects/assets_3D/ModelFactory.java | 10 +- .../fxObjects/assets_3D/ModelType.java | 3 +- src/main/resources/meshes/ocean.dae | 100 ++++++++++++++++++ 4 files changed, 118 insertions(+), 4 deletions(-) create mode 100644 src/main/resources/meshes/ocean.dae diff --git a/src/main/java/seng302/visualiser/GameView3D.java b/src/main/java/seng302/visualiser/GameView3D.java index 713996e9..77be31b2 100644 --- a/src/main/java/seng302/visualiser/GameView3D.java +++ b/src/main/java/seng302/visualiser/GameView3D.java @@ -39,6 +39,7 @@ public class GameView3D { root3D, 1000, 1000, true, SceneAntialiasing.BALANCED ); view.setCamera(camera); + view.setFill(Color.SKYBLUE); Sphere s = new Sphere(1); s.setMaterial(new PhongMaterial(Color.RED)); Sphere left = new Sphere(1); @@ -72,7 +73,13 @@ public class GameView3D { Node coin = ModelFactory.importModel(ModelType.VELOCITY_COIN).getAssets(); coin.setTranslateX(coin.getTranslateX() - 30); - gameObjects.getChildren().addAll(s, left, right, top, bottom, boat, boat2, boat3, sMarker, fMarker, marker, coin); + gameObjects.getChildren().addAll( + ModelFactory.importModel(ModelType.OCEAN).getAssets(), + s, left, right, top, bottom, + boat, boat2, boat3, + sMarker, fMarker, marker, + coin + ); view.sceneProperty().addListener((obs, old, scene) -> { if (scene!=null) enableCameraMovement(scene); diff --git a/src/main/java/seng302/visualiser/fxObjects/assets_3D/ModelFactory.java b/src/main/java/seng302/visualiser/fxObjects/assets_3D/ModelFactory.java index 95636652..6f515edc 100644 --- a/src/main/java/seng302/visualiser/fxObjects/assets_3D/ModelFactory.java +++ b/src/main/java/seng302/visualiser/fxObjects/assets_3D/ModelFactory.java @@ -6,13 +6,11 @@ import javafx.animation.AnimationTimer; import javafx.geometry.Point3D; import javafx.scene.AmbientLight; import javafx.scene.Group; -import javafx.scene.Node; import javafx.scene.paint.Color; import javafx.scene.paint.PhongMaterial; import javafx.scene.shape.MeshView; import javafx.scene.transform.Rotate; import javafx.scene.transform.Scale; -import seng302.model.token.TokenType; /** * Factory class for creating 3D models of boats. @@ -89,6 +87,8 @@ public class ModelFactory { case PLAIN_MARKER: case START_MARKER: return makeMarker(assets); + case OCEAN: + return makeOcean(assets); default: return new Model(assets, null); } @@ -121,4 +121,10 @@ public class ModelFactory { area.getTransforms().add(new Rotate(90, new Point3D(1, 0, 0))); return new Model(area, null); } + + private static Model makeOcean(Group plane) { + plane.setScaleY(100); + plane.setScaleX(100); + return new Model(plane, null); + } } diff --git a/src/main/java/seng302/visualiser/fxObjects/assets_3D/ModelType.java b/src/main/java/seng302/visualiser/fxObjects/assets_3D/ModelType.java index d94c7911..dadc98cf 100644 --- a/src/main/java/seng302/visualiser/fxObjects/assets_3D/ModelType.java +++ b/src/main/java/seng302/visualiser/fxObjects/assets_3D/ModelType.java @@ -10,7 +10,8 @@ public enum ModelType { FINISH_MARKER ("finish_marker.dae"), START_MARKER ("start_marker.dae"), PLAIN_MARKER ("plain_marker.dae"), - MARK_AREA ("mark_area.dae"); + MARK_AREA ("mark_area.dae"), + OCEAN ("ocean.dae"); final String filename; diff --git a/src/main/resources/meshes/ocean.dae b/src/main/resources/meshes/ocean.dae new file mode 100644 index 00000000..58a9c2d2 --- /dev/null +++ b/src/main/resources/meshes/ocean.dae @@ -0,0 +1,100 @@ + + + + + Blender User + Blender 2.78.0 commit date:2016-09-26, commit time:12:42, hash:4bb1e22 + + 2017-09-09T12:27:53 + 2017-09-09T12:27:53 + + Z_UP + + + + + + + + + 0 0 0 1 + + + 0 0 0 1 + + + 0.64 0.001709759 0 1 + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + -1 -1 0 1 -1 0 -1 1 0 1 1 0 -1 -1 0.002058923 1 -1 0.002058923 -1 1 0.002058923 1 1 0.002058923 + + + + + + + + + + 0 0 -1 0 0 1 0 1 0 0 -1 0 1 0 0 -1 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

2 0 1 0 0 0 5 1 6 1 4 1 2 2 7 2 3 2 1 3 4 3 0 3 3 4 5 4 1 4 0 5 6 5 2 5 2 0 3 0 1 0 5 1 7 1 6 1 2 2 6 2 7 2 1 3 5 3 4 3 3 4 7 4 5 4 0 5 4 5 6 5

+
+
+
+
+ + + + + 8 0 0 0 0 8 0 0 0 0 8 0 0 0 0 1 + + + + + + + + + + + + + +
\ No newline at end of file