Posts Tagged ‘three.js’

Transmuto – post mortem

Posted by
Monday, April 18th, 2016 4:35 pm
 ________                                                                 __               
|        \                                                               |  \              
 \$$$$$$$$______   ______   _______    _______  ______ ____   __    __  _| $$_     ______  
   | $$  /      \ |      \ |       \  /       \|      \    \ |  \  |  \|   $$ \   /      \ 
   | $$ |  $$$$$$\ \$$$$$$\| $$$$$$$\|  $$$$$$$| $$$$$$\$$$$\| $$  | $$ \$$$$$$  |  $$$$$$\
   | $$ | $$   \$$/      $$| $$  | $$ \$$    \ | $$ | $$ | $$| $$  | $$  | $$ __ | $$  | $$
   | $$ | $$     |  $$$$$$$| $$  | $$ _\$$$$$$\| $$ | $$ | $$| $$__/ $$  | $$|  \| $$__/ $$
   | $$ | $$      \$$    $$| $$  | $$|       $$| $$ | $$ | $$ \$$    $$   \$$  $$ \$$    $$
    \$$  \$$       \$$$$$$$ \$$   \$$ \$$$$$$$  \$$  \$$  \$$  \$$$$$$     \$$$$   \$$$$$$ 


Second Ludum Dare for me. I decided to change it up a bit and learn something new. So I went with the JavaScript/Typescript + Three.js + Physi.js. This was my first time doing anything in JavaScript so learning that and TypeScript a few hours before the compo was fun. I used TypeScript since I’m used to OOP and static typing through Java. Using TypeScript brought some problems though, since the definition files from were not completely accurate for Physi.js.

At first I didn’t like the theme, I already had a killer idea of a puzzle game for Everything is connected. I wanted to have 3D and physics in this game since thats fun to tinker with. Brainstorming took place and I ended up with Transmuto – a game about shooting polyhedrons. You yourself are a polyhedron, you shoot your own shape, while your enemies are only vulnerable to their own shape. You shapeshift after collecting positive and negative polygons.

What went right

  • I like the audio. Making it on was fun.
  • Graphics are okay too. I had some custom shaders in mind, I wanted nice smooth shadows and a rather clean look. But I simply didn’t have time.
  • In the end I think its playable, I improved from last time, definitely made it much easier and balanced as I was close to submitting.
  • I learned JavaScript/TypeScript.

What went wrong

  • I struggled with physics. The Physi.js docs are almost non-existent and combined with the Typescript definitions not being annotated, I ended up fixing a bug as simple as extends Physijs.Mesh -> extends Physijs.SphereMesh for 5 hours on the first day.
  • I didn’t have time for proper level design and just adding more features I thought of. ^^


Corruption-5 Is Done!

Posted by (twitter: @charlottegore)
Monday, August 24th, 2015 9:45 am

My fifth compo entry for Ludum Dare is done. Phew.

Screenshot 2015-08-24 15.38.11

It’s a sort of platform adventure game, with lifts and buttons and NPCs and a story and all sorts. It’s by far the most complicated, ambitious Ludum Dare game I’ve done yet with way way way more sprites and mechanics. I hope it was worth it..  this one half killed me.  Post-mortem to come later!

Made with my own Javascript/WebGL game engine that lives on top of Three.JS :)

Compo page!

Mass-X is Done!

Posted by (twitter: @charlottegore)
Monday, April 20th, 2015 11:32 am


My “unconventional weapon” is a backpack that lets you swap positions with various robots which lets you — look away robot fans — murder robots in fun and creative ways. Or not. Entirely up to you.

Play here!


Posted by (twitter: @charlottegore)
Saturday, April 4th, 2015 5:53 am

I feel like I’ve been “in” Ludum Dare 32 since the last Ludum Dare finished. Last time I made the largely reviled platforming nightmare Screened.

Screen Shot 2015-04-04 at 13.05.35

This time I want to make a proper platform game. One with 2d pixel art. I want to do a proper Ludum Dare game.

The problem is that all the stuff I’ve done for the last year has been for Three.JS, which isn’t a Game Engine (it’s just an abstraction layer and a scene graph for WebGL). So to make a 2d pixel art platform game I could:

– switch to Unity (although I hate the web plugin for that)
– switch to Gamemaker Pro (tempting, but don’t want to make my game Windows download only)
– switch to Phaser.JS which is a WebGL game library…..
– …or write some sort of game engine and editing tools for Three.JS.

