Pässion

This time I’m not going to talk about any Garry’s Mod related projects. Actually Garry’s Mod does not even show up in my recently played games list at the moment, which is quite unique for me.

LÖVE

Those of you who know Lua have probably already heard of or even used LÖVE. It’s a 2D game engine which allows you to write games using Lua only. It’s feature rich as it includes libraries to create particle effects, simulate physics and do the fancy drawing you need for a 2D game. Distribution is also extremely efficient. All you need to do is zip the folder of your game (which includes your .lua files, textures, music, etc.), change its extension to .love and you’re ready to distribute it to all your friends. I believe you can even turn your game into an .exe file, so the players of your game don’t need to have LÖVE installed, but I’m not sure about that.

Pässion

As I said, LÖVE is an excellent 2D game engine. However, even though 2D games can still be a lot of fun (Tetris, platformers like Mario, physics sandboxes) three dimensions are quite appealing to both developers and gamers.

Now, that’s where Pässion comes in, as you would’ve probably already guessed. Pässion aims to be a 3D game engine which is as easy to use as LÖVE. Its main goal is to make 3D game development as easy and as accessible as it should be. Although I’m by no means a professional developer and I will not be developing an engine as powerful as Unreal, it will support all the features a modern 3D game needs, ranging from pixel shaders to volumetric shadows using a stencil buffer. Don’t let those words scare you, most of the content you’ll need for your first game will be shipped with the engine and pre-coded.

I’ve been working on the renderer of the engine for about two weeks now and it’s starting to turn out quite nicely. The screenshots below range from the first steps to where I am right now:

Passion - Benchmark

Benchmarking the 2D renderer.

Engine - First 3D shot

First test of the 3D renderer.

Models

First test of loading model files instead of boring triangles and quads.

Engine - Texture coordinates

First test with texture coordinates. It’s not noticeable, but they’re wrong in this shot.

Engine - Real models

Got the texture coordinates working. The raped face is not an issue with my code, but the SMD importer.

Engine - Lighting

Testing directional lights and spot lights. The cone represents the spotlight.

As you can see the development is going lightning fast and I hope to keep up with that. Let me know what kind of features you would like to see (level format, features like the stencil buffer) and what you think of the results so far. emoticon_waii Also, should I do more of these posts?

2 Responses to “Pässion”


Leave a Reply