feat: bump all visualizer panels from 30fps to 60fps
Updated frame throttle in all immersive panels: - LissajousPanel (X/Y) - VisualizerPanel (spectrum) - OscilloscopePanel - EnergyBandsPanel - TransientPulsePanel - AlbumReactivePanel SpectralRibbon was already at 60fps.
This commit is contained in:
6 files changed
+8
-8
No files matched your search
@@ -45,7 +45,7 @@
|
||||
|
||||
let animationFrame: number | null = null;
|
||||
let lastRenderTime = 0;
|
||||
const FRAME_INTERVAL = 1000 / 30;
|
||||
const FRAME_INTERVAL = 1000 / 60;
|
||||
|
||||
// Artwork-derived glow color
|
||||
let glowColor = $state('rgba(100, 100, 255, 0.3)');
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
const energyData = new Float32Array(NUM_BANDS);
|
||||
|
||||
let lastRenderTime = 0;
|
||||
const FRAME_INTERVAL = 1000 / 30;
|
||||
const FRAME_INTERVAL = 1000 / 60;
|
||||
|
||||
let bandColors = $state([
|
||||
{ r: 255, g: 60, b: 60 },
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
let trailIndex = 0;
|
||||
|
||||
let lastRenderTime = 0;
|
||||
const FRAME_INTERVAL = 1000 / 30;
|
||||
const FRAME_INTERVAL = 1000 / 60;
|
||||
|
||||
// Primary color extracted from artwork
|
||||
let plotColor = $state({ r: 0, g: 220, b: 200 });
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
const SMOOTHING = 0.3;
|
||||
|
||||
let lastRenderTime = 0;
|
||||
const FRAME_INTERVAL = 1000 / 30;
|
||||
const FRAME_INTERVAL = 1000 / 60;
|
||||
|
||||
// Colors extracted from artwork
|
||||
let colorLeft = $state({ r: 0, g: 220, b: 160 });
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
let isInitialized = false;
|
||||
|
||||
let lastRenderTime = 0;
|
||||
const FRAME_INTERVAL = 1000 / 30;
|
||||
const FRAME_INTERVAL = 1000 / 60;
|
||||
|
||||
// Ring particles - expanding circles triggered by transients
|
||||
interface Ring {
|
||||
|
||||
@@ -50,9 +50,9 @@
|
||||
// Smoothing for visual continuity
|
||||
const SMOOTHING = 0.6;
|
||||
|
||||
// Throttle rendering to 30fps max
|
||||
// Throttle rendering to 60fps
|
||||
let lastRenderTime = 0;
|
||||
const FRAME_INTERVAL = 1000 / 30; // ~33ms
|
||||
const FRAME_INTERVAL = 1000 / 60;
|
||||
|
||||
// Colors extracted from artwork (Material You style)
|
||||
let colorPrimary = $state({ r: 0, g: 220, b: 200 }); // Default cyan
|
||||
@@ -155,7 +155,7 @@
|
||||
function render(timestamp: number = 0) {
|
||||
if (!ctx || !canvasRef) return;
|
||||
|
||||
// Throttle to 30fps
|
||||
// Throttle to 60fps
|
||||
const delta = timestamp - lastRenderTime;
|
||||
if (delta < FRAME_INTERVAL) {
|
||||
animationFrame = requestAnimationFrame(render);
|
||||
|
||||
Reference in new issue
Block a user