Z-GL 1.1.0 — The Premier Shader Desktop Environment
Changelog
All notable changes to the Z-GL shader desktop editor project for version 1.1.0 are documented below. This release primarily establishes the native desktop infrastructure for Windows 10/11 and advances the shader development workflow.
[1.1.0] - 2026-05-16
Added
- Native OS Window Integration: Switched to a frameless architecture leveraging native window decorations. Added a custom title bar with explicit drag regions, minimize, maximize, and close controls tailored for Windows 11 design guidelines.
- Mica & Acrylic Visuals: Integrated the
window-vibrancyTauri plugin to inject native Windows 11 Mica and Acrylic blur effects into the application layout shell. - System Tray Management: Added a dedicated system tray icon featuring a native context menu allowing users to quickly
Openthe application instance,Pause Renderexecution to save processing cycles, or trigger a cleanQuit. - Dynamic Title Tracking: Added a title management routine updating the native OS window bar dynamically via
window.setTitle(shaderName)during file imports or internal asset operations. - Native File System Dialogs: Replaced standard web file picking hooks with secure, native OS file picking procedures powered by the Tauri
dialogplugin API (openFileDialog,saveFileDialog). - Drag-and-Drop Infrastructure: Implemented native file-drop interceptors enabling direct instantiation and parsing of
.glsl,.frag,.fs, and.jsonfile types dropped over the active viewport area. - Windows Explorer Association: Added full file association capabilities via the NSIS compilation layout, allowing
.glsl,.frag, and.fsfiles to launch natively within the Z-GL environment directly from disk. - CLI Boot Operations: Added deep CLI argument routing support, allowing execution sequences like
z-gl.exe shader.glslto directly parse and ingest localized source fragments at startup. - Local Application Hub Tracking: Introduced an automated Most-Recently-Used (MRU) tracking database in the
Fileutility tree, maintaining the 10 most recent filesystem paths across individual application sessions. - Project Structure Packaging (
.zgl): Developed a localized project archiving protocol utilizing the current ZIP bundle mechanism. A.zglarchive bundles the coreshader.glsl, a standard metadata file (meta.json), references to explicit input streaming channels (channels/), and localized multi-variable presets (presets/). - Background Auto-Save Engine: Added a resilient auto-save pipeline writing persistent cache structures to a temporary data node every 30 seconds, coupled with automated recovery procedures triggered on unhandled app crashes.
- Hot-Reload Disk Watcher: Exposed an automated file monitoring option leveraging Tauri's system event detection loop to dynamically hot-reload asset sources on disk when edited inside an external IDE.
- Shader Channel Embedding: Configured an asset copying pipeline within the bundle logic to import and inline local channel streams (textures, audio targets) directly into the portable
.zglwrapper format. - High-Resolution Frame Pacing: Enhanced the master RAF sequencer (
raf-loop.js) with native support forrequestVideoFrameCallbacktimestamps to maintain exact synchronization with high-refresh display hardware. - WebGPU Metric Analysis: Added dedicated GPU timing reporting routines within the performance UI layer, driven by native WebGPU
timestamp-querypipelines to calculate execution durations independently of JS main-thread runtime overhead. - Fixed-Ratio Screen Profiling: Added predefined rendering resolution options (720p, 1080p, 1440p, 4K) running independently of the active viewport scaling metrics.
- Headless Screenshot Rendering: Added an alternative rendering pipeline utilizing
OffscreenCanvashooks for generating unthrottled screenshots and batch image exports without visual viewport stutter. - Advanced Environment Diagnostics: Extended the performance dashboard to handle WebGL hardware extension evaluations, tracking specific runtime boundaries like maximum texture dimensions, floating-point texture alignment parameters, and MSAA sample counts.
- Monaco GLSL Language Service: Added a dedicated language registration package (
monaco.languages.register) supporting GLSL ES 3.0 within the editor core. - TextMate Highlighting Specification: Implemented a comprehensive TextMate grammar definition specifying unique highlighting behaviors for key operations, preprocessor controls, specific type variables, and internal constants.
- Semantic Token Profiling: Isolated core ShaderToy Uniform tokens (
iTime,iResolution,iMouse,iChannel0-3) into distinct coloring criteria to differentiate system properties from arbitrary user definitions. - Interactive API Documentation Tooltips: Integrated an inline hover service (
monaco.languages.registerHoverProvider) mapping full signature details and parameter instructions to standard GLSL primitives and built-in uniforms. - Intelligent Auto-Completion Registry: Bound automated snippet injection utilities providing template structures for common rendering techniques, Signed Distance Field (SDF) functions, and structural main blocks.
- Live Gutter Error Parsing: Connected an active syntax compiler that intercepts WebGL translation faults and binds red line/column error decorations to the text editor channel via
monaco.editor.setModelMarkers. - WGSL Compatibility Warners: Implemented diagnostic analyzer tracking for cross-compilation hazards (implicit data casting discrepancies, unstable ternary usage inside multi-layered operations, or array indexing anomalies) using yellow warning indicators.
- Structural Code Utilities: Activated multi-cursor edit paths, internal definition tracing routines, folding layouts for active preprocessor structures, custom color-coded bracket rules, and an AST-based command palette hookup.
- WGSL Transpiler Optimization: Upgraded the internal GLSL-to-WGSL transpilation module to safely map and unroll complex macro commands, structure loops,
samplerCubebinds, precision scopes, and explicit channel sampling formats (textureLodmappings). - WGSL Real-Time Preview Panel: Introduced a split-pane structural view layout to actively inspect transpiled WGSL code side-by-side with the current GLSL source.
- WASM-Driven Input Verification: Embedded a local server-less version of the
glslangcompiler engine running in WebAssembly to analyze structural health prior to hardware execution passes. - Dedicated WebGPU Pipeline Upgrade: Configured the WebGPU rendering framework to support structural multi-pass execution pipelines (Buffers A/B/C/D) via atomic
GPUTextureping-pong feedback loops, explicit pass-by-pass timestamp tracing, and HDR canvas target alignments (rgba16float). - Timeline Keyframe Layout System: Designed a professional layout editor featuring an analytical curve view and an active dope-sheet timeline to bind, manipulate, and drag parameter values across linear, constant, or customized Bézier interpolation models.
- WebCodecs Rendering Exporters: Integrated hardware-accelerated video rendering routines into the application shell using WebCodecs options to process frame-accurate MP4, WebM, or PNG sequence exports.
Changed
- Macro Memory Execution Barriers: Unified all active frame routines into a singular system loop managed by
gl/renderer.jsto strictly maintain structural downward asset layers. - Zero GC Uniform Write Pipeline: Refactored the core configuration structure to funnel input parameters using modern
SharedArrayBufferstructures andAtomicsmemory operations, completely removing garbage collection performance hitches. - Optimized Vertex Buffering Layout: Replaced standard Three.js
PlaneGeometryarrays with a single full-screen triangle optimization routine to decrease processing requirements down to a single draw call without indexing overhead.