Spellcaster Studios

Make it happen…

I’m in

I’m participating on this the Ludum Dare 48-hour competition again, and I’ll be posting updates here, and on Twitter (@shadowcovenant, if you want to follow me), and also on the LudumDare website…

I’ve updated my basic LD48 framework with some stuff I think I may need (nothing game related, just some stuff most engines have out of the box). I’ve been using this framework for 48-hour compos for ages now, so it’s pretty confortable for me.

screen08

It’s too bad we can’t use some pre-made assets (explosion sprites, or particles), but those are the rules! Smile

You can download the framework here, if you want to use it (it has some sample applications that show most if not all the features). Current features:

– D3D9 initialization and some helpers (ignore the OGL stuff, it’s something I started, but didn’t finish)

– FMOD interface for sound

– 2d Sprites (with sprite caching, etc)

– 2d Particle System

– Simple UIButton for easy menus

– Text (through FreeType 2)

– 3ds file loading (only tested with 3ds generated by 3d Studio Max). Loads lights, meshes and cameras.

– Small simple math library (vectors and quaternions)

– Simple 3d camera handling system (just with a “look at” operation)

– XML loading/saving (might come in handy for configuration files, load/saves, etc. The XML loader was created by Frank Berghen, not me… the writer is all me, although the loader also has save functions, but I’m too lazy to figure out how they work)

– 3d particle system (based on the 2d one, so very rudimentary)

– 3d sprite system (quads that always face the camera)

– LUA library support (it’s actually ripped from my engine, so it’s a good support system for LUA)… Last time I used cutscenes and scripting, and loads of the game code was much simpler because of that… This time around it has the beginning of a framework to manage objects, references, etc as well

– DDS image loading for an offscreen buffer (just supports A8R8G8B8 images). It’s useful to generate composite textures or dynamic textures

– 3d Tilemap (Kind of a blocky heightmap with an automatic texture atlas generation and partition of the map in chunks for possible culling (not implemented)).

– Voxel system (almost fast enough for realtime regeneration)

– Voxel editor application (needs to be compiled and tweaked to your actual use). It supports textured and colored voxels, besides some props and node placement (for cutscenes or game related stuff)

screen01

– Simple geometry generation (quad, cube, spheroid, caps and cylinders)

– Special effect objects (sparks, explosions, although the explosion require some authoring)

– Full-screen effect systems (to implement glows, or invert the colors, or add displacements, etc)

– Full shader-based rendering system (no fixed-function pipeline), with simple lighting system (only shadowless point and spot lights, although directional lights should be easy to implement, just a matter of adding to the shaders). Shader system is built with uber-shaders in mind, with easy to add per-material properties (material color for example) and system-wide constants (ambient light, for example).

– Launcher functions (a dialog box that pops and asks for resolution, sound volumes, window/full screen, etc, in 3 easy lines of code)

– Simple navigation mesh generation and path finding (based on Recast). It enables to add objects to a NavMesh object (not all objects work yet), and it will build the navigation mesh, which can be queried… It’s easy to extend, if you know how to use Recast. This component is on a separate library, so you “opt-out” of it easily.

On the tools side, I’ll use:

– Visual Studio 2010

– Photoshop CS5 (for 2d graphics and textures if I decide to adventure into 3d, etc)

– 3d Studio Max (for modelling if I go 3d, or for title screens and such otherwise)

sfxr (or Bfxr) (for audio effects)

– Live Writer for blogging

– Everything I get my hands on…

No idea what I’m going to use for music, but probably one auto-generator like http://abundant-music.com/, as I did last time.

My expectations for this compo are as usual high… My last two attempts I was on the top 20%, so I want to do better this time (although the competition is stiff). There are very nice themes at the voting at the moment, so I might be hit with a good idea!

Probably going for my usual 48-Hour compo drill… Go to bed at normal hours, wake up at 2am to see the theme and go back to bed… then start working early in the morning!

This time I don’t have as much time available as usual, but I think I can put in 25 hours or so of development.

Comment