Drone Alone: The environment

The game currently has a single, blocked out test map where I’m experimenting with different kind of spaces to see what works. For example a room too densely packed with furniture might be difficult to navigate without bumping into stuff. Too big and open areas could look empty and provide little cover.

read more

Drone Alone: Engines and controls

The hero of the game is a general purpose home security drone with different engine modules. Each engine has the following properties:

  • Size
    Self explanatory. With a big engine the drone is easier to hit by enemy fire and might not fit through tight openings.
  • Speed
    How fast it moves on the three axes.
  • Inertia
    How much it drifts before stopping.
  • Stability
    How stable the drone is while standing still. Low stability means small random movements while floating, making aiming more difficult.
read more

Introducing “Drone Alone”

My latest project is Drone Alone where a home security drone has to defend the apartment from intruders. It will feature short, somewhat randomized missions to be completed with a customizable drone.


read more

Counter shader for Unity

The first version of the counter shader is available in the Unity asset store.


read more

Getting started with VALEE

This article is an introduction to the “Viewport and level editing enhancements” project which seeks to rethink the way 3d game scenes are edited. My goal with this workflow was to make the level editing process faster and more intuitive. It might feel weird at first but I hope it will all make sense at the end. I recommend following this article with the browser demo open.

read more

2 channel diffuse textures

Certain types of diffuse textures have a wide range of lightness and saturation values but they vary little in terms of hue. We can exploit this property and pack the image into only two texture channel, complemented with a single color constant, allowing us to store arbitrary data in the remaining two channels of the image (normal XY, specular amount and roughness, etc).

Update: Added channel selection and artifact comparison.

read more

VALEE update 2

Update 2 for the VALEE project page and browser demo is live.


  • “Space” drops selection from now on.
  • “Delete” deletes selection.
  • Alt + MMB brings up the navigation pie menu.
  • Alt + RMB shows the view pie menu for selecting view presets (top, bottom, etc).
  • Pie menus have name labels and color coded slices.
  • “C” or “1” performs a copy. The type of the copy is indicated at the bottom center of the screen. When nothing is selected then any object under the cursor will temporally selected and processed.
  • Holding “C” or “1” shows the pie menu where one can select copy type:
    • Object: Copies the selected object(s).
    • Mesh: Copies the mesh of the last selected game object.
    • Material: Copies the material of the last selected game object.
    • Transform: Copies the position, rotation and scale of the last selected object.
    • Camera transform: Copies the position and rotation of the camera.
  • “V” or “2” now pastes the chosen type of data, shown at the bottom center of the screen. When nothing is selected then any object under the cursor will temporally selected and processed.
  • Holding “V” or “2” allows to change paste type:
    • Object: Creates new objects in the scene.
    • Mesh: Mesh references are replaced in the selected objects.
    • Material: Material references are replaced in the selected objects.
    • Transform: Overwrites position, rotation and scale of selected objects.
    • Position/Rotation/Scale: Overwrites the chosen property in the selected objects.
  • “Z” opens the mesh selector pie menu. The chosen mesh will be copied to the clipboard and the paste mode is set to “Object” unless it was in “Mesh” in which case it stays that way.
  • “X” opens material selector pie menu. The chosen material is copied to the clipboard and the paste mode is set to “Material”.
  • Labels at the top of the screen indicate mouse button functions for the current transform tool. The copy and paste modes are shown at the bottom.
read more

VALEE update

I’ve just updated the VALEE project page and browser demo.


  • Local quick transform, local move and local rotate transform modes are available on the A, S and D keys.
  • Usability issue: During local movement mouse motion is translated to workplane without factoring in the camera so a horizontal mouse stroke might move the object diagonally.
  • If nothing is selected then holding a transform mode key will temporally select and manipulate the object under the mouse. This selection is then dropped when leaving the transform mode.
  • Orthographic wireframe view is toggled with the BackQuote/Tilde (` ~) key. In that mode LMB/MMB pans, RMB zooms. The orientation of the orthogonal view depends on the perspective camera’s rotation.
    Ideally only clicking on a wireframe edge would select objects but it doesn’t work that way yet so one mesh can block another when it comes to receiving clicks.
  • Not useful operations are disabled in orthogonal view.
  • Bug: In certain orthogonal views with certain object rotations local transforms don’t work.
  • Forward move in Move mode (MMB) shows a more helpful, adapted workplane.
  • Transformations are now also applied after button release.
  • Scene assets now have “old wooden blocks” visuals.
read more