Aquarium.ru – endlessly generated psychedelic WebGL experience 🧿

aquarium.rutrailercreating processannouncement

24 years after the release of the first version of the site, the founders of Russian rock music, “Aquarium” got a new psychedelic site with endless worlds variants: just scroll to the end to see a new one.
So, every time you scroll to the end, site generates a new bunch of the effects. There’s ~20 presets created by humans and the others are unique — no one except you see it again.

Technically, I wrote custom engine for the scrolling experiences and the editor for the effects creating and generation. I’ll release it in open source a little bit later.

Under the hood it uses @mrdoob three.js and @vanruesc post-processing for the rendering and gltf model parsing. For the textures I use .basis format packed into the .glb files because I ran into a limit on video memory on iOS. There’s camera, post-processing, audio, morph effects it this engine. There also nice things like music whose speed depends on the speed of scrolling — like vinyl records effect (you can hear it in the trumpet that goes right behind the stage with the albums, try to fast scroll up and down) or the sound effect behind the door — you can hear it in the broken entrance.

aquarium.rutrailercreating processannouncement

14 Likes

I see what you mean by “endless”. I got some frame stutter after scrolling for a while. I’m guessing it’s due to a large amount of post-processing.

Great work, looks nice.

:unicorn: wow that was quite a trip! A few stutters for me too early on but they didn’t really hurt the experience.

I’m not a fan of БГ, but I like that project :wink:

1 Like

That’s some really impressive stuff :+1:
I reached Aquarium 23.

Such a cool idea !

Awesome experience :star_struck:
Is there creating process in english?

DolphinIQ I’ll wright detailed technical article a little bit later :slight_smile:

4 Likes

Really incredible piece of art!

Fantastic work! (I’m a little jealous, actually!)

I experience stuttering only when entering the “world” i think once it’s in the culling does it’s thing or something and it’s smooth as butter.

:heart_eyes: Amazing!!! If anyone could throw some links this way to understand how this magic works I would be eternally grateful.
I’ve been searching for an explanation on how to go through a door and hide the room behind/inside it until you pass through it, like infinite rooms. But Im just a beginner and Im struggling to comprehend. My guess would be to use Raycaster to render when at a certain distance, but my mind has just been blown! Any help would be appreciated.

Один из лучших проектов на этом форуме. Awesome work!