I made the editor. Whoops. It’s taken me three months and it’s full of bugs… but I can manage tilesets and sprites and draw multi-layer maps. I can draw boxes, points and sprites into object layers, just about, and it all exports a single .json file with all the textures embedded.

Screen Shot 2015-04-04 at 12.46.23

Unfortunately this leaves me this weekend and next weekend to work on the missing game engine part of the game engine. Most of it’s there – I can render parallax tile maps, draw sprites into boxes and stuff. I can control the tint of the layers and do various blending tricks to create moody atmospheric stuff like this…

Screen Shot 2015-04-04 at 13.20.54

…and this…

Screen Shot 2015-04-04 at 13.35.19

.. all from the same level data.

This weekend I need to get animated sprites working in the engine or this last few months have been for nothing. I’ve already made one rubbish game to get sprite/sprite and sprite/tilemap collision detection stuff working, but I need to make sure I can use all that with the data generated by this new editor. Agh. I should probably stop procrastinating and finish this post and get back to it, shouldn’t I?

So… I’m in for the fourth time (I’ve been doing game development and 3d graphics programming for a year now) and and I’ll be using:

– Javascript & Three.JS targeting WebGL, coded in Sublime Text 3

– “Hexr” Game “Engine” and Editor For Three.JS (I’ll post the links and stuff when they’re up and ready)

Swanky Paint for Art (an awesome Deluxe Paint style pixel art thing, it’s awesome)

Propellerhead Reason – Magical Swedish music application.

– POSSIBLY Blender, if the theme/game calls for some actual 3d geometry although I kinda doubt it tbh.

– POSSIBLY Box2D (the Emscripten version) again if the theme or game makes it worth ditching the arcade “physics” I currently have.

That’s it!


Update #3

Posted by (twitter: @charlottegore)
Sunday, December 7th, 2014 11:00 am

I think this game is actually ready to go. Still… quite a few hours to… can I add particle effects, guilt free? Wow!

It was all looking horrible yesterday, but today it’s all come together… thank goodness.

It seems to be rather more Meat Boy than I’d hoped… hopefully that’s not too terrible a thing. \

Anyway, a close up of one tiny corner of the game, for your viewing pleasure:


Update #2 – End of Day One!

Posted by (twitter: @charlottegore)
Saturday, December 6th, 2014 5:33 pm

What a day… this Ludum Dare I wanted to use Blender as a level editor for my Three.JS engine to play with:

It worked!

Screen Shot 2014-12-06 at 23.57.51

It’s super, super hacky but I was able to use bones as entity data, where the first bone in a chain had the type and location of an entity, then I used child bones to indicate other parameters. This way I could configure the size of doors, the paths of entities, the size of things etc.

This is the end of the first day for me and I am ecstatic to be able to say I have my game’s level fully designed and playtested. It takes about 10 minutes to beat so that feels about right.

Screen Shot 2014-12-07 at 00.17.13

Tomorrow morning I’ll be doing the sound effects and music first (so easy to overlook), then it’s polish time – as much shiny as I can squeeze in in the time remaining. It’s taken all my willpower not to try to do something about the dreadful graphics today. I added no shaders, no parallax effects, no particles, no textures, no lights. The geometry, other than the collision mesh, is just what Three.JS lets you generate procedurally. I am growing as a person by embracing my inner programmer artist.



Posted by (twitter: @charlottegore)
Sunday, April 27th, 2014 5:20 pm

My first Ludum Dare compo entry, complete with many minutes to spare!

Lessons learnt:

  • Gameplay first, shiny later.
  • This is way better than NaNoWriMo.
  • WebGL is amazing.

In the end I think the decision to use Three.JS meant I got the look I was going for, but it made it pretty hard to deal with entity management, sound and all the other things not related to 3D graphics. I’d still use it again tomorrow though.

Here’s a picture of a virus (our protagonist) about to get scoffed by a white blood cell.


Looking forward to playing and rating as many games as I can now. Congrats to everyone else who’s finished and good luck!


Posted by (twitter: @charlottegore)
Saturday, April 26th, 2014 3:10 pm

Mental note to self: Less time on particle effects. More time on the actual game part of the game.


First Update!

Posted by (twitter: @charlottegore)
Saturday, April 26th, 2014 1:02 pm

Having had a good sleep I discovered that after an hour with Unity my plan wasn’t going to work. Plan B activated!

