A three.js npm template

rotating demo cube

I can’t imagine dropping a series of <script> tags on a page to build a minimally complex website anymore. I’ve got used to browserify and so I can’t go back to building my fancy 3D thingies like it was 2012 all over again.

So I made this minimal template that sets the bare minimum you might need to build a three.js powered site using browserify via gulp. That lets you use any other npm-based modules and libraries you want! So your code should not be messy and/or a tremendously big file with everything tucked on it.

There’s also some extra help like a file watcher… and not much more, really.

Do let me know if you use it for something cool… or if you can/want to help on this issue! 😀

Audio for the masses

The video above is from LXJS – the Lisbon JavaScript conference, which happened more than a month ago. I gave this talk past week again at VanJS, so I decided it was time for that belated write up on this talk.

If you want to follow along, or play with the examples, the slides are online and you can also check out the code for the slides.

As I’ve given this talk several times I keep changing bits of the content each time depending on what the audience seems more interested in, plus I also sometimes improvise stuff which I don’t remember when writing the final write up, so if you were at any of the talks and see that something’s missing or different now you know why! I’ve also added a section at the end with frequent questions I’ve been asked, hope that’s useful for you too.

Continue reading “Audio for the masses”

to_the_beat // js

As promised, I submitted an entry to the DemoJS party, held past week-end in Paris. It’s to_the_beat // js

to_the_beat // js

… and just in case you hadn’t figured it out already, it’s a sort of JavaScript version of the “native” to_the_beat that I wrote back in 2008. This time I replaced OpenGL 1.x and SDL with WebGL + WebAudio, via sorollet.js, three.js, and tween.js. The Holy Trinity! 😛

Hint: since it is using sorollet and everything is generated on the fly, you can bring up the synth GUI by pressing D while the demo is playing, and start twisting knobs which can be pretty satisfactory and hypnotic, because the player is configured to loop the song.

It ended at 4th position, which doesn’t sound bad… unless there were only four participants in the Demo Compo, that is! In any case, it was funny to watch the compos via the stream the organisers set up: mine definitely needed A LOT MORE of bandwidth, as shown:

to_the_beat // js streamed

I would have added some microphone to record the crowd reaction, as otherwise the experience was a bit sterile, but I don’t know if shouting Alleeeez is still in vogue amongst French demosceners anymore…

I will write about the conversion process and give the demo a page in my demoscene projects list later, but for now, just enjoy the demo! 🙂

Tiga GameHackDays 2013, day 3 (and final!)

We shipped something! Yayyy! Here: Tiny Barbarian.

Our initial aim was to deploy it to GitHub pages, but for some reason GitHub wasn’t serving the custom font with the proper content-type, and was returning 404’s for some of our textures (why?) so in a show of pragmatism Belén simply uploaded our tiny game to Heroku. That was about 30 minutes before the deadline!
Continue reading “Tiga GameHackDays 2013, day 3 (and final!)”

Tiga GameHackDays 2013, day 2

First: failing miserably at live-blogging. We’ve been so deep-down on the crazy coding that I haven’t had much time to even stand up and walk around.

Second: waking up this morning was horrible, as I had spent the night programming in my sleep. Terrible, terrible, trust me. When that happens to me, it’s usually a nightmare about trying an approach, it doesn’t work, running it again, in a loop, during the whole night. Arghhh. Maybe the extra two hours of pub-hacking had something to do with it and my brain was just so excited to stop for, say, a few hours and let me actually rest! I seriously hope that doesn’t happen tonight… or I’ll be a zombiesole tomorrow ø_ø

Continue reading “Tiga GameHackDays 2013, day 2”