This project was built as a commissioned interactive web environment to test a client hypothesis. The project demonstrates scene composition, PBR materials, an optimized asset pipeline, and runtime performance techniques that make visually rich experiences run smoothly in the browser.
Demo & code
Live demo:
What this project highlights
Immersive tropical environment with layered materials, NPC entities, mini-games and environment lighting.
Custom GLSL shaders for natural effects (wind on foliage, surface water ripples, subtle particle systems).
GLTF asset pipeline with runtime compression/preprocessing for faster load times.
Responsive controls and input handling so the scene works on both desktop and mobile
Optimization techniques: GPU instancing, texture compression and frustum/occlusion-aware updates.
That said, the project still has some major issues, loading time being the main one.
Right now it loads all 5 islands first and only then becomes interactive. My current idea is to load the first island with the player already spawned, remove the loading screen immediately, and let the remaining 4 islands load in the background.
Curious what you think about this approach.
6 Likes
Nicely done!
Mouse controls please!
Left/Right = Rotate
Forward/Backward = Forward/Backward
Mouse Button (if available): Jump etc.
1 Like
It reminds me of Coastal World - it has the same effect of disappearing obstacles in front of the camera.
1 Like
awesome, nicely done, luv it
1 Like
Thanks!
The current control scheme is intentional. The project is more about scene exploration than character movement, so features like jumping were deliberately left out.
Appreciate the feedback though 
Yeah, thatβs a fair observation 
Tropical World was definitely inspired by Coastal World, especially in terms of camera handling and hiding geometry in front of the camera. I really liked how clean and unobtrusive that solution felt there.
1 Like
i love the disappearing effect nice touch, i would not recommend the idea of loading first island then the other 4:
My current idea is to load the first island with the player already spawned, remove the loading screen immediately, and let the remaining 4 islands load in the background.
if you are using webp or jpg for the images texturing you will face a huge frame drop unless
doing the textures as KTX2 and tailing the textures for 512px.
i have been working on a project recently and those where one of the big issues i see your project also have (especially on firefox the project crashed with me after loading)