Hacker News new | past | comments | ask | show | jobs | submit login
Bubbles (oimo.io)
1985 points by findhorn on Nov 11, 2022 | hide | past | favorite | 175 comments



It's a wonderful thing: a toy, not a game.

A game has a goal. Here you are free to experiment without being led or nudged. In the world of computer-based entertainment, it is refreshing.


I hate almost all games for this need to advance, earn levels, die and start over, compete and score. One of very few games I played when I was young was Test Drive 4*, where I would simply drive around and play, switching wipers on and off. I liked sports cars games, but I would often go backwards or wonder off the track, if game permitted. Also.. Neverhood. And creative mode in Minecraft.

*) Test Drive 3


> hate almost all games for this need to advance, earn levels, die and start over, compete and score

One of the only games I've truly enjoyed for a long time is SimCity. I learned this genre is sometimes called "idle games".

> What differentiates idle games from other types of game systems is that they can progress without player input. When players do engage, they tinker with a system, rather than encountering a confrontation that they can win or lose.

> Idle games invites players to participate in the game world, but does not revolve around them. You are, essentially, not a center of the world but a spectator.

On the Design of Idle Games, Katta Spiel et al. https://dl.acm.org/doi/pdf/10.1145/3311350.3347180 (PDF)

---

Neverhood looks fun! Love the claymation art.

The Neverhood Trailer (1996) - https://youtu.be/OOcWNOxoG6E


> I learned this genre is sometimes called "idle games".

That is very interesting. With "idle games" idea of playing games may be stretched to all different spaces of interacting with the computer/program, touching on learning, relaxation, ideation. Well... food for thought.

> Neverhood looks fun! Love the claymation art.

Neverhood is unique with its aesthetics as it was created with real, huge set made of real clay and cameras recording character walking.

Behind the Scenes - Neverhood and Skullmonkeys [Making of] https://www.youtube.com/watch?v=BrR3jbgocI4


Cool! I enjoyed watching the making of Neverhood. Fascinating how they created a world from literally a ton and a half of clay, then turned it into interactive entertainment. And how Steven Spielberg was involved, bringing together a team of artists, musicians, programmers, crafts people.

Love the physicality/materiality of clay, like one person said, how it has finger prints. Creatures and their environment all made by hand. I have a feeling, as society becomes more digitized and virtualized, people are missing the tactile sensation of touching real things. It might lead to a revival of interest in hand-made crafts, and material objects made of wood, ceramics, wool..

> With "idle games" idea of playing games may be stretched to all different spaces of interacting with the computer/program, touching on learning, relaxation, ideation.

The paper I linked above has made me curious about the concept of "idle games", and related topics like "gamification" of education, work, and life routines.

I realized, Stardew Valley is a famous example of an idle game without competition, winning or losing. I haven't played it, but I imagine it's a pleasant experience.

https://store.steampowered.com/app/413150/Stardew_Valley/

Found another one, World of Goo. https://store.steampowered.com/app/22000/World_of_Goo/


> I enjoyed watching the making of Neverhood.

Glad you liked it. I feel it also shows amazing atmosphere and spirit of people involved and this is what attracts us. You know, like backstage of Fraggle Rock or The Muppet Show.

I will definitely read the paper / explore the idea of 'idle games'. Thx again.


This is one of the allures of Forza Horizon for me. On the surface, it's an MMRPG, with social, collection, crafting, levels, puzzles, competition, et al, all of that can be turned off / ignored as desired.

With those items off, it's a great place to "drive" around, with different climates, seasons, amazing views, etc. Drive a classic convertible along a beachfront road. Explore dirt roads in an SUV during a snow storm.

It's no driving simulator, but it's a pleasant way to get away from the world for a while. If you've got the winter blahs and like driving / scenery, plug your PC or Xbox into the biggest display you have and get away for a while.


Not to mention kick ass tunes. I’m not sure if it’s a long standing collaboration, but Hospital Records use to curate the music


Judging from yt videos, amazing graphics and feel. Thx for suggestion.


I used to do this on Total Drivin’ on PS1. There were all sorts of ledges and off-track locations you could get yourself onto if you drove off track in the right way, sometimes even wall driving. Many, many hours.


For me was Midtown Madness 2, I used to climb the highest buildind in San Francisco with each vehicle and see how many fall it takes to wreck them.


It's zoning out, letting mind loose. Feels a bit like traveling, too.