Also instead of Unity, I went to good old Three.JS. It might do a lot less for you in terms of games but you get post-processing effects, Blender imports and it’s all in the language I use every day anyway.

Currently working on getting the right look and all my modelling in Blender done. I *should* be working on the gameplay but that’s the bit I’m less worried about. Here’s a Vine of my progress so far!

Saturday progress

Posted by (twitter: @vilcans)
Saturday, August 25th, 2012 7:53 pm

I worked on a chess game several years ago. Before that, I have always thought that chess is just for people with pretensions of being smart, but during that project I learned a bit more of the game and became somewhat fascinated by it. The rules are simple, but there’s a lot of strategy in the game. All that is missing, I thought, is a bit more action, power-ups and a level progression.

I never got around to make that game. I won’t really have time to do that during this LD either, but I’m at least making a chess game. Not your grandfathers chess game though. This is “Pawn to King – chess evolved”.

Or at least I hope it will be something playable tomorrow. Here’s what it looks like right now, early Sunday morning.

a MMO experience.

Posted by (twitter: @@PUriTanner)
Sunday, April 22nd, 2012 9:17 pm

IT’s an  MMO* made with node.js/backbone/three.js/tween.js/underscore/…

… and all the good parts of javascript.

What is it all about?

You are in charge of an evergrowing world in a universe full of evergrowing discs.
But growth comes at a terrible price.

In the advent of your great growth-inducing politics the general disc-populace grows weary of overpopulation and overproduction.
You decide to take the best way forward.
War against the unknowingly weak non-blue discs.
Carefully you plan your next aquisitions while balancing your infrastructure spendings with your investitions in green energy and hauntingly large disc-machines of war.


What does work:

  • Support for up to 51.00000000000002 players
  • Planets indicate their current production capacity by growing
  • Planets may revolt (red tint)
  • Military and a good investition in green technology help to overcome riots.
  • Attacking

What doesn’t work:

  • There is no chat or ranking.
  • You cannot transfer your all-killing-war-machines to a friendly planet
  • If you tab out there is a high chance your browser might die.
  • Simulation is a bit rough. Hadn’t had time to make animations
  • Same for graphics.
  • Player starting positions can be compromised from time to time. If you can’t grow your disc: reload the page


Oh, and the code is horrible. Iam not uber experienced and furthermore obviously needed to reassure myself that Diablo3 won’t ever become a game i could be happy with.

Thanks for your time. Have a blast!





If you still haven’t played it yet, here is a screen with lots of circles for you.

f this s. iam going to be a potato!


*at least in a realtivély tiny world it would be a MASSIVELY MULTIPLAYER ONLINE experience. Here it’s somewhat of a medium scale multiplayer app.

I’m in, HTML game or not…

Posted by (twitter: @vilcans)
Monday, April 16th, 2012 2:51 pm

I’ve been in competitions before, but this is my first Ludum Dare. I’m Martin Vilcans from Stockholm, Sweden. I’m hoping to gather a few other local participants for a meetup during the compo.

I am planning to go against conventional wisdom and use tools that I’m not 100% confident with, but I really want to do something with WebGL. I’ll be using three.js and some base code. Since I’m no big fan of JavaScript, I’ll be using CoffeeScript instead. There is an built version of the code online. It’s not very exciting yet, but it should display a gray 3D box that you can move by clicking and dragging the mouse. In case your browser or graphics card drivers doesn’t support WebGL, an informational message will be displayed and it’s time for you to upgrade! Please let me know in a comment if you have other problems and I may be able to fix it before Saturday.

WebGL is new and exciting, and this could become a great tech demo and an excellent game. Or a lousy tech demo and a crappy game.

Or I’ll just chicken out and use PyGame to create something simple but be sure to finish something. We’ll see when the compo starts.

I’m in for LD21

Posted by
Sunday, August 14th, 2011 12:26 am

This will be my second fullblown dare, and I really look forward to it.

As I’ve done earlier, I will be writing my entry using JavaScript. I will most likely be using ImpactJS or Three.js for my entry depending on the theme and what game I will be making. I’ve learned from my earlier mistakes, and will not try to learn a new library for this compo. I will also be using Paint.NET for graphics, possibly Blender if I go 3D. For sound I will be using the awesome BFXR. Music will most probably be generated using Wolfram Tunes, simply because I suck at music. If I get to make an explosive game, I will also be using the Explosion Generator. I haven’t used this tool before, but it looks promising.

Good luck to you all !!

[cache: storing page]