Releases: adix992/GLaDOS-AI-Animation
Releases · adix992/GLaDOS-AI-Animation
3.2.1
3.2.0
3.1.1
Changelog
Visual Enhancements (3D Depth & Shading)
- Spherical 3D Shading: Completely rewrote the base coloring of GLaDOS's head. Replaced the flat, linear "ceramic" gradient with a multi-layered radial and vertical gradient system to mimic a top-down light source hitting a curved, spherical surface.
- Angled Side Bezels: Implemented "Multi-Stop Gradient Seaming" (placing contrasting gradient stops fractions of a percent apart) to create the optical illusion of sharp, angled outer bezels and a defined physical panel gap on the front face, accurately matching the physical reference model.
- Enhanced Depth of Field: Drastically darkened the hex colors of the rear torso and pivot assembly. This forces the background mechanical parts to naturally recede into the shadows, making the brightly lit head "pop" forward and creating a true sense of depth.
- Deepened Eye Cavity: Adjusted the shading of the inner bezel surrounding the eye slot to be darker, increasing the contrast and making the glowing optic feel further recessed into the chassis.
3.1.0
Changelog
Mobile & Tablet Performance Optimizations
- Hardware GPU Acceleration: Replaced standard 2D transforms with 3D hardware-accelerated transforms (
translate3dandtranslateZ(0)). This forces Android WebView and WallPanel to offload animation rendering from the tablet's CPU to the GPU, significantly reducing lag. - Pre-Compositing Elements: Added
will-change: transformandwill-change: opacity, fillto critical moving parts. This allows lower-end tablet processors to pre-calculate graphics layers before a dance beat drops, eliminating stuttering. - Optimized SVG Filters: Reduced the
stdDeviation(blur spread) on the glowing eye bloom and LED halos. Gaussian blurs are notoriously heavy on Android WebView, and this adjustment maintains the visual glow while recovering massive frame-rate drops during high-BPM songs. - Drift-Free Yield Scheduling: Rebuilt the dance loop timing engine. Instead of hammering the processor with
requestAnimationFrame60 times a second, it now usesperformance.now()to calculate the exact millisecond of processor lag, subtracts that from the next beat timer, and yields the CPU entirely during the downtime. This prevents tablet overheating and ensures zero audio-drift over long music sessions.
Visual Enhancements
- Spherical 3D Shading: Completely rewrote the base gradient of GLaDOS's head. Replaced the flat, linear "ceramic" gradient with a custom-offset
radialGradient. This mimics a 3D light source hitting a curved surface, giving her main casing the correct circular/spherical profile as seen in the physical model, even when viewed straight-on in 2D.
3.0.1
Changelog
Visual Editor & UI
- Native Integration: Replaced basic input fields with official Home Assistant UI components (
ha-entity-picker,ha-slider,ha-switch, andha-formfield) for a seamless, "native" look and feel. - Smart Entity Filtering: Updated dropdown menus to automatically filter for relevant domains:
- Voice Assistant: Filters for
assist_satellite. - Media Player: Filters for
media_player. - BPM Sensor: Filters for
sensor.
- Voice Assistant: Filters for
- Interactive Sliders: Converted Response Delay and Zoom Scale into touch-friendly sliders with live numeric value displays.
- Card Picker Support: Registered the card with
window.customCards, allowing it to appear automatically in the "Add Card" visual picker on the Lovelace dashboard.
Visual Enhancements
- Background Transparency: Added a toggle to switch between the standard Home Assistant card background and a fully transparent mode, allowing the GLaDOS model to float directly on the dashboard.
- Theming Consistency: Updated the CSS to pull colors from the active Home Assistant theme (
--ha-card-backgroundand--card-background-color) when not in transparent mode.
Stability & Performance
- Configuration Fallbacks: Improved the
setConfiglogic to allow the visual editor to load safely even before an entity is assigned, preventing "Entity not defined" crashes during initial setup. - Timer Lifecycle Management: Refined the memory cleanup routine to ensure the visual editor and the main card properly destroy all active animation loops when the editor is opened or closed.
3.0.0
Changelog
Performance & Optimization
- GPU Acceleration: Implemented
will-changeCSS properties on all moving SVG parts to promote them to dedicated compositor layers, significantly reducing CPU load during animations. - CSS Variable Logic: Refactored LED and indicator styling to use CSS custom properties, allowing for global color and opacity updates without expensive individual DOM attribute manipulations.
- Firehose Gatekeeper: Added a state-caching layer to the Home Assistant
set hassloop, ensuring the card only performs calculations when tracked entities (voice, media, or BPM) actually change. - Memory Management: Implemented an explicit cleanup routine in the
disconnectedCallbackto destroy all active timers and animation loops, preventing memory leaks when the dashboard is closed or changed. - High-Precision Timing: Replaced standard
setTimeoutintervals with aperformance.now()delta-correction algorithm for dance animations to prevent rhythmic drift during long songs.
New Features
- Dynamic Dance Engine: Added a mathematically-driven animation system that syncs GLaDOS's movements to the BPM of a media player.
- Macro-Choreography: Created 32 unique dance routines categorized into four speed "moods" (Chill, Groovy, Upbeat, and Intense).
- Randomized Routines: Implemented a non-repeating randomizer that switches dance styles every 16 beats to ensure organic, varied movement.
- Visual Configuration Editor: Built a dedicated UI editor class (
GladosCardEditor) allowing users to configure entities, zoom, and delays through the Home Assistant dashboard interface without YAML. - Response Delay Timer: Introduced a configurable delay (0–16 seconds) that holds GLaDOS in the "Processing" state before transitioning to the talking animation.
Visual Enhancements
- Spotify Integration Theme: Added a dedicated "Spotify Green" visual mode for the eye and LEDs that activates automatically during music playback.
- Rhythmic Pulsing: Integrated beat-synced flashing for LED panels and dynamic pupil dilation for the eye assembly.
- Aesthetic Adjustments: Decreased the vertical height of the eye slot by 15% for a more accurate model appearance while maintaining full eyelid functionality.
- Snappier Transitions: Refined the
requestAnimationFramelogic for glitch effects and state changes to ensure a more responsive mechanical feel.