From 27764ef23adf44f1ab72b0a74612123d10a0c5a2 Mon Sep 17 00:00:00 2001 From: tsuki Date: Fri, 23 Aug 2024 01:12:29 +0800 Subject: [PATCH] push --- Cargo.lock | 40 ++++++++- Cargo.toml | 9 ++ app-icon.rc | 1 + build.rs | 16 ++++ check_sdf.py | 5 -- resources/radar-gi.ico | Bin 0 -> 101915 bytes radar.toml => resources/radar.toml | 0 src/main.rs | 1 + src/setting.rs | 19 +++- src/support/supporter.rs | 2 +- test.png | Bin 15520 -> 0 bytes test.wgsl | 138 +++++++++++++++++++++++++++++ 12 files changed, 221 insertions(+), 10 deletions(-) create mode 100644 app-icon.rc create mode 100644 build.rs delete mode 100644 check_sdf.py create mode 100644 resources/radar-gi.ico rename radar.toml => resources/radar.toml (100%) delete mode 100644 test.png create mode 100644 test.wgsl diff --git a/Cargo.lock b/Cargo.lock index 6aed3f9..46be7b8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -496,6 +496,12 @@ dependencies = [ "memchr", ] +[[package]] +name = "concat-string" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7439becb5fafc780b6f4de382b1a7a3e70234afe783854a4702ee8adbb838609" + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -804,6 +810,17 @@ dependencies = [ "web-sys", ] +[[package]] +name = "find-winsdk" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8cbf17b871570c1f8612b763bac3e86290602bcf5dc3c5ce657e0e1e9071d9e" +dependencies = [ + "serde", + "serde_derive", + "winreg", +] + [[package]] name = "flate2" version = "1.0.30" @@ -1407,7 +1424,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" dependencies = [ "cfg-if", - "windows-targets 0.48.5", + "windows-targets 0.52.6", ] [[package]] @@ -2077,6 +2094,7 @@ dependencies = [ "tinyfiledialogs", "toml", "tracker", + "windres", "winit", ] @@ -3382,6 +3400,16 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +[[package]] +name = "windres" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82115619221b2b66001a39088b8059d171b1f9005a00d6a10c6e8a71a30a4cdc" +dependencies = [ + "concat-string", + "find-winsdk", +] + [[package]] name = "winit" version = "0.29.15" @@ -3449,6 +3477,16 @@ dependencies = [ "memchr", ] +[[package]] +name = "winreg" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a27a759395c1195c4cc5cda607ef6f8f6498f64e78f7900f5de0a127a424704a" +dependencies = [ + "serde", + "winapi", +] + [[package]] name = "x11-clipboard" version = "0.9.2" diff --git a/Cargo.toml b/Cargo.toml index 14ac301..6367591 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,6 +2,12 @@ edition = "2021" name = "radar-g" version = "0.1.0" +build = "build.rs" + +[[bin]] +name = "radar-gi" +path = "src/main.rs" +windows = true [dependencies] @@ -50,6 +56,9 @@ femtovg = "0.9.2" rust-embed = "8.5.0" tempfile = "3.12.0" +[target.'cfg(windows)'.build-dependencies] +windres = "0.2.2" + [features] default = ["sdf_font"] diff --git a/app-icon.rc b/app-icon.rc new file mode 100644 index 0000000..fd1821a --- /dev/null +++ b/app-icon.rc @@ -0,0 +1 @@ +IDI_ICON1 ICON "resources/radar-gi.ico" diff --git a/build.rs b/build.rs new file mode 100644 index 0000000..06fc41e --- /dev/null +++ b/build.rs @@ -0,0 +1,16 @@ +extern crate windres; + +#[cfg(windows)] +use windres::Build; + +fn main() { + #[cfg(windows)] + { + println!("cargo:rustc-link-arg=/SUBSYSTEM:WINDOWS"); + println!("cargo:rustc-link-arg=/ENTRY:mainCRTStartup"); + + Build::new().compile("app-icon.rc").unwrap(); + } + + +} diff --git a/check_sdf.py b/check_sdf.py deleted file mode 100644 index 4847199..0000000 --- a/check_sdf.py +++ /dev/null @@ -1,5 +0,0 @@ -import os - -with open("resources/Dokdo-Regular/0-255.pbf","rb") as f: - - pass \ No newline at end of file diff --git a/resources/radar-gi.ico b/resources/radar-gi.ico new file mode 100644 index 0000000000000000000000000000000000000000..36ba01402ec6c90e23397bb2db4ab0405063f33f GIT binary patch literal 101915 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

