November 14, 2013 · technical gaming projects

back to work

I got back into Encounter because I wanted to stress-test the engine. A big playfield with all these obelisks, and we’re only firing a few shots at a time. Surely we can do something more spectacular…

What if I put a shooter in the playfield spewing shots in all directions, bouncing willy-nilly? Would three.js hold up? (hint: yes) Would my frankly underpowered Macbook Pro melt under the pressure? (hint: yes again)

I spent an hour or two adding a new ShotSpawner object that would rotate in place, firing a shot every 100ms or so. The resulting noise is intolerable : )

With this running and bouncing spheres all over the playfield, after a few minutes my Macbook screen started to pulse off into dead blackness as the temperature reached critical levels. After some quick thinking a swift Cmd-W to the Chrome window killed off the 3D-ness and gave the CPU a break. Then off to install a temperature monitor. No permanent damage.

Today’s work was all refactoring - putting the Obelisk and Grid code into dedicated classes and labelling constants.

For me, trying to do ‘normal’ OO things in Javascript when I’m not using the language every day is an absolute misery. There’s no single way to do things, so the resources you look up are not consistent. I’m not deep enough into the Object/prototype semantics regularly for it to stick in my brain.

javascript: the evil parts

I’m enjoying inching it forward. Also, it occurred to me this morning that with some WebSockets this could be a multiplayer game. Dangerous ambitions at the pace it’s going.

Comments powered by Disqus