Marbles
Roles: Sole-developer
Responsible for all elements including: Programming, Modelling, Physics integration, Lighting, Trailer production
You may try it on the browser here.
​
Marbles is a marble simulator made in WebGL (HTML5), built with Unity, and playable on the website above.
​
​
​
​
​
​
​
​
​
​
​
​
All footage in the trailer is captured from the browser experience. (No raytracing, even the cinematic 'marble follow', cutscene mode, are all built-in features.)
​
It evolved from a short cinematic inspired from wanting to relive a childhood, but I decided to build an interactive app mostly for myself to try out, and to share with friends. I built features over time as I got suggestions, like the ability to ride through your creation as a marble.
I also added a night mode with glowing marbles which completely evokes a different mood from the experience.
Completely physics based (using Unity PhysX engine), the hardest part initally was programming the block placement and validating block rotations.
​
Once the basics were done, I added more experimental stuff. The most epic inclusion were the wheel, party blocks that play sound effects and a map loader. And a lot of fluff like a Marble Follow mode. The launcher was a fun idea to make it more dynamic.
​
I love space, so the marble textures are actually planets in our solar system.
​
I finished the prototype on the second day and made a trailer, but I kept adding more and more stuff, the trailer itself just got longer and more epic and evolved with a new version every day.
​
One of the most epic additions were wheels, made into the second highest unlockable!
And also unbelievable, I was able to squeeze in real-time multiplayer, which allows you to build together with other people online!
The whole project was built in 8 days. Here is the timeline breakdown:
​
20 Oct: Created project, cinematic, first playable demo with 4 blocks (Straight, Curve, Slope, Hole)
21 Oct: Added Launcher & Elevator blocks, cutscene & follow marble mode
22 Oct: Added Party Block and Invisible blocks, sliders, random generation of special roofs/poles
23 Oct: Added Wheel Block, refine UI, tons of shortcut keys, Mobile build adaptation
24 Oct: Added End Block, Ride Marble mode, Map Loader
25 Oct: Experimental multiplayer and optimizations
26 Oct: Added a fancy Main Menu
27 Oct: Added Flaming Hoops
​
I was adding a new block every second day, and one of the users joked to add flaming hoops. That was an insane suggestion, so guess what I did?
Yep, I added flaming hoops.
A version of the project supports real-time raytracing, pushing for higher quality lighting and fidelity which gives a more realistic experience.
This is strictly limited to a desktop downloadable experience however, and I restricted its use to cinematic productions of the initial concept before it became a playable app. Here is a behind the scenes video with bloopers and extras. This was built with Unity and has cross platform capabilities.
I then concluded with making a pretty main menu with cutscene animations for better presentation, as well as the ability to load in maps for users who just want to watch and don't want to exercise their creativity so much.