I checked how Total Drivin' looked. Have a look at http://dos-scholar.blogspot.com/2011/04/test-drive-iii-passi..., if you want to see TD3.


Try out beam.ng and Microsoft flight simulator.


Have you tried Little Inferno?


Now, that is interesting concept. I will. :)


There's games where the goal is this wandering off. Outer Wilds does this quite well I think.


Ultima Online (unofficial servers)


Also a Neverhood fanboy. Respect.


> it is refreshing

I recommend exploring the top-right link and poking around this person's site. It felt like an old flash website and took me back a couple decades.


The last time I remember seeing an internet toy was over a decade ago: https://experiments.withgoogle.com/browser-ball


I'd count Townscaper as a toy as well.

https://oskarstalberg.com/Townscaper



Oddly satisfying. I really whish there was a good modern graphic city building games with the scale of Som City 2000 or 3000 ...


Cities: Skylines might scratch that itch.


Ye that game with the road mod is really nice.

But it kinda only works for towns.

The "big" buildings feel tiny due to the size limit (3x3?) so you can never get a satisfying city.


I love townscaper.


That is lovely.


If we're linking to internet toys, here's a bit of shameless self-promotion. Something I made a little while back: https://frogulis.net/little-bits/eye-on-a-string


Boing boing boing :D


I like it.


There is also https://thisissand.com/ - very good for long telephone conferences :-)


This was fun. I kept trying to "throw" the sand and use a forward momentum to the falling sand, but that doesn't work. No matter the speed of the mouse's movement, the falling particles always fall straight down. Otherwise I liked it enough that I am saving it for my next conference call as you've suggested


Soda constructor, circa 2000. Draw things with lines. Make some of them springd. Watch them move around. https://en.m.wikipedia.org/wiki/Soda_Constructor

Someone rebuilt it in Javascript. It’s not mobile friendly, so I haven’t been able to try much with it yet. https://peterfidelman.github.io/constructor/


Powdertoy is definitely a toy. https://powdertoy.co.uk/


Woah this is fantastic! thanks for sharing!


What I like to say to distinguish them is that for something to be a game there must be a lose condition


For more on the subject, Mark Rosewater (head designer of Magic: the Gathering): https://magic.wizards.com/en/news/making-magic/what-game-201...


Well, a sandbox game still has game in the name, right?


It reminds me of The Incredible Machine game.


Have you tried Kerbal Space Program? My son and I love to just roam around exploring, and trying to build different rockets and airplanes. We're just not interesting in the game, but the exploration is amazing. It is also a terrific learning tool.


Thought this was using three.js, but they built their own physics engine: https://github.com/saharan/OimoPhysics


This has vibes of the old Web, where amazing and niche things were happening. Apparently that engine is written in something called Haxe and its multi-platform.

Sometimes I wonder what I'm missing out by looking at lists curated by points given out by people who come together by hyper specialised interests. Should have heard of it before hearing about the millionth JS framework.


> Apparently that engine is written in something called Haxe and its multi-platform.

Haxe is interesting. I remember coming across it back in the days of Flash.

They also had a bytecode VM of their own called Neko.

At the time when I heard of it there were three platforms you could target with Haxe: JavaScript, Flash, and Neko.

It’s pretty cool to see that after all these years Haxe is still alive and in use.


Haxe can compile to even more targets these days, like C++, JVM, C#, PHP, Lua, etc. It also includes an interpreter to run without compiling, and there’s a newer, faster VM for Haxe called HashLink.


Haxe is a pile of dump with bugged generics, garbage tooling and no community. Unusable for anything bigger than toys.

Had to use it at a gaming startup. Everybody hated it, including the CEO, and we were planning moving to Unity as soon as possible.


I feel like I'd StumbleUpon this...


I wish there was something like what Stumbleupon was back in the day. I miss it.


Why isn't there?


Human curation (on their end, not SU users) is what made Stumbleupon great.

But human curation costs money, and can't (yet!!11~ scream the AI folks) be replaced by AI, so here we are.


Haxe is not that niche and is on the front page a lot:

https://hn.algolia.com/?q=haxe


I see, it pops up every few months but most of the time it appears that doesn't get any traction with exception of a few times in the last 10 years. Interesting case, at glance I think it should be getting more love than it has.


Three.js is just a rendering engine -- it wouldn't allow you to create something like this anyway.