YuC=Zx>M@ZOWmNjySux)TYv}< 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 literal 0 HcmV?d00001 diff --git a/radar.toml b/resources/radar.toml similarity index 100% rename from radar.toml rename to resources/radar.toml diff --git a/src/main.rs b/src/main.rs index 25c6810..f9e93c3 100644 --- a/src/main.rs +++ b/src/main.rs @@ -25,6 +25,7 @@ pub struct Asset; use once_cell::sync::Lazy; static SETTING: Lazy = Lazy::new(|| setting::Setting::new()); + fn main() { env_logger::init(); run(move |gl, helper| App::new(gl, helper).unwrap()); diff --git a/src/setting.rs b/src/setting.rs index 55d4ed3..2b14a8a 100644 --- a/src/setting.rs +++ b/src/setting.rs @@ -1,6 +1,6 @@ -use crate::errors::*; +use crate::{errors::*, Asset}; use serde::{Deserialize, Serialize}; -use std::fs::{read, read_to_string}; +use std::{env, fs::{read, read_to_string}, io::Write}; use crate::{data_loader::DataType, utils::color_tools::hex_to_rgba_u8}; @@ -45,7 +45,20 @@ impl Setting { impl Setting { pub fn new() -> Self { - let file = read_to_string("./radar.toml").unwrap(); + let current_dir = env::current_dir().unwrap(); + + if !current_dir.join("radar.toml").exists() { + + let default_config = Asset::get("radar.toml").unwrap(); + + let mut folder_path = current_dir.clone(); + let mut conf = folder_path.join("radar.toml"); + + let mut file = std::fs::File::create_new(&conf).unwrap(); + file.write_all(&default_config.data).unwrap(); + } + + let file = read_to_string(current_dir.join("radar.toml")).unwrap(); let setting: Setting = toml::from_str(&file).unwrap(); setting } diff --git a/src/support/supporter.rs b/src/support/supporter.rs index f2f97c3..6a04c46 100644 --- a/src/support/supporter.rs +++ b/src/support/supporter.rs @@ -223,7 +223,7 @@ fn imgui_init(window: &Window) -> (WinitPlatform, imgui::Context) { config: Some(font_conf), }]); - println!("imgui global scale: {}", winit_platform.hidpi_factor()); + // println!("imgui global scale: {}", winit_platform.hidpi_factor()); imgui_context.io_mut().font_global_scale = (1.0 / 1.5) as f32; diff --git a/test.png b/test.png deleted file mode 100644 index 1612f62c53b67a6ccc43f5998cfc078184d0c87c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15520 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 -> vec4 { return vec4(0.0, 0.0, 0.0, 0.0); }; +@optional @link fn getMask(color: vec4, uv: vec4, st: vec4) -> vec4 { return color; } + +@export fn getSDFRectangleFragment( + uv: vec2, + textureUV: vec2, + textureST: vec2, + clipUV: vec4, + sdfUV: vec2, + sdfConfig: vec4, + repeat: i32, + mode: i32, + shape: vec4, + radius: vec4, + border: vec4, + stroke: vec4, + fill: vec4, +) -> vec4 { + var fillColor = fill; + var strokeColor = stroke; + + var scale = getUVScale(sdfUV); + + var sdf: SDF; + var texture = getTexture(textureUV); + var sdfRaw = 0.0; + var mark = 0.0; + + if (mode == -1 || mode == -2) { + // SDF Glyph + let sdfRadius = sdfConfig.x; + var expand = border.x; + var bleed = border.y; + + var d = (texture.a - 0.75) * sdfRadius; + var s = (d + expand / sdfConfig.y) / scale + 0.5 + bleed; + sdf = SDF(s, s); + + if (mode == -2) { + fillColor = vec4(texture.rgb, fillColor.a); + } + } + else { + // Textured box + if (texture.a > 0.0) { + if ( + ((repeat == 0 || repeat == 1) && (textureUV.x < 0.0 || textureUV.x > 1.0)) || + ((repeat == 0 || repeat == 2) && (textureUV.y < 0.0 || textureUV.y > 1.0)) + ) { + texture.a = 0.0; + } + + if (texture.a > 0.0) { + fillColor = vec4( + premultiply(fillColor).rgb * (1.0 - texture.a) + texture.rgb, + mix(fillColor.a, 1.0, texture.a), + ); + } + } + else { + fillColor = premultiply(fillColor); + } + + // Get appropriate SDF + if (mode == 0) { + if (fillColor.a <= 0.0) { discard; } + sdf = getBoxSDF(shape.xy, uv, scale); + } + else if (mode == 1) { sdf = getBorderBoxSDF(shape.xy, border, uv, scale); } + else { sdf = getRoundedBorderBoxSDF(shape.xy, border, radius, uv, scale); } + + // Bleed by 0.5px to account for filter radius + let bleed = 0.5; + sdf.outer += bleed; + sdf.inner += bleed; + } + + // Clipping this late because sooner than this causes issues in edge pixels + if (uv.x < clipUV.x || uv.y < clipUV.y || uv.x > clipUV.z || uv.y > clipUV.w) { discard; } + + var mask = clamp(sdf.outer, 0.0, 1.0); + + // SDF iso-contours + if (DEBUG_SDF) { + var s = 4.0; + var b = 0.0; + if (mode == -1 || mode == -2) { + s = 1.0; + b = 6.0; + } + + let o = (sdf.outer - 0.5) * scale / s; + var m = (max(0.0, o + 0.5 + b) % 1.0) - 0.5; + if (o < -b) { m = 1.0 + (o + b - 1.0); } + mark = clamp(1.0 - abs(m / scale) * s, 0.0, 1.0); + + if ((border.x != border.y) || (border.z != border.w) || (border.x != border.z)) { + let o = (sdf.inner - 0.5) * scale / s; + let m = ((o + 0.5 + b) % 1.0) - 0.5; + let mark2 = 1.0 * clamp(1.0 - abs(m / scale) * s, 0.0, 1.0); + + if (sdf.inner > -0.5) { mark = mark2 + mark * 0.5; } + } + } + if (mask == 0.0 && mark == 0.0) { discard; } + + // Blend stroke/fill + var color = fillColor; + if (sdf.outer != sdf.inner) { + // If less than 1px border, render 1px with opacity instead + var reduce = 1.0; + if (sdf.outer - sdf.inner < 1.0) { + reduce = sdf.outer - sdf.inner; + sdf.inner = sdf.outer - 1.0; + } + color = mix(fillColor, strokeColor, reduce * clamp(1.0 - sdf.inner, 0.0, 1.0)); + } + + if (HAS_MASK) { + color = getMask(color, vec4(textureUV, 0.0, 0.0), vec4(textureST, 0.0, 0.0)); + } + + if (!HAS_ALPHA_TO_COVERAGE) { + color = vec4((color.rgb + mark) * color.a * mask, color.a * mask + mark); + } + else { + color = vec4(color.rgb + mark, color.a * mask); + } + + if (DEBUG_SDF) { + return vec4(mix(color.rgb, vec3(mark), 0.5), color.a); + } + + return color; +}