From adabd5f0b2d7326958126dc960bf4ef09c9a4e4f Mon Sep 17 00:00:00 2001
From: Minteck <46352972+Minteck@users.noreply.github.com>
Date: Wed, 7 Jul 2021 17:01:51 +0200
Subject: Update!
---
views/script/menu_gpuinfo.js | 115 ++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 114 insertions(+), 1 deletion(-)
(limited to 'views/script/menu_gpuinfo.js')
diff --git a/views/script/menu_gpuinfo.js b/views/script/menu_gpuinfo.js
index 4177cfc..accf318 100644
--- a/views/script/menu_gpuinfo.js
+++ b/views/script/menu_gpuinfo.js
@@ -1,3 +1,95 @@
+if (require('os').platform === "darwin") {
+ document.getElementById("gpuinfo").style.display = "none";
+}
+
+if (require('os').platform !== "darwin") {
+ gpuinfo = require('@electron/remote').app.getGPUFeatureStatus();
+ gpuscore = 0;
+ maxscore = 10;
+ if (gpuinfo['2d_canvas'].startsWith("enabled")) {
+ if (gpuinfo['2d_canvas'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['gpu_compositing'].startsWith("enabled")) {
+ if (gpuinfo['gpu_compositing'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['video_decode'].startsWith("enabled")) {
+ if (gpuinfo['video_decode'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['multiple_raster_threads'].startsWith("enabled")) {
+ if (gpuinfo['multiple_raster_threads'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['oop_rasterization'].startsWith("enabled")) {
+ if (gpuinfo['oop_rasterization'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['rasterization'].startsWith("enabled")) {
+ if (gpuinfo['rasterization'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['opengl'].startsWith("enabled")) {
+ if (gpuinfo['opengl'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['skia_renderer'].startsWith("enabled")) {
+ if (gpuinfo['skia_renderer'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['vulkan'].startsWith("enabled")) {
+ if (gpuinfo['vulkan'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+ if (gpuinfo['webgl'].startsWith("enabled")) {
+ if (gpuinfo['webgl'] === "enabled") {
+ gpuscore++;
+ } else {
+ gpuscore += 0.5;
+ }
+ }
+
+ gpuperct = (gpuscore/maxscore)*100;
+ document.getElementById("gpusupportperc").innerText = gpuperct + "%";
+
+ document.getElementById("gpuinfo_progressbar").style.width = gpuperct + "%";
+ if (gpuperct < 50) {
+ document.getElementById("gpuinfo_progressbar").style.background = "rgba(128, 0, 0, .5)";
+ } else if (gpuperct < 75) {
+ document.getElementById("gpuinfo_progressbar").style.background = "rgba(128, 128, 0, .5)";
+ } else {
+ document.getElementById("gpuinfo_progressbar").style.background = "rgba(0, 128, 0, .5)";
+ }
+}
+
if (require('os').platform !== "darwin") {
gpuinfo = require('@electron/remote').app.getGPUFeatureStatus();
document.write("kartik
");
@@ -39,6 +131,11 @@ if (require('os').platform !== "darwin") {
} else {
document.write(" ├ kartik.renderer.OpenGL
");
}
+ if (gpuinfo['webgl'].startsWith("enabled")) {
+ document.write(" ├ kartik.renderer.WebGL
");
+ } else {
+ document.write(" ├ kartik.renderer.WebGL
");
+ }
if (gpuinfo['skia_renderer'].startsWith("enabled")) {
document.write(" ├ kartik.renderer.Skia
");
} else {
@@ -56,14 +153,30 @@ if (require('os').platform !== "darwin") {
document.onkeydown = (e) => {
if (e.shiftKey) {
document.getElementById('gpuinfo-inner').style.opacity = "1";
+ document.getElementById('gpuinfo-inner').style.height = "max-content";
document.getElementById('gpuinfo-outer').style.display = "none";
} else {
document.getElementById('gpuinfo-inner').style.opacity = "0";
+ document.getElementById('gpuinfo-inner').style.height = "0";
document.getElementById('gpuinfo-outer').style.display = "";
}
}
document.onkeyup = (e) => {
document.getElementById('gpuinfo-inner').style.opacity = "0";
+ document.getElementById('gpuinfo-inner').style.height = "0";
document.getElementById('gpuinfo-outer').style.display = "";
-}
\ No newline at end of file
+}
+
+require('systeminformation').graphics().then((data) => {
+ document.getElementById("gpuinfo-model").innerText = data.controllers[0].model;
+ vram = data.controllers[0].vram;
+
+ if (vram > 1024) {
+ vrams = (vram/1024).toFixed(1) + " GiB";
+ } else {
+ vrams = (vram).toFixed(1) + " MiB";
+ }
+
+ document.getElementById("gpuinfo-vram").innerText = vrams + " VRAM";
+})
\ No newline at end of file
--
cgit