Also, I don't believe that the bubble toy is related to their physics engine; it seems like a different type of physics. The engine is focused on 3D collisions, joints, springs, etc., whereas the bubble toy is simulating thin films.

I wish there was source code for the bubble toy so we could see how it works!


The author just explained the algorithm on Twitter: https://twitter.com/shr_id/status/1589238902325669893


Might take a little bit of refactoring ;) but https://oimo.io/works/bubbles/main.js


Written in haxe.


That caught me off-guard as well. I only ever written one thing in Haxe, but the experienced was mixed. It worked, but it also kind of painful to work with.

For context: Haxe is a programming language with the main purpose to have several compile targets for many programming languages.

Glad it is working for them.


Holly cow.

Old Version Written in ActionScript 3.0 Supports spheres and boxes as collision shapes Supports various joints (ball and socket, distance, hinge, prismatic, etc...) Fast and stable collision solver


Very impressive!


More of their amazing work here: https://oimo.io/works

Also they appear to be a student?


Also the homepage animation is a demo of Rayleigh–Taylor instability

homepage : https://oimo.io/

https://en.wikipedia.org/wiki/Rayleigh%E2%80%93Taylor_instab...


That's just beautiful. I wish I had free time, patience and skills to do something like that.


I especially liked the one for the works page itself! Very fun.


Especially that the gallery one is also in the gallery...


Yes! Try scrolling there, I almost missed that.


That website is a work of art.

This whole comment thread makes for happy reading.

A talented person creating cool original things and a bunch of smart people playing with, discussing and appreciating their work.


This reminds me of orisinal games!


I made a small tribute[0] to Winterbells last year when beginning to learn Godot. Spent much time with that music on loop way back when playing that cozy game!

[0] https://poacher2k.itch.io/summercoins


Apparently Winterbells runs in Ruffle! The FPS is a bit low though.


It's still playable here[0] as well! :)

http://freewebarcade.com/game/winterbells/


That stung me hard. Damn, Orisinal. I spent so much time playing those wonderful games on rainy afternoons with a tea pot. I had a dinky little Sony VAIO laptop, they were called "Netbooks" at the time around 2005. It was bliss.


the jelly one is incredible!!!


Looks like it's just one person


Delightful toys like this are why I love the web. I'd never go through the rigamarole of installing an app to play with this, but I sure will click a link.


While everyone's loving the bubble physics, I just like the attention to detail where if you put the fan _in front_ of the bubble blower facing away from it, it will still blow bubbles in that direction if the air stream would still be drawn through the blower.


You can also put the fan on top of the bubble blower... probably not very realistic, but a fun edge case :-)


Also, try moving a bubble behind the fan


you can move the bubble racket thingy to make huge bubbles as well !


Such a fun surprise when I realized that the fan does not only push air but pulls air in as well. The bubble wand placed to the left of the fan will still make bubbles out the right hand side. Interestingly it makes bigger bubbles than normal.


You can also rotate the fan...!


And move the spike!


It's a beautiful page! I miss sites like this.

Though strangely, it seems to disable all of my browser keyboard shortcuts. Even basic ones like going back, selecting the address bar, or changing the zoom level. I assume it's just listening for all key events, though I didn't even realize it was possible to override the basic ones.

edit: I found the bug! It has a list that's supposed to contain all possible keycodes, and if all the keys in your shortcut are on it that list it works. But I'm on macOS so my shortcuts all involve the "MetaLeft" or "MetaRight" key and those are missing from the list. Appending those keycodes to the minified array named `ba.G` fixes shortcuts for me!


I think it’s designed for mobile or touch screens. Works perfectly on iPhone, and you need touch for various features.


Absolutely love things like this that encourage a little bit of discovery instead of instructions - makes it a bit more magical, I think


Many years ago there was a viral web-based game involving...shooting frogs, perhaps?

The mechanics were not explained, you had to discover how to play it.

The problem: the primary mechanism was pointer clicks, but the Mac's tap to click didn't work.

So the game was in motion but nothing I did made any difference. I even wondered if perhaps the virality was a joke: the people who knew it didn't actually work were playing a trick on everyone else.

Anyway, I guess the moral of the story is that forcing the user to discover the mechanics works better when you control the full stack.

Or that those of us who cherish tap to click should occasionally press harder, just in case.


So soothing! Todo: implement Lifshitz-Slyozov-Wagner (L-S-W) theory of particle coarsening for soap bubbles (avg size increases with cube of time) ;)


