Optimise
All checks were successful
Check & deploy / build (pull_request) Successful in 1m51s

This commit is contained in:
Andras Schmelczer 2026-05-21 20:33:49 +01:00
commit ed5a4379db
76 changed files with 1418 additions and 988 deletions

View file

@ -1,166 +1,255 @@
import type { GardenAudioVibeSettings } from '../audio/garden-audio-config';
import { defaultGardenAudioVibeSettings } from '../audio/garden-audio-config';
import { VibeId, type VibePreset } from './types';
const defaultAudioSettings = {
idleIntensity: 0.08,
bpm: 74,
rampUpIntensity: 0.85,
rampUpTime: 0.08,
noteLength: 0.42,
notePitchOffset: 0,
} satisfies Omit<GardenAudioVibeSettings, 'brightness'>;
export const defaultVibeId = VibeId.CandyRain;
export const defaultVibeId = VibeId.AuroraMycelium;
export const vibePresets: Array<VibePreset> = [
{
id: VibeId.CandyRain,
name: 'Candy Rain',
id: VibeId.AuroraMycelium,
name: 'Aurora Mycelium',
colors: [
[255, 93, 162],
[54, 215, 208],
[255, 216, 77],
[78, 255, 176],
[154, 99, 255],
[169, 238, 255],
],
backgroundColor: [16, 21, 31],
backgroundColor: [6, 13, 22],
settings: {
backgroundGrainStrength: 0.018,
brushSize: 14,
clarity: 0.62,
decayRateTrails: 965,
individualTrailWeight: 0.07,
moveSpeed: 82,
sensorOffsetDistance: 38,
spawnPerPixel: 0.22,
turnSpeed: 58,
backgroundGrainStrength: 0.016,
brushSize: 20,
clarity: 0.52,
decayRateTrails: 988,
individualTrailWeight: 0.085,
moveSpeed: 54,
sensorOffsetDistance: 72,
spawnPerPixel: 0.13,
turnSpeed: 35,
},
audio: {
...defaultAudioSettings,
brightness: 1.04,
...defaultGardenAudioVibeSettings,
idleIntensity: 0.12,
bpm: 60,
rampUpIntensity: 0.7,
rampUpTime: 0.14,
noteLength: 0.86,
notePitchOffset: -2,
brightness: 0.84,
},
},
{
id: VibeId.SunlitMoss,
name: 'Sunlit Moss',
id: VibeId.EmberCircuit,
name: 'Ember Circuit',
colors: [
[131, 212, 131],
[246, 215, 107],
[94, 193, 161],
[255, 95, 38],
[255, 43, 132],
[43, 219, 255],
],
backgroundColor: [23, 32, 22],
backgroundColor: [17, 10, 8],
settings: {
backgroundGrainStrength: 0.014,
brushSize: 16,
clarity: 0.68,
decayRateTrails: 975,
individualTrailWeight: 0.06,
moveSpeed: 70,
sensorOffsetDistance: 46,
spawnPerPixel: 0.18,
turnSpeed: 44,
backgroundGrainStrength: 0.03,
brushSize: 8,
clarity: 0.82,
decayRateTrails: 918,
individualTrailWeight: 0.04,
moveSpeed: 150,
sensorOffsetDistance: 24,
spawnPerPixel: 0.31,
turnSpeed: 130,
},
audio: {
...defaultAudioSettings,
brightness: 0.92,
...defaultGardenAudioVibeSettings,
idleIntensity: 0.03,
bpm: 124,
rampUpIntensity: 1.35,
rampUpTime: 0.04,
noteLength: 0.18,
notePitchOffset: 7,
brightness: 1.34,
},
},
{
id: VibeId.CoralTide,
name: 'Coral Tide',
id: VibeId.VelvetObservatory,
name: 'Velvet Observatory',
colors: [
[255, 127, 110],
[64, 184, 255],
[244, 240, 166],
[72, 98, 255],
[255, 89, 176],
[235, 236, 255],
],
backgroundColor: [15, 24, 34],
backgroundColor: [7, 8, 20],
settings: {
backgroundGrainStrength: 0.022,
brushSize: 13,
clarity: 0.58,
decayRateTrails: 955,
individualTrailWeight: 0.055,
moveSpeed: 90,
sensorOffsetDistance: 35,
spawnPerPixel: 0.25,
turnSpeed: 62,
backgroundGrainStrength: 0.01,
brushSize: 24,
clarity: 0.45,
decayRateTrails: 992,
individualTrailWeight: 0.095,
moveSpeed: 45,
sensorOffsetDistance: 86,
spawnPerPixel: 0.1,
turnSpeed: 24,
},
audio: {
...defaultAudioSettings,
brightness: 1,
...defaultGardenAudioVibeSettings,
idleIntensity: 0.14,
bpm: 56,
rampUpIntensity: 0.6,
rampUpTime: 0.16,
noteLength: 1.15,
notePitchOffset: -5,
brightness: 0.72,
},
},
{
id: VibeId.MoonOrchid,
name: 'Moon Orchid',
id: VibeId.LichenSignal,
name: 'Lichen Signal',
colors: [
[201, 147, 255],
[125, 216, 255],
[240, 244, 255],
[174, 205, 91],
[71, 162, 126],
[229, 117, 71],
],
backgroundColor: [20, 18, 29],
backgroundColor: [18, 24, 17],
settings: {
backgroundGrainStrength: 0.018,
brushSize: 12,
clarity: 0.64,
decayRateTrails: 968,
backgroundGrainStrength: 0.028,
brushSize: 17,
clarity: 0.66,
decayRateTrails: 974,
individualTrailWeight: 0.065,
moveSpeed: 76,
sensorOffsetDistance: 42,
spawnPerPixel: 0.2,
turnSpeed: 52,
moveSpeed: 68,
sensorOffsetDistance: 52,
spawnPerPixel: 0.19,
turnSpeed: 38,
},
audio: {
...defaultAudioSettings,
brightness: 0.9,
...defaultGardenAudioVibeSettings,
idleIntensity: 0.1,
bpm: 68,
rampUpIntensity: 0.8,
rampUpTime: 0.1,
noteLength: 0.62,
notePitchOffset: -3,
brightness: 0.82,
},
},
{
id: VibeId.PeachNeon,
name: 'Peach Neon',
id: VibeId.UltravioletSiren,
name: 'Ultraviolet Siren',
colors: [
[255, 155, 115],
[91, 240, 169],
[110, 168, 255],
[184, 75, 255],
[0, 224, 255],
[214, 255, 72],
],
backgroundColor: [25, 23, 22],
backgroundColor: [13, 9, 31],
settings: {
backgroundGrainStrength: 0.024,
brushSize: 15,
clarity: 0.55,
decayRateTrails: 948,
individualTrailWeight: 0.05,
moveSpeed: 96,
sensorOffsetDistance: 32,
spawnPerPixel: 0.24,
turnSpeed: 70,
backgroundGrainStrength: 0.02,
brushSize: 11,
clarity: 0.72,
decayRateTrails: 946,
individualTrailWeight: 0.052,
moveSpeed: 118,
sensorOffsetDistance: 30,
spawnPerPixel: 0.28,
turnSpeed: 96,
},
audio: {
...defaultAudioSettings,
brightness: 1.08,
...defaultGardenAudioVibeSettings,
idleIntensity: 0.04,
bpm: 112,
rampUpIntensity: 1.2,
rampUpTime: 0.05,
noteLength: 0.25,
notePitchOffset: 5,
brightness: 1.22,
},
},
{
id: VibeId.FrostBloom,
name: 'Frost Bloom',
id: VibeId.TidepoolLantern,
name: 'Tidepool Lantern',
colors: [
[180, 247, 255],
[158, 200, 255],
[255, 184, 210],
[30, 219, 194],
[61, 118, 255],
[255, 191, 91],
],
backgroundColor: [16, 24, 32],
backgroundColor: [5, 20, 28],
settings: {
backgroundGrainStrength: 0.018,
brushSize: 15,
clarity: 0.6,
decayRateTrails: 963,
individualTrailWeight: 0.058,
moveSpeed: 88,
sensorOffsetDistance: 44,
spawnPerPixel: 0.22,
turnSpeed: 60,
},
audio: {
...defaultGardenAudioVibeSettings,
idleIntensity: 0.08,
bpm: 82,
rampUpIntensity: 0.95,
rampUpTime: 0.08,
noteLength: 0.48,
notePitchOffset: 0,
brightness: 0.98,
},
},
{
id: VibeId.PaperLanternFog,
name: 'Paper Lantern Fog',
colors: [
[255, 174, 104],
[242, 102, 107],
[132, 211, 185],
],
backgroundColor: [31, 23, 20],
settings: {
backgroundGrainStrength: 0.036,
brushSize: 22,
clarity: 0.5,
decayRateTrails: 984,
individualTrailWeight: 0.08,
moveSpeed: 56,
sensorOffsetDistance: 64,
spawnPerPixel: 0.14,
turnSpeed: 32,
},
audio: {
...defaultGardenAudioVibeSettings,
idleIntensity: 0.13,
bpm: 64,
rampUpIntensity: 0.72,
rampUpTime: 0.12,
noteLength: 0.9,
notePitchOffset: -4,
brightness: 0.76,
},
},
{
id: VibeId.ChromePollen,
name: 'Chrome Pollen',
colors: [
[235, 255, 238],
[255, 214, 48],
[77, 240, 157],
],
backgroundColor: [9, 13, 12],
settings: {
backgroundGrainStrength: 0.012,
brushSize: 18,
clarity: 0.7,
decayRateTrails: 982,
individualTrailWeight: 0.075,
moveSpeed: 62,
sensorOffsetDistance: 52,
spawnPerPixel: 0.16,
turnSpeed: 40,
brushSize: 10,
clarity: 0.9,
decayRateTrails: 935,
individualTrailWeight: 0.045,
moveSpeed: 104,
sensorOffsetDistance: 36,
spawnPerPixel: 0.24,
turnSpeed: 78,
},
audio: {
...defaultAudioSettings,
brightness: 0.88,
...defaultGardenAudioVibeSettings,
idleIntensity: 0.05,
bpm: 96,
rampUpIntensity: 1.05,
rampUpTime: 0.07,
noteLength: 0.3,
notePitchOffset: 3,
brightness: 1.18,
},
},
];