mirror of
https://github.com/ClassiCube/ClassiCube.git
synced 2025-09-09 23:41:09 -04:00
remove detection of 'useclouds' in texture pack zips, because this was undocumented and unintuitive.
You can still disable clouds with skyboxes by just moving them to -10000
This commit is contained in:
parent
ea9a8813da
commit
7f34c26ccd
@ -45,7 +45,7 @@ namespace ClassicalSharp.Map {
|
|||||||
public int SidesOffset = -2;
|
public int SidesOffset = -2;
|
||||||
|
|
||||||
public float SkyboxHorSpeed, SkyboxVerSpeed;
|
public float SkyboxHorSpeed, SkyboxVerSpeed;
|
||||||
public bool ExpFog, SkyboxClouds;
|
public bool ExpFog;
|
||||||
|
|
||||||
Game game;
|
Game game;
|
||||||
public WorldEnv(Game game) {
|
public WorldEnv(Game game) {
|
||||||
|
@ -61,12 +61,8 @@ namespace ClassicalSharp.Renderers {
|
|||||||
if (minimal) { RenderMinimal(deltaTime); return; }
|
if (minimal) { RenderMinimal(deltaTime); return; }
|
||||||
if (skyVb == 0 || cloudsVb == 0) return;
|
if (skyVb == 0 || cloudsVb == 0) return;
|
||||||
|
|
||||||
if (!game.SkyboxRenderer.ShouldRender) {
|
|
||||||
RenderSky(deltaTime);
|
RenderSky(deltaTime);
|
||||||
RenderClouds(deltaTime);
|
RenderClouds(deltaTime);
|
||||||
} else if (game.World.Env.SkyboxClouds) {
|
|
||||||
RenderClouds(deltaTime);
|
|
||||||
}
|
|
||||||
UpdateFog();
|
UpdateFog();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -172,6 +168,7 @@ namespace ClassicalSharp.Renderers {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void RenderSky(double delta) {
|
void RenderSky(double delta) {
|
||||||
|
if (game.SkyboxRenderer.ShouldRender) return;
|
||||||
Vector3 pos = game.CurrentCameraPos;
|
Vector3 pos = game.CurrentCameraPos;
|
||||||
float normalY = map.Height + 8;
|
float normalY = map.Height + 8;
|
||||||
float skyY = Math.Max(pos.Y + 8, normalY);
|
float skyY = Math.Max(pos.Y + 8, normalY);
|
||||||
|
@ -50,14 +50,11 @@ namespace ClassicalSharp.Renderers {
|
|||||||
|
|
||||||
void TexturePackChanged(object sender, EventArgs e) {
|
void TexturePackChanged(object sender, EventArgs e) {
|
||||||
game.Graphics.DeleteTexture(ref tex);
|
game.Graphics.DeleteTexture(ref tex);
|
||||||
game.World.Env.SkyboxClouds = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void TextureChanged(object sender, TextureEventArgs e) {
|
void TextureChanged(object sender, TextureEventArgs e) {
|
||||||
if (e.Name == "skybox.png") {
|
if (e.Name == "skybox.png") {
|
||||||
game.UpdateTexture(ref tex, e.Name, e.Data, false);
|
game.UpdateTexture(ref tex, e.Name, e.Data, false);
|
||||||
} else if (e.Name == "useclouds") {
|
|
||||||
game.World.Env.SkyboxClouds = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -95,6 +95,7 @@ static void EnvRenderer_RenderClouds(Real64 deltaTime) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void EnvRenderer_RenderSky(Real64 deltaTime) {
|
static void EnvRenderer_RenderSky(Real64 deltaTime) {
|
||||||
|
if (SkyboxRenderer_ShouldRender()) return;
|
||||||
Vector3 pos = Game_CurrentCameraPos;
|
Vector3 pos = Game_CurrentCameraPos;
|
||||||
Real32 normalY = (Real32)World_Height + 8.0f;
|
Real32 normalY = (Real32)World_Height + 8.0f;
|
||||||
Real32 skyY = max(pos.Y + 8.0f, normalY);
|
Real32 skyY = max(pos.Y + 8.0f, normalY);
|
||||||
@ -149,12 +150,8 @@ void EnvRenderer_Render(Real64 deltaTime) {
|
|||||||
EnvRenderer_RenderMinimal(deltaTime);
|
EnvRenderer_RenderMinimal(deltaTime);
|
||||||
} else {
|
} else {
|
||||||
if (env_skyVb == NULL || env_cloudsVb == NULL) return;
|
if (env_skyVb == NULL || env_cloudsVb == NULL) return;
|
||||||
if (!SkyboxRenderer_ShouldRender()) {
|
|
||||||
EnvRenderer_RenderSky(deltaTime);
|
EnvRenderer_RenderSky(deltaTime);
|
||||||
EnvRenderer_RenderClouds(deltaTime);
|
EnvRenderer_RenderClouds(deltaTime);
|
||||||
} else if (WorldEnv_SkyboxClouds) {
|
|
||||||
EnvRenderer_RenderClouds(deltaTime);
|
|
||||||
}
|
|
||||||
EnvRenderer_UpdateFog();
|
EnvRenderer_UpdateFog();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,14 +20,11 @@ bool SkyboxRenderer_ShouldRender(void) {
|
|||||||
|
|
||||||
static void SkyboxRenderer_TexturePackChanged(void* obj) {
|
static void SkyboxRenderer_TexturePackChanged(void* obj) {
|
||||||
Gfx_DeleteTexture(&skybox_tex);
|
Gfx_DeleteTexture(&skybox_tex);
|
||||||
WorldEnv_SkyboxClouds = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void SkyboxRenderer_FileChanged(void* obj, struct Stream* src) {
|
static void SkyboxRenderer_FileChanged(void* obj, struct Stream* src) {
|
||||||
if (String_CaselessEqualsConst(&src->Name, "skybox.png")) {
|
if (String_CaselessEqualsConst(&src->Name, "skybox.png")) {
|
||||||
Game_UpdateTexture(&skybox_tex, src, false);
|
Game_UpdateTexture(&skybox_tex, src, false);
|
||||||
} else if (String_CaselessEqualsConst(&src->Name, "useclouds")) {
|
|
||||||
WorldEnv_SkyboxClouds = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -55,7 +55,6 @@ Int32 WorldEnv_Weather;
|
|||||||
bool WorldEnv_ExpFog;
|
bool WorldEnv_ExpFog;
|
||||||
Real32 WorldEnv_SkyboxHorSpeed;
|
Real32 WorldEnv_SkyboxHorSpeed;
|
||||||
Real32 WorldEnv_SkyboxVerSpeed;
|
Real32 WorldEnv_SkyboxVerSpeed;
|
||||||
bool WorldEnv_SkyboxClouds;
|
|
||||||
|
|
||||||
PackedCol WorldEnv_SkyCol;
|
PackedCol WorldEnv_SkyCol;
|
||||||
extern PackedCol WorldEnv_DefaultSkyCol;
|
extern PackedCol WorldEnv_DefaultSkyCol;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user