I was wondering why I couldn’t blow bigger bubbles?


Drag the ringy thing.


This one is impressive too: https://oimo.io/works/sandvox/


That's really impressive


I love the gallery-ception:

https://oimo.io/works


Aha I see what you mean - that's great.

((check out the second-last item in the gallery))


There are a bunch of other equally cool physics simulations/games on that website, well done


Remove the spike and the little fan bubbles glom onto on another. Very cool. You can just wave the bubble wand around too…

This is very fun.


You can move the fan and the bubbles too


Oh nice! I figured out the fan and spike, but for some reason I didn't think to try to wave the want around :)


Nothing truer could have been spoken concerning this masterpiece.


Beautiful work. My 4 year old instantly got it. But she noted that bubbles usually pop themselves. She also wondered when the bubbles would run out.


Bubbles in this demo do absolutely pop by themselves.


sweet


My experience:

"Wow, neat. I wonder how they did this."

tries to right click (no context menu appears)

hit F12 for developer tools

"Oh, it's just a solid 173KB of javascript. No big deal."

notices the window resize affected the simulation

"There's now a big blob of bubbles coalescing at the top of my screen. Wow!"


-- fun - also - love authors twitter avatar is dandelion - https://twitter.com/shr_pc - feel like they are in tune with the poetry of physics --


> competitive programmings, mainly marathon-styled ones

What kind of competitions is this referring to?


His about page has some of his competitive programming results: https://oimo.io/about

(Sidenote: try dragging the profile pic!)


-- they talk a lot about hackathons in their tweets =) --

eg: https://atcoder.jp/contests/ahc016


This site is so good. I'm personally a huge fan of: https://oimo.io/works/jelly/


If you move your mouse really really fast, you can get through the bubbles without popping them.


It’s totally not anything at all related to quantum tunneling in anyway.


Would that actually make sense?

Maybe I don't want to know.

I'm still grappling with my last bout of "holy moly is the universe a simulation?" after reading about a way of dealing with latency in networked games that looks a lot like relativity.



What is the method of dealing with latency called?


Wow, the tiny physics engine is that advanced?


Perhaps lack of interpolation of mouse event points


I wonder if you could do this if you cranked your polling rate up to 500hz like many gaming mice can.


1000 hz! and yes, seems tied to fps is all :^)


144hz monitor? :D


240 as it happens to be. maximize the bubble game


These are magical little apps. I’ve spent a good while looking for these types of projects. It’s like coming across a gold nugget. Here is a site I’ve found with some amazing apps that are really fun to interact with. https://www.abowman.com/


Make sure to check out the rest of his site. Amazing. Pay careful attention to the recursive box on the “works” page.


It's really easy to see how big an impact iOS low power mode has in the framerate of something like this.


I watched it go for like a minute before realizing that I can actually interact! I love this.


beautiful work.

what I like about this is that that air is particle system. and so are bubbles are made of elastic strings. in a sense there is no bubbles here, it is interaction of particles, and bubbles and air wind is emergent property

back back to it

.. making bubble, but not quite

.. spinning a bubble


I absolutely love this and am curious about the technical details behind simulating soap bubbles like this (it looks like the code isn't available). Does anyone know what algorithm is being used?


Looks like a little bit of Voronoi patterns when the bubbles connect?

https://en.wikipedia.org/wiki/Voronoi_diagram


Agreed that Voronoi patterns emerge, but I'm not sure that they're using an explicit Voronoi algorithm to achieve that effect. I doubt it.

It's more likely IMO that the Voronoi pattern emerges from the constraints of the simulation.



Their physics engine doesn't seem related to the bubble toy as far as I can tell (although another HN comment implies it is). The physics engine implements 3D collisions between solid objects, joints, springs, etc. But the bubble toy is a different type of physics.


I love the fluid design on the "works" page as it resizes to the browser. Putting physics into your resize algorithm really shows a lot of care and attention.

Haxe is an awesome project that's been around for ages... I last looked at it as a potential replacement for AIR/AS3 a decade ago but the GPU capabilities weren't there yet with OpenFL. Seems like it's time to take a new look!


It didn't work (I think? It was just a white screen). I tried changing IP with CTRL+SHIFT+L and it wasn't doing anything, then tried copying the link and opening in a different window, but it wouldn't copy (because I used CTRL+L). Only then I realized it just doesn't let you press any button on the keyboard. JESUS CHRIST never show me this link again.


I spent wayyy too much time playing with this, just trying to understand all the dynamics. What makes the bubbles burst, or merge, or collapse, or partially burst and partially expand a connected bubble.

The impact of the various directions of the fan or pin.

So much variation in such a simple seeming base.


(dmix man long time no see! Let's hang out soon!)

I agree that this is a true work of art. The variation and attention to detail is delightful. I hope more people put together and share stuff like this on HN.


Some bubbles take much more than expected time to pop up. But eventually, they all pop up.


Some bubbles take more

than expected time to pop

But, they will all pop


It seems to me a very interesting and entertaining mechanic that could evolve into a game.



-- bubbles meets Tetris --


How do I make big bubbles with this? Because that's what I do with real bubbles, blow them to be as huge as possible. This can't do that.

But bubbles require constant slow airflow, at that pace this does not make any bubble at all.


I was surprised by all the projects on the website. This isn't even the coolest one


If the challenge was to get the pin inside a big cluster of bubbles, then I succeeded.


And make sure you put adequate tune for it https://www.youtube.com/watch?v=Jn0sB3CSMbo


context - it's an old-skool (Victorian era?) song that has been adopted by West Ham football club, and I guess some fans recorded a version of it here :)


Fun fact: if you zoom out a ton, place the bubble machine at the outside edge, and then zoom back in to standard, you get a crap ton of bubbles very quickly


You also get completely glitched bubbles, [briefly] self-intersecting bubbles, and bubbles within other bubbles depending on how you position stuff!


How do you zoom?


Is anyone aware of a DOS game named Kernreaktor (nuclear reactor) and knows where to find it? Sonetimes its game type is also called "bubbles".


I've never heard of it, but it looks like you can download it from here: http://www.kultmags.com/games.php?folder=S2VyblJlYWt0b3I= (link under the screenshots)


Yes, that's it! How many years I have searched for this ... Thank you so much for finding it!


No problem. :)


Therapeutic, please make it an app for the apple watch


Love it. Now I can just stare and turn my brain off ;)


Voronoi Cells just fascinate me for some weird reason.


The entire website is so cool


I love little toys like this.


Elegant and surprisingly fun.


Is this supposed to be a visual representation of the crypto market?


Strongly recommend experimenting with this after a bottle of Malbec!


anyone else make a giant scary bubble to take over the page


I can't even trash the fan with my pokey stick.


Fun! Would love to be able to throw the pin.


reminds me a lot of the little "games" that were included with wario ware on the nintendo DS


Blown away by the creativity.


Person appears to be super-smart.


this brings me internet joy, in a time when so much is terrible


Sangat cocok


so addicting...


12 years have passed since Steve Jobs killed Flash and finally people can make some decent interactive Web animations which correctly works on latest browsers.


Funny enough this project is a descendent of the flash lineage – it's written in haxe which first existed as an alternative ActionScript compiler. It's since evolved to be a strong functionally focused language of its own and perfect for writing games and interactives like this and now exports js instead. There's even a project (OpenFL) to preserve the old APIs!.

A good example of how haxe has evolved since AS2, the author (saharan) has written their own shader language _in_ haxe which they've used in this project. Haxe has a compile-time macro engine which you can develop DSLs to improve your workflow https://github.com/saharan/HGSL



Too bad flash was security cancer on top of browsers that already have enough of their own issues.


There was absolutely nothing that could be done about either of those problems.


I can think of one thing that could be (and was) done. ;)


well, is the web a safer place after they did it?


I remember some impressive native demos of platform games 12 years ago. Did the Flash to HTML5 converter work well? I never migrated my own "masterpieces"


You could make web animations 15 years ago. I don't know what's so special about flash that people miss in modern web.


> I don't know what's so special about flash

A GUI authoring tool which everybody can learn instead of some insane manual canvas coding.

From tech perspective, it works in my Pentium III computer, and the animation is streamable. Try that with JS?


With the abundance of software around I'm pretty sure that the're plenty of GUI authoring tools. According to quick Googling I can see that there's Adobe Animate which is successor of Adobe Flash and it supports HTML5 output.

I don't think that asking from modern software to work on Pentium 3 is reasonable. Software should work on a reasonable percentage of user computers. Pentium 3 is definitely outside of this definition. You didn't ask for Flash to work on 8086, did you? I'd expect it to be a challenge to even run Google Chrome on Pentium 3.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: