mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-09-08 04:08:32 +09:00
[Fix, Test] (MG_Backend/DirectGLES, MG_Util, CI): keep an explicit LOD constant under a new avoid flag - folding the bias uniform into it kills the ANGLE llvmpipe JIT
This commit is contained in:
@@ -154,6 +154,11 @@ bool LoadMobileGL(const Request& request, std::string& error) {
|
||||
} else {
|
||||
unsetenv("MOBILEGL_AVOID_SAMPLER_MIPMAP_MIN_FILTER");
|
||||
}
|
||||
if (request.avoidAngleLlvmpipeExplicitLodBias) {
|
||||
setenv("MOBILEGL_AVOID_EXPLICIT_LOD_BIAS", "1", 1);
|
||||
} else {
|
||||
unsetenv("MOBILEGL_AVOID_EXPLICIT_LOD_BIAS");
|
||||
}
|
||||
if (request.coherentAsFlush) {
|
||||
setenv("MOBILEGL_COHERENT_AS_FLUSH", "1", 1);
|
||||
} else {
|
||||
@@ -792,6 +797,8 @@ bool WriteResultJson(const Request& request, const Result& result) {
|
||||
file << " \"usePbuffer\": " << (request.usePbuffer ? "true" : "false") << ",\n";
|
||||
file << " \"avoidAngleLlvmpipeSamplerMipmapMinFilter\": "
|
||||
<< (request.avoidAngleLlvmpipeSamplerMipmapMinFilter ? "true" : "false") << ",\n";
|
||||
file << " \"avoidAngleLlvmpipeExplicitLodBias\": "
|
||||
<< (request.avoidAngleLlvmpipeExplicitLodBias ? "true" : "false") << ",\n";
|
||||
file << " \"holdMs\": " << request.holdMs << ",\n";
|
||||
file << " \"mismatchPixels\": " << result.mismatchPixels << "\n";
|
||||
file << "}\n";
|
||||
|
||||
@@ -39,6 +39,7 @@ struct Request {
|
||||
bool useAngle = false;
|
||||
bool usePbuffer = true;
|
||||
bool avoidAngleLlvmpipeSamplerMipmapMinFilter = false;
|
||||
bool avoidAngleLlvmpipeExplicitLodBias = false;
|
||||
bool coherentAsFlush = false;
|
||||
int holdMs = 0;
|
||||
};
|
||||
|
||||
@@ -102,6 +102,7 @@ Java_top_mobilegl_plugin_trace_TraceReplayActivity_nativeRunTraceReplay(JNIEnv*
|
||||
jboolean useAngle,
|
||||
jboolean usePbuffer,
|
||||
jboolean avoidAngleLlvmpipeSamplerMipmapMinFilter,
|
||||
jboolean avoidAngleLlvmpipeExplicitLodBias,
|
||||
jboolean coherentAsFlush) {
|
||||
mobilegl_trace::Request request;
|
||||
request.tracePath = ToString(env, tracePath);
|
||||
@@ -127,6 +128,7 @@ Java_top_mobilegl_plugin_trace_TraceReplayActivity_nativeRunTraceReplay(JNIEnv*
|
||||
request.usePbuffer = usePbuffer == JNI_TRUE;
|
||||
request.avoidAngleLlvmpipeSamplerMipmapMinFilter =
|
||||
avoidAngleLlvmpipeSamplerMipmapMinFilter == JNI_TRUE;
|
||||
request.avoidAngleLlvmpipeExplicitLodBias = avoidAngleLlvmpipeExplicitLodBias == JNI_TRUE;
|
||||
request.coherentAsFlush = coherentAsFlush == JNI_TRUE;
|
||||
|
||||
ScopedTraceReplayState replayState;
|
||||
|
||||
Reference in New Issue
Block a user