|
|
|
|
@ -30,7 +30,7 @@ public class SkyBox {
|
|
|
|
|
this.z = z;
|
|
|
|
|
this.freq = freq;
|
|
|
|
|
this.yshift = -size/64;
|
|
|
|
|
clipOverlap = 3;
|
|
|
|
|
clipOverlap = 0;
|
|
|
|
|
makeSkyBox();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -44,7 +44,7 @@ public class SkyBox {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void addTop() {
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterUp2048.png")));
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterUp2048.png")), size);
|
|
|
|
|
|
|
|
|
|
surface.setRotationAxis(new Point3D(0, 0, 1));
|
|
|
|
|
surface.setRotate(180);
|
|
|
|
|
@ -53,12 +53,12 @@ public class SkyBox {
|
|
|
|
|
surface.setTranslateY(y - size + 1);
|
|
|
|
|
surface.setTranslateZ(z);
|
|
|
|
|
|
|
|
|
|
Subject3D top = new Subject3D(surface,0);
|
|
|
|
|
Subject3D top = new SkyBoxPlane(surface,0);
|
|
|
|
|
skyBoxPlanes.add(top);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void addRight() {
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterRight2048.png")));
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterRight2048.png")), size + 1);
|
|
|
|
|
|
|
|
|
|
surface.setTranslateX(size/2);
|
|
|
|
|
surface.setTranslateY(size/2);
|
|
|
|
|
@ -72,12 +72,12 @@ public class SkyBox {
|
|
|
|
|
surface.setTranslateZ(z + size/2 - clipOverlap);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Subject3D right = new Subject3D(surface,0);
|
|
|
|
|
Subject3D right = new SkyBoxPlane(surface,0);
|
|
|
|
|
skyBoxPlanes.add(right);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void addLeft() {
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterLeft2048.png")));
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterLeft2048.png")), size + 1);
|
|
|
|
|
|
|
|
|
|
surface.setTranslateX(size/2);
|
|
|
|
|
surface.setTranslateY(size/2);
|
|
|
|
|
@ -94,12 +94,12 @@ public class SkyBox {
|
|
|
|
|
surface.setTranslateZ(z - size/2 + clipOverlap);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Subject3D left = new Subject3D(surface,0);
|
|
|
|
|
Subject3D left = new SkyBoxPlane(surface,0);
|
|
|
|
|
skyBoxPlanes.add(left);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void addBack() {
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterBack2048.png")));
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterBack2048.png")), size);
|
|
|
|
|
surface.getTransforms().add(new Rotate(90, 0, 0));
|
|
|
|
|
|
|
|
|
|
surface.setRotationAxis(new Point3D(1, 0, 0));
|
|
|
|
|
@ -112,12 +112,12 @@ public class SkyBox {
|
|
|
|
|
surface.setTranslateY(y + yshift);
|
|
|
|
|
surface.setTranslateZ(z);
|
|
|
|
|
|
|
|
|
|
Subject3D back = new Subject3D(surface,0);
|
|
|
|
|
Subject3D back = new SkyBoxPlane(surface,0);
|
|
|
|
|
skyBoxPlanes.add(back);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void addFront() {
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterFront2048.png")));
|
|
|
|
|
MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/ThickCloudsWaterFront2048.png")), size);
|
|
|
|
|
|
|
|
|
|
surface.setTranslateX(size/2);
|
|
|
|
|
surface.setTranslateY(size/2);
|
|
|
|
|
@ -130,11 +130,11 @@ public class SkyBox {
|
|
|
|
|
surface.setTranslateY(y + yshift);
|
|
|
|
|
surface.setTranslateZ(z);
|
|
|
|
|
|
|
|
|
|
Subject3D front = new Subject3D(surface,0);
|
|
|
|
|
Subject3D front = new SkyBoxPlane(surface,0);
|
|
|
|
|
skyBoxPlanes.add(front);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private MeshView makeSurface(Image diffuseMap) {
|
|
|
|
|
private MeshView makeSurface(Image diffuseMap, int size) {
|
|
|
|
|
|
|
|
|
|
PhongMaterial material = new PhongMaterial();
|
|
|
|
|
material.setDiffuseColor(Color.web("#FFFFFF"));
|
|
|
|
|
|