diff --git a/src/cache.h b/src/cache.h
index 90803fa..a639207 100644
--- a/src/cache.h
+++ b/src/cache.h
@@ -208,6 +208,8 @@ struct ShaderCache {
Shader *getShader(Core::Pass pass, Shader::Type type, int fx) {
Shader *shader = shaders[pass][type][fx];
#ifndef FFP
+ if (shader == NULL)
+ LOG("! NULL shader: %d %d %d\n", int(pass), int(type), int(fx));
ASSERT(shader != NULL);
#endif
return shader;
@@ -217,7 +219,8 @@ struct ShaderCache {
Core::pass = pass;
Shader *shader = getShader(pass, type, fx);
- shader->bind();
+ if (shader)
+ shader->bind();
Core::setAlphaTest((fx & FX_ALPHA_TEST) != 0);
}
diff --git a/src/gapi_gl.h b/src/gapi_gl.h
index f18ca03..682d4ff 100644
--- a/src/gapi_gl.h
+++ b/src/gapi_gl.h
@@ -923,10 +923,12 @@ namespace GAPI {
}
void setAlphaTest(bool enable) {
+ #ifdef FFP
if (enable)
glEnable(GL_ALPHA_TEST);
else
glDisable(GL_ALPHA_TEST);
+ #endif
}
void setCullMode(int rsMask) {
@@ -1014,10 +1016,8 @@ namespace GAPI {
if (mask & RS_BLEND)
setBlendMode(state & RS_BLEND);
- #ifdef FFP
if (mask & RS_DISCARD)
setAlphaTest((state & RS_DISCARD) != 0);
- #endif
}
}
diff --git a/src/level.h b/src/level.h
index f3b4e69..af8e28d 100644
--- a/src/level.h
+++ b/src/level.h
@@ -716,6 +716,8 @@ struct Level : IGame {
inventory.toggle(0, Inventory::PAGE_OPTION);
}
+ setClipParams(1.0f, NO_CLIP_PLANE);
+
effect = TR::Effect::NONE;
cube360 = NULL;
@@ -2403,8 +2405,7 @@ struct Level : IGame {
player = players[view];
camera = player->camera;
- params->clipHeight = NO_CLIP_PLANE;
- params->clipSign = 1.0f;
+ setClipParams(1.0f, NO_CLIP_PLANE);
params->waterHeight = params->clipHeight;
if (shadow) {
diff --git a/src/platform/web/.htaccess b/src/platform/web/.htaccess
index 850df1b..0072e23 100644
--- a/src/platform/web/.htaccess
+++ b/src/platform/web/.htaccess
@@ -15,7 +15,12 @@ AddEncoding gzip .gz
Header set Content-Encoding: gzip
+
OpenLara on github & facebook
-
last update: 8.05.2018
+
last update: 9.05.2018