[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Where do I begin?

Hash: SHA1

Just one thing I think most people have missed (possibly deliberatly ;) so 
far is the nastiest bit of writing a game, or the most boring perhaps: the 
support tools. It's all well and good to import textures from png, objects 
from such-and-such, sounds from here but sooner or later you will (at least 
with objects, possibly textures, definately with other "custom" stuff) run 
into something that is not done with any standard format and you will have to 
write something to make suitable files. For the game that is mentioned in my 
sig I'm working on:

- - texture editor. Loads images via imlib into a heirarchical structure (
  interface shows a texture tree into which textures can be grouped), 
  saves them out as RGB/RGBA with additional data telling the engine 
  about animation sequences, material properties and some other bits 
  and pieces. Texture files are obviously larger than PNG, but there's no
  need for two or three files per texture and they load faster.

- - object editor. Loads objects from Lightwave, Imagine and any editor
  anyone can be brave enough to write a plugin for. Used to set up texture
  coordinates, lighting, scripting and control points, weapon mount positions
  and 20 million other things. 

- - ship editor. Associates models, AI .so files (so several ships can share
  the same basic AI), statistics (masses, descriptions etc), initial AI

- - map editor, race editor, mission editor and item editor.

This is certainly not a trivial amount of code (the object editor in 
particular) and you need a very good idea of what you will be doing in the 
game before you can start to write them!  I've onto the second revision of 
a couple of tools because I've got half way through implementing things and 
suddenly hit upon a way to to something as well with less code, or better 
with the same. 

(BTW, my random tagline picker seems to be developing a sense of humour...)
- -- 
 .------{ http://www.starforge.co.uk }-----. .---------------------------.  
=[     Explorer2260, Designer and Coder     \=\ P: TexMaker, Draktar      \ 
=[_____[ Quod nesciunt eos interficiet ]____]==[ Stack: EEOeOeOeTmTmDD---- ]
- --
You cannot achieve the impossible without attempting the absurd.
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org