mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-09-11 05:38:31 +09:00
[Fix] (trace-replay): render DirectGLES replay onscreen by default
This commit is contained in:
@@ -814,6 +814,7 @@ bool WriteResultJson(const Request& request, const Result& result) {
|
||||
file << " \"ssim\": " << result.ssim << ",\n";
|
||||
file << " \"ssimThreshold\": " << request.ssimThreshold << ",\n";
|
||||
file << " \"useAngle\": " << (UseAngleForRequest(request) ? "true" : "false") << ",\n";
|
||||
file << " \"usePbuffer\": " << (request.usePbuffer ? "true" : "false") << ",\n";
|
||||
file << " \"mismatchPixels\": " << result.mismatchPixels << "\n";
|
||||
file << "}\n";
|
||||
return true;
|
||||
|
||||
@@ -34,6 +34,7 @@ struct Request {
|
||||
int cropHeight = 0;
|
||||
double ssimThreshold = 0.99;
|
||||
bool useAngle = false;
|
||||
bool usePbuffer = false;
|
||||
};
|
||||
|
||||
struct Result {
|
||||
|
||||
@@ -99,7 +99,8 @@ Java_top_mobilegl_plugin_trace_TraceReplayActivity_nativeRunTraceReplay(JNIEnv*
|
||||
jint cropWidth,
|
||||
jint cropHeight,
|
||||
jstring angleLibraryDir,
|
||||
jboolean useAngle) {
|
||||
jboolean useAngle,
|
||||
jboolean usePbuffer) {
|
||||
mobilegl_trace::Request request;
|
||||
request.tracePath = ToString(env, tracePath);
|
||||
request.goldenPath = ToString(env, goldenPath);
|
||||
@@ -121,10 +122,13 @@ Java_top_mobilegl_plugin_trace_TraceReplayActivity_nativeRunTraceReplay(JNIEnv*
|
||||
request.cropWidth = cropWidth;
|
||||
request.cropHeight = cropHeight;
|
||||
request.useAngle = useAngle == JNI_TRUE;
|
||||
request.usePbuffer = usePbuffer == JNI_TRUE;
|
||||
|
||||
ScopedTraceReplayState replayState;
|
||||
mobilegl_trace_set_requested_size(request.width, request.height);
|
||||
const bool needsNativeWindow = request.backend == "DirectVulkan";
|
||||
const bool needsNativeWindow =
|
||||
request.backend == "DirectVulkan" ||
|
||||
(request.backend == "DirectGLES" && !request.usePbuffer);
|
||||
ANativeWindow *window = needsNativeWindow && surface != nullptr ? ANativeWindow_fromSurface(env, surface) : nullptr;
|
||||
mobilegl_trace_set_native_window(window);
|
||||
if (window != nullptr) {
|
||||
|
||||
+10
-4
@@ -112,7 +112,8 @@ public final class TraceReplayActivity extends Activity {
|
||||
request.cropWidth,
|
||||
request.cropHeight,
|
||||
request.angleLibraryDir,
|
||||
request.useAngle
|
||||
request.useAngle,
|
||||
request.usePbuffer
|
||||
);
|
||||
Log.i(TAG, result.toString());
|
||||
TraceReplayResult finalResult = result;
|
||||
@@ -140,7 +141,8 @@ public final class TraceReplayActivity extends Activity {
|
||||
int cropWidth,
|
||||
int cropHeight,
|
||||
String angleLibraryDir,
|
||||
boolean useAngle
|
||||
boolean useAngle,
|
||||
boolean usePbuffer
|
||||
);
|
||||
|
||||
private static final class TraceReplayRequest {
|
||||
@@ -161,6 +163,7 @@ public final class TraceReplayActivity extends Activity {
|
||||
final int cropHeight;
|
||||
final String angleLibraryDir;
|
||||
final boolean useAngle;
|
||||
final boolean usePbuffer;
|
||||
|
||||
private TraceReplayRequest(
|
||||
String tracePath,
|
||||
@@ -179,7 +182,8 @@ public final class TraceReplayActivity extends Activity {
|
||||
int cropWidth,
|
||||
int cropHeight,
|
||||
String angleLibraryDir,
|
||||
boolean useAngle
|
||||
boolean useAngle,
|
||||
boolean usePbuffer
|
||||
) {
|
||||
this.tracePath = tracePath;
|
||||
this.goldenPath = goldenPath;
|
||||
@@ -198,6 +202,7 @@ public final class TraceReplayActivity extends Activity {
|
||||
this.cropHeight = cropHeight;
|
||||
this.angleLibraryDir = angleLibraryDir;
|
||||
this.useAngle = useAngle;
|
||||
this.usePbuffer = usePbuffer;
|
||||
}
|
||||
|
||||
static TraceReplayRequest from(Intent intent, File filesDir, String nativeLibraryDir, String defaultBackend) {
|
||||
@@ -220,7 +225,8 @@ public final class TraceReplayActivity extends Activity {
|
||||
intent.getIntExtra("crop_width", 0),
|
||||
intent.getIntExtra("crop_height", 0),
|
||||
readString(intent, "angle_library_dir", nativeLibraryDir),
|
||||
intent.getBooleanExtra("use_angle", false)
|
||||
intent.getBooleanExtra("use_angle", false),
|
||||
intent.getBooleanExtra("use_pbuffer", false)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user