From 7745263a471b2c853102660fd9435aa38b2b0da6 Mon Sep 17 00:00:00 2001 From: AlgorithmX2 Date: Thu, 18 Sep 2014 13:14:32 -0500 Subject: [PATCH] Add black cube around Spatial, add super dark grey fog / skycolor to prevent night vision from making you blind. --- client/render/SpatialSkyRender.java | 59 ++++++++++++++++++++++++++--- spatial/StorageWorldProvider.java | 14 +++++-- 2 files changed, 64 insertions(+), 9 deletions(-) diff --git a/client/render/SpatialSkyRender.java b/client/render/SpatialSkyRender.java index c77c3419b..b4d16d163 100644 --- a/client/render/SpatialSkyRender.java +++ b/client/render/SpatialSkyRender.java @@ -41,10 +41,58 @@ public class SpatialSkyRender extends IRenderHandler fade /= 1000; fade = 0.15f * (1.0f - Math.abs( (fade - 1.0f) * (fade - 1.0f) )); - if ( fade > 0.0f ) - { - GL11.glPushAttrib( GL11.GL_ALL_ATTRIB_BITS ); + GL11.glPushAttrib( GL11.GL_ALL_ATTRIB_BITS ); + GL11.glDisable(GL11.GL_FOG); + GL11.glDisable(GL11.GL_ALPHA_TEST); + GL11.glDisable(GL11.GL_BLEND); + GL11.glDepthMask(false); + GL11.glColor4f( 0.0f, 0.0f, 0.0f, 1.0f ); + Tessellator tessellator = Tessellator.instance; + + for (int i = 0; i < 6; ++i) + { + GL11.glPushMatrix(); + + if (i == 1) + { + GL11.glRotatef(90.0F, 1.0F, 0.0F, 0.0F); + } + + if (i == 2) + { + GL11.glRotatef(-90.0F, 1.0F, 0.0F, 0.0F); + } + + if (i == 3) + { + GL11.glRotatef(180.0F, 1.0F, 0.0F, 0.0F); + } + + if (i == 4) + { + GL11.glRotatef(90.0F, 0.0F, 0.0F, 1.0F); + } + + if (i == 5) + { + GL11.glRotatef(-90.0F, 0.0F, 0.0F, 1.0F); + } + + tessellator.startDrawingQuads(); + tessellator.setColorOpaque_I(0); + tessellator.addVertexWithUV(-100.0D, -100.0D, -100.0D, 0.0D, 0.0D); + tessellator.addVertexWithUV(-100.0D, -100.0D, 100.0D, 0.0D, 16.0D); + tessellator.addVertexWithUV(100.0D, -100.0D, 100.0D, 16.0D, 16.0D); + tessellator.addVertexWithUV(100.0D, -100.0D, -100.0D, 16.0D, 0.0D); + tessellator.draw(); + GL11.glPopMatrix(); + } + + GL11.glDepthMask(true); + + if ( fade > 0.0f ) + { GL11.glDisable( GL11.GL_FOG ); GL11.glDisable( GL11.GL_ALPHA_TEST ); GL11.glEnable( GL11.GL_BLEND ); @@ -52,7 +100,6 @@ public class SpatialSkyRender extends IRenderHandler GL11.glEnable( GL11.GL_FOG ); GL11.glDisable( GL11.GL_FOG ); GL11.glDisable( GL11.GL_ALPHA_TEST ); - GL11.glEnable( GL11.GL_BLEND ); GL11.glDisable( GL11.GL_TEXTURE_2D ); OpenGlHelper.glBlendFunc( 770, 771, 1, 0 ); RenderHelper.disableStandardItemLighting(); @@ -60,9 +107,11 @@ public class SpatialSkyRender extends IRenderHandler GL11.glColor4f( fade, fade, fade, 1.0f ); GL11.glCallList( dspList ); - GL11.glPopAttrib(); } + GL11.glPopAttrib(); + + GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f); } private void renderTwinkles() diff --git a/spatial/StorageWorldProvider.java b/spatial/StorageWorldProvider.java index adb810859..31721e280 100644 --- a/spatial/StorageWorldProvider.java +++ b/spatial/StorageWorldProvider.java @@ -38,6 +38,12 @@ public class StorageWorldProvider extends WorldProvider super.worldChunkMgr = new WorldChunkManagerHell( Registration.instance.storageBiome, 0.0F ); } + @SideOnly(Side.CLIENT) + public float[] calcSunriseSunsetColors(float p_76560_1_, float p_76560_2_) + { + return null; + } + @Override public float getStarBrightness(float par1) { @@ -77,7 +83,7 @@ public class StorageWorldProvider extends WorldProvider @Override public Vec3 getSkyColor(Entity cameraEntity, float partialTicks) { - return Vec3.createVectorHelper( 0.0, 0.0, 0.0 ); + return Vec3.createVectorHelper( 0.07, 0.07, 0.07 ); } @Override @@ -96,13 +102,13 @@ public class StorageWorldProvider extends WorldProvider @SideOnly(Side.CLIENT) public boolean isSkyColored() { - return false; + return true; } @Override public Vec3 getFogColor(float par1, float par2) { - return Vec3.createVectorHelper( 0.0, 0.0, 0.0 ); + return Vec3.createVectorHelper( 0.07, 0.07, 0.07 ); } @Override @@ -116,7 +122,7 @@ public class StorageWorldProvider extends WorldProvider { return "Storage Cell"; } - + @Override public IRenderHandler getSkyRenderer() {