You'll notice that I've gone for a toon-shaded look. I feel this gives the game a nice visual appeal without straining my (non-existent) artistic skills. It also sets a less serious tone, which I like; I may have mentioned this before, but this game is going to be designed such that people of various skill levels can all play together in a more friendly sort of competition. As such, there's less focus on hardcore competition and more focus on just having a good time. Going for a non-realistic look helps set that tone.
The gun you're currently looking at is called the Flame Pillar Gun. It shoots projectiles that burst into a jet of flame upon contact with the level. This jet lasts for a few seconds before disappearing. It's good for covering your escape or trapping your enemies. Skilled players can also use it to hit areas from otherwise impossible angles.
This is the Magnet Gun. Again, the gun model is temporary - I'm actually thinking of replacing it with a glove. Anyway, the left mouse button shoots out that big spiky ball you see there. You can then use the right mouse button to push or pull it towards you (it toggles between the two). The color of the glow indicates which way it's going - blue is pull, red is push. The balls will bounce when they collide with something.
You can have multiple of those spiky balls out at once, and they will all get pushed or pulled simultaneously. That's when the real fun starts, especially when two or more players get in a Magnet Gun fight.
There's also the Rocket Launcher, but since I'm in the middle of some big engine-side changes to the way objects are rendered, that gun's not showing up correctly.
I also got a cool menu system going. This runs on top of a GUI system I developed for the engine.
As for the engine-side changes... where do I start...
- The aforementioned GUI system. It's extendable and skinnable, too!
- Major overhaul to the way the scene is rendered. This topic is a post by itself, and will come later.
- Dynamic lighting! Supports directional, point, and spot lights. No shadows yet, though. It's amazing how much even a little lighting can improve your game's look.
- Improved netcode! I overhauled this, too. It still uses the NetRep component, and the concepts mentioned in my post back in August hold, but now you can tell NetRep exactly what variables you'd like to send over the network. In addition, the whole thing is delta compressed. This means that the server only sends what changed, cutting down on bandwidth requirements.
- Shaders! I've written a lot of code designed to make using the programmable pipeline as easy as possible. You can use semantics recognized by the engine to tag variables, and they will automatically be filled with the data you need.
There's a lot of other stuff too, but that's the most exciting to me, anyways. So where am I going from here?
- More maps and weapons, and improved art, of course. As far as this goes, the engine is in enough of a finished state to make some good progress here.
- Lightmap support. Dynamic lights are expensive, so it's better to go static wherever you can.
- Shadowing support.
- Physics component overhaul. I don't mean Source engine style physics, but reworking it such that objects have easier access to collision information and can set up complex collision volumes. It also needs to play nicer with my Transform component.
And I'll try to be more punctual with my updates next time.




