Smith and Winston Alpha 4

9 months!

It’s been nine months since the last video update. Of course we’ve been busy working on Smith and Winston. Here is the latest video:

We’ve added:

  • Depth of field effect to soften the distant voxels.
  • Complete change of enemy and weapon strategy to bring the …

Bullet Physics: Query objects within a volume

I need to preform a query of the game world to find all Game Objects within a volume. Preferably a sphere but any convex shape would be good. I struggled with this for a few hours before realising it’s actually pretty easy. Bullet Physics is amazing but sometimes simple …

LuaJIT stopped working

Came across an interesting feature/artifact of using LuaJIT today.

In Smith and Winston we use the bit package that LuaJIT provides to flag and mask collisions. The types of collision (for example world, bullet, vehicle) were hard coded on both the engine and Lua side. Today I moved toward …

First Year of Smith and Winston

I posted most of this to TIG Forums but thought I’d reproduce it here for people that don’t want to read a forum.

Smith and Winston is a twin stick shooter for Win, Mac, Linux and PS4.

S&W is Inspired by Ikari Warriors and Heavy Barrel, two …

Grabbing keyboard input in Qt

I’m currently writing an editor for our next game. We’ve used many tool in the past (Blender, Tiled & Mappy) to make games but we thought it was really time to invest in our own code base. This was heavily influenced by the great experience we had using Unity3D …

Why I Chose Not To Use Unity3D

I evaluated Unity3D for a few months before deciding NOT to use it. It’s a really, really great tool and it was a tough decision. Ultimately I felt like there was more resitance to steady progress using Unity3D over extending/upgrading my own code. Here is a rough guide …

Integrating Lua and my C++ Game Engine

If you want to cut to the chase you can download the code here.

This isn’t a very well written blog post, it’s more of a dump of my thoughts as I tested out LuaBridge and didn’t get to trying out OOLua.

Once again I am starting …

Moving from qmake to CMake

After working with Qt5.x for a few months and really starting to enjoy the flexibility of qmake and QtCreator I decided to try using CMake to build XCode and MSVC proejcts.

After turning on C++11 a few weeks ago I found that QtCreator debugging became more difficult as …

GLSL: Getting active uniforms

When you load a vertex and fragment shader in OpenGL you need to pass in data such as the current viewport transform, camera transform and lighting data. You do this via Uniform variables.

Each of these Uniforms is addressed via a location which in true OpenGL style is a GLuint …

Python Script to build a Texture Page or Sprite Sheet

Why pack textures/images?

If you’re making a game then it’s more efficient to tell the hardware:

use packed texture 1
draw primitive 1,2,3,4,5,6
use packed texture 2
draw primitive 7,8,9,10

than to

3 …