WebGL validation for depthRange.
Generate INVALID_OPERATION for depthRange(zNear, zFar) if zNear > zFar.
Add corresponding test.
BUG=angleproject:1816
Change-Id: I28b5876a74c9765c0eef1e0f6e5e96d0380586d0
Reviewed-on: https://chromium-review.googlesource.com/441207
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/validationES2.cpp b/src/libANGLE/validationES2.cpp
index 43a1b47..ddc1a2e 100644
--- a/src/libANGLE/validationES2.cpp
+++ b/src/libANGLE/validationES2.cpp
@@ -4015,4 +4015,15 @@
return true;
}
+bool ValidateDepthRangef(ValidationContext *context, GLclampf zNear, GLclampf zFar)
+{
+ if (context->getExtensions().webglCompatibility && zNear > zFar)
+ {
+ context->handleError(Error(GL_INVALID_OPERATION, "Depth near > far."));
+ return false;
+ }
+
+ return true;
+}
+
} // namespace gl