PDA

View Full Version : Technology shortcuts/solutions


fastjack
12-14-2004, 08:46 AM
I am looking for technology solutions for games. I have been programming for about 5 years now, and years ago i started with the book 'tricks of the windows game programming gurus'. Since then i have sone some work with the torque and cipher engines and some modding. I really enjoyed these compared to large sections of the work i did while reading the book. This is because i could basically get down to game code and forego reinventing the wheel as far as the technology went. Dont get me wrong though, i learned a lot from doing the tasks in the book and appreciate it, but i really want to get to making games.

I have always used c++ and directx (its what TFTWGPG taught me), and as i am now interested in doing my own indy games i have been looking for 2d engines (something similar to what torque did for me). One thing ive found however is that they are rare or old, or what have you. However there are plenty of libs/wrappers etc.

Since i always used directx, i admit i kinda looked down my nose at opengl and sdl, assuming they were just watered down/less hardcore ways of doing what id learned to do. But now that i am looking for ways to speed along my game development, and get straight to game code sdl looks attractive, as do some of the libs for it on libsdl.org.

POINT: basically im looking for technology solutions to speed along game programming. be these engines/libs/wrappers/etc/etc matters not.

in particular i am looking to prototype a few strategy/sim and rpg game ideas i have. 2d or isometric depending. I would like to include large game worlds and dynamicism (as much as possible) and graphics would take a backseat.

Solutions including video/sound/gui even ai or just about anything else that could speed ones dev time. something with a tile/iso engine and scrolling and scripting support would be nice. As i said though sdl looked good, what have been your experiences, time to dev short? i just dont want to spend forever getting all my technology ready, really i spend as little time as necessary (the sooner i can get to game code the better seeing as i have to prototype like 4-6 game ideas)

-what do you use to keep you from reinventing the wheel?
-what libs are indispensible when you make a new game?
-are there handy versatile 2d engines available?
-what tools do you use (or would you use in my position) to speed or ease your dev?
-what parts of the design are better done by yourself?
-what have you had good experiences with?
-what have you had poor experiences with?

SECOND POINT: i just feel that since i started programming i have not been taking nearly enough advantage of all the great tools and code available to help out the game programmer. i spent some time wading through the old/abandoned, never finished, poorly documented, and poorly implemented 3rd party solutions (middleware etc) and never really found the good stuff i guess.

free or cheap commercial liscense please.
thanks in advance for any help offered.
also, im sorry if i left anything out or didnt make sense at times, it is very late and im off to bed, if you need more info feel free to ask.

princec
12-14-2004, 10:17 AM
I do all my stuff in Java using LWJGL (http://www.lwjgl.org) (free). I use Eclipse (http://www.eclipse.org) as my IDE, which is also free.

To avoid doing stuff over and over I write proper code, and Java just lends itself to writing library code easily. I save a lot of time over using C++. Admittedly I've had some hassles with deployment but I'm still a n00b at that aspect of it and it's getting better.

Cas :)

James C. Smith
12-14-2004, 10:52 AM
LIBs I love to use in my C++ games and what I use them for:

ZLib (data Compression)
FreeType (True Type font rasterizing)
OGG/Vorbis (Audio compression)
DirectDraw (Access to video memory in Windows)
DirectSound (Sound mixing in Windows)
Ainti-Grain Geometry (2D polygon rasterizing, bitmap rotation, bitmap scaling and bitmap sub-pixel dest “rasterizing”)

Scorpio
12-14-2004, 11:10 AM
LIBs I love to use in my C++ games and what I use them for:

...
James, we use all these as well except for the last one you mentioned (Anti-Grain Geometry). Do you have any info or links on this one you could share? We're planning on extending our tech in 2005 and this sounds like something we might be interested in. Thanks!
-Scorpio

Aldacron
12-14-2004, 11:50 AM
http://www.antigrain.com/

Cartman
12-14-2004, 01:59 PM
I'd like to mention my favorite tool, Beyond Compare. This is a file/folder comparison tool which does everything you could imagine. It's saved our asses many times here at work and paid for itself many times over. Freqent updates and many languages supported.

http://www.scootersoftware.com/

ggambett
12-14-2004, 03:23 PM
Ainti-Grain Geometry (2D polygon rasterizing, bitmap rotation, bitmap scaling and bitmap sub-pixel dest “rasterizing”)
I checked Antigrain the first time you mentioned it and I found it very interesting. I'm almost tempted of going SVG and using something like this to rasterize in real time. Have you considered doing this?

tentons
12-14-2004, 08:20 PM
ClanLib (http://www.clanlib.org/) is a nicely engineered library, although the sprite animation system leaves something to be desired. It's modular, though, so you could use the audio and input parts only, for instance. I'm using it for rendering, as well, though I built a custom animation and resource system on it.

I'm thinking of using HGE for my next game. Does anyone have experience with it? The "unofficial" version sounds especially good, and if you add the sprite and font tools, it could be a great package. Reliance on BASS for sound/music hurts IMHO, but you could just plug in ClanLib and use it's sound implementation (that's my plan).

Ryan Clark
12-14-2004, 10:35 PM
I'm using SDL with a few of the SDL-based sublibraries for my current game. Here's a list of the more major SDL libs:

SDL - SDL itself can display bitmaps, play sounds (no mixing) and handle input

SDL_mixer - can play and mix sound files of many types (WAV, MP3, Ogg), and has routines that handle music (fading, etc).

SDL_image - can load SDL surfaces with images of almost any type imaginable... including TGA files (and others) which have support for per-pixel alpha values. We use this for on-the-fly antialiasing, which makes our sprites blend beautifully with backgrounds, and with each other (no jaggies!).

SDL_ttf - A font library which can render arbitrary strings with any true-type font you can find.

SDL_net - A networking library (I haven't used it, but I'm sure it's nice ;))

And all of these libraries will work on Windows, Mac, and Linux.

Aggrav8d
12-16-2004, 01:32 AM
tinxml - simple xml parsing. free. cross platform.
rarlib - for making pak files. free. cross platform.
NSIS - the Nullsoft (winamp) install generator. free. Win32.
dynamo - physics. free. cross platform.
SDL - graphics & input. free. cross platform.
FMOD - free for freeware. not free. cross platform.
LibPNG - png image file loading

Also i incorporated opensll/cURL (both free & crossplatform) so that i could build an in-game purchase system. If you don't like rarlib there's always Jari Komppa's CFL library. I choose FMOD over Ogg/Vorbis because the Ogg/Vorbis library is difficult to bend to my will and I have to be very careful about not playing too many sounds at once, whereas with FMOD I can be more lazy. Note that with Dynamo you will have to roll your own collision detection. You may want to consider ODE instead.