Game engine for a Liero clone

Started by
4 comments, last by rip-off 14 years, 8 months ago
I'm looking to eventually write a Liero clone (In the off chance you are unfamiliar with Liero, it's like real-time Worms, only better.), with heavy improvements, mostly in the way of physics, maybe one day even make it LAN multiplayer capable. Currently, my experience with game engines or graphics API's or anything like that is more or less zero. I have some knowledge of C++, which I was hoping to improve while writing progressively more complex games in whatever engine I'll decide to go with. Anyhow, what I'm really worried about is support for hardware acceleration of graphics (This is a must, since I plan to make my game very CPU intensive). I've been looking at SDL and ClanLib, and they say that they "interface" with OpenGL? I'm worried it means that it's going to be complicated to use OpenGL, but since I'm not sure about much of anything, I've turned to you folks. What should I choose that is free, open-source, and will help me make an OpenGL accelerated game, in 2D, as painlessly as possible? I won't need a whole lot of graphical effects, mainly sprite rotation and probably alpha blending, but I'll likely expand on that some day. If there's anything you want me to clarify, go ahead and ask. As long as it's not if I'm looking for a game engine or a multimedia API, because I don't know :) P.S.: I know there are lots of "what engine to choose" threads already, but none really focus or clarify on OpenGL and how hard it is to work with it. So that's my excuse for making a new thread, anyway.
Advertisement
In my own personal experience, OpenGL is not that hard to work with... Infact OpenGL is "simple" (not very many commands to learn) but the down side of that is that you have to implement some common things yourself.

When they talk about OpenGL "interfacing" with SDL, they are more than likely referring to the practice of using SDL to handle the windowing (generating a window on a users system) and then using OpenGL for the graphics rendering.

There are many different languages that implement OpenGL bindings. Python has OpenGL bindings that you can use with PyGame: Pygame with OpenGL or you can use something like Pyglet Pyglet

C# has Tao: Tao Framework

for C++ you can use something like Haaf: Haaf's Game Engine. There are many other options including using Ogre or Irrlicht and doing 2d in a 3d engine (which is a popular approach).

Java has LWJGL which I have used.

There are many many options and that means that once again it all comes down to what language you would like to use.

Good luck!
As for language, I'd like to use C++, but I'm looking for more than just an OpenGL interface. Basically, I'd like to write as little code as possible, since any framework that's already out there is probably written better than I could write it, and why should I do the work if someone else already did it for me.
I just started SFML and I can only recommend it.
I haven't tried the graphics part yet but it's said to work very well with OpenGL which is pretty easy to use too as shadowisadog said it too.
It probably has everything you'd need for such game.
But check it it out for yourself: http://www.sfml-dev.org/features.php

Though it's not an engine.

(I love Liero!! :D)
Well, I've hastily looked over some things, and am thinking of trying out SFML. There's just two things, however:
1.: If I use SFML, does that mean I only get to use the graphics part of it to open a window, and after that I'd have to learn how to load and display sprites from the OpenGL documentation, or does SFML provide ready made functions for that? (It has some simple-looking graphics functions, but I'm not sure if they use OpenGL or software rendering)
2.: SFML is not a game engine, just a library, so I'd have to write my own game engine. How hard will this be? Some obscure forum post somewhere said that if youhave to ask how to write a game engine, you shouldn't do it. However, I'm not sure if that statement was meant to include writing one with SFML or from scratch. If you can recommend any tutorials or other information about the best way to write a game engine (even better if it focuses on 2D games), I'd be ever so grateful.

Oh, and I'm not going with Haaf's game engine, since it uses DirectX or somesuch, and I'd like my game to be as open-sourcy and cross-platformy (As long as it works under Windows and Linux, I'll be happy) as possible.

Toodles.

Edit: Or should I rather use ClanLib, since it's a full game engine? Unless there's a better alternative to ClanLib, which utilizes OpenGL and is free, open-source, and cross-platform, or at least works on Linuxes?
Disclaimer: I haven't used SFML, but I have looked at it.

SFML completely wraps OpenGL, you shouldn't need to use raw OpenGL with it.

As for game engines, the advice is to not write one in isolation. Instead, write your game. If you structure your code in a modular fashion, a "game engine" will be extractable from the finished product.

But don't concentrate on writing "engine components". Write the game as naturally as you can - concentrate on getting the gameplay in as soon as possible.

This topic is closed to new replies.

Advertisement