Create an interactive web component with 3d support and animation

Job ID: 32240937

Budget: $750 – $1,500 USD

I’m an experienced software engineer looking for a game programmer to work with me on a game. A candidate must have experience working on games without the assistance of a complete game engine IDE like Unity or Unreal; due to a core goal of the game, a large part of the game needs to work as a web app, and while I’m not reinventing the wheel from scratch (I’m using Babylon.js), you can’t expect the kinds of training wheels that you get with Unity or Unreal.

I have a specific task that I have planned out as a getting-to-know-each-other project. It’s relatively simple; taking models from Blender and placing them on a game board based on a hex-based coordinate system. You'd be receiving a JSON blob with their target positions. Getting the scale correct, and being able to update the board based on transitions from one state to another via additional JSON blobs, will be important to the task.

Babylon.js has an exporter that works with Blender 3D; I’ll expect you to fix the models’ scales and apply decals to the model appropriately at runtime (Babylon.js has decal support, if you can calculate the correct 3D vectors).

I can explain in greater detail exactly what I need to the candidates who make it past the first interview; the description above is primarily to demonstrate the kinds of skills a candidate needs to have to work on this.

Experience in TypeScript or C++ or C# required; the transition from C++ or C# to TypeScript is relatively painless, at least if you’ve used templates/generics. Experience working with 3D for games or rendering, including animation, required. Experience working with games is a plus. Everything else is something you can figure out as we go.

P.S. Yes I know about Unity/Unreal being able to compile for Web; it needs to work on all smart phones, though, and I don’t trust that a WebAssembly or a JavaScript Emscripten result would perform well enough on low-end phones.
Related categories: Socket IO Game Development Typescript Three.js