Live data from Hacker News

Show HN: A Marble Madness-inspired WebGL game we built for Netlify

5-million-devs.netlify.com

101–110 of 243 posts

Re: Show HN: A Marble Madness-inspired WebGL game we built for Netlify

#101
post #83
post #2

I'm one of the developers who worked on this project. Happy to answer any questions. More info on the project here: https://www.littleworkshop.fr/projects/5milliondevs/

Nice work, love to know more about the technical bits: what framework did you use for 3D scene, objects? how did you handle camera movements to track the ball? What library for sound as that was a nice touch. How did you do physics? Thanks!

Thanks. The WebGL rendering is based on Three.js. We're using Rapier for the physics simulation, and Howler for the audio. Our game engine is responsible for all the controls and updating things like the camera position (which follows the position of the ball at every frame).

Re: Show HN: A Marble Madness-inspired WebGL game we built for Netlify

#104
post #52

Earlier quoted context omitted.

The rendering engine is using Three.js which is a WebGL library. The physics/collision detection code is using Rapier through a WebAssembly module available on npm [1], which means that it can be used on the web even though it's originally written in Rust. The levels were built inside the Unity Editor, then exported to FBX, then went through a pipeline based on Blender python scripting that optimized their geometry,…

thanks for answering! Interesting you used unity for level layout. Interested to hear the advantage here. Considering you already use Blender down the pipe, how come you haven't used Blender for it or any other dcc app lile maya, max, whatever?

The main draw of the Unity Editor for us is how it auto-reloads assets, like 3D models, as soon as the asset file is updated. So the workflow is having your DCC app open in which you model things and export assets from, and Unity Editor to design your level where every model is always up-to-date.

This is not possible with Blender because it contains all models inside a single .blend file, so assets must be manually re-imported each you change them. There is a Link feature in Blender but in my experience it's not as good as what Unity does out of the box.

Re: Show HN: A Marble Madness-inspired WebGL game we built for Netlify

#105
post #102

Nice game, although I would expect to be able to use the gyroscope on mobile devices.

The issue with using the gyroscope is that the Device Orientation API requires websites to request user permission first (at least on iOS Safari), which we feared might drive away too many visitors.

Re: Show HN: A Marble Madness-inspired WebGL game we built for Netlify

#106
post #52

Earlier quoted context omitted.

The rendering engine is using Three.js which is a WebGL library. The physics/collision detection code is using Rapier through a WebAssembly module available on npm [1], which means that it can be used on the web even though it's originally written in Rust. The levels were built inside the Unity Editor, then exported to FBX, then went through a pipeline based on Blender python scripting that optimized their geometry,…

How did you assemble Rapier colliders from GLTFs?

Nothing complicated, we simply have initialization code that parses the GLTF scene on startup by iterating over the children of a specific group, and creating Rapier colliders for each of them (Triangle Mesh Colliders to be specific, in order to allow things such as curved ramps). Since their geometry is very simple, we can use directly the rendering geometry for the collider geo.

Re: Show HN: A Marble Madness-inspired WebGL game we built for Netlify

#107
post #2

I'm one of the developers who worked on this project. Happy to answer any questions. More info on the project here: https://www.littleworkshop.fr/projects/5milliondevs/

This was really fun. Right before this little hole on the second level, my macbook started running a bit slow and the collision detection somehow sucked the marble into the floor.

https://imgur.com/ZANb1cT

Re: Show HN: A Marble Madness-inspired WebGL game we built for Netlify

#108
post #101
post #83

Earlier quoted context omitted.

Nice work, love to know more about the technical bits: what framework did you use for 3D scene, objects? how did you handle camera movements to track the ball? What library for sound as that was a nice touch. How did you do physics? Thanks!

Thanks. The WebGL rendering is based on Three.js. We're using Rapier for the physics simulation, and Howler for the audio. Our game engine is responsible for all the controls and updating things like the camera position (which follows the position of the ball at every frame).

Why did you choose to do things this way instead of using Unity WebGL?

It's okay if the reason is, "because we make websites and the programming we know is Javascript" or whatever. It doesn't have to be about some objective comparison, like optimization or whatever, which isn't going to be true or necessarily matter anyway.

Re: Show HN: A Marble Madness-inspired WebGL game we built for Netlify

#109
Netlify CEO here.

I spotted Little Workshop when I saw https://equinox.space/ on Hacker News and noticed it was running on Netlify. Loved the fluidness, speed and art direction of a game running directly in the browser and working smoothly on my phone.

Immediately thought of them when we started thinking about a 5 million developer celebration and reached out. Love the result :)

Re: Show HN: A Marble Madness-inspired WebGL game we built for Netlify

#110

Earlier quoted context omitted.

Used Netlify back in the day (prior to Cloudflare pages / workers sites). The experience was largely smooth. HOWEVER, pricing was both opaque and prone to explode without warning, with little to no way of setting billing limits. Ultimately, that was too risky for the kind of small-ish projects I'm running. They had the Netlify CMS for a while, which I quite liked. But that's gone now. Be interesting to know what thei…

Netlify is Vercel before Vercel.

Netlify being related to Gatsby and Vercel being related to Next.js.
Post reply on HN