Which 2D engine should I switch to?

Discussion in 'Game Development (Technical)' started by bantamcitygames, Jun 16, 2006.

  1. raigan

    Indie Author

    Joined:
    Jun 13, 2006
    Messages:
    49
    Likes Received:
    0
    GG could simply hide/disable code listing for people who aren't signed in, similar to how you have to be logged in to download/see any hosted links on the shmup-dev board..

    are you _really_ worried that someone is going to meticulously hunt out and assemble every scrap of posted source, and somehow get it to compile?

    it would be nice to try TGB since it seems like it's built on a nice, stable, full-featured cross-platform framework. but my game is geometry-based, not sprite-based.. and we're writing our own editor so that we can distribute it..
    and there's no way we can spend $1k just to find out if it's feasible to pull out the parts we'd like (mostly the renderer and scenegraph) and use them on their own! alas.
     
  2. Vortex

    Original Member

    Joined:
    Jan 26, 2006
    Messages:
    14
    Likes Received:
    0
    Hey :). I know I am coming a bit late into this discussion, and for that I applogize.

    I wanted to add that I have used the PopCap framework for my last casual game project, and I am using it for my current one. At first I was a bit confused becuase all of the "documentation" was in the example files, but it is easy enough to sort out.

    I actually plan to write some tutorials about using the PopCap framework soon :).
     
  3. Flatlander

    Original Member

    Joined:
    Feb 9, 2006
    Messages:
    7
    Likes Received:
    0
    It seems that not many(any?) people use SDL for commercial titles. Given that it's probably the most widely used 2d library among amateurs it seems weird that it's so little used in 'real world'. I wonder if there are technical reasons not to use it or is it because libraries like PTK and PopCap are about as cheap and do the same/better and/or are better supported?
    Are there examples of (more or less) succesfull indie titles that use pure SDL as their backend?
     
  4. 1EyedJack

    Original Member

    Joined:
    Feb 14, 2005
    Messages:
    43
    Likes Received:
    0
    Betty's Beer Bar
    Wild West Wendy
    Big Kahuna Reef
    Professor Fizzwizzle

    Just to name a few.
     
  5. wazoo

    Original Member

    Joined:
    Jul 27, 2004
    Messages:
    519
    Likes Received:
    0
    Age of Empires
    Gish

    From my foggy memory, I seem to remember America's Army coming with the SDL.dll for the Linux crowd...(don't know if it still does or not)

    *shrug*
     
  6. Pallav Nawani

    Indie Author

    Joined:
    Aug 13, 2004
    Messages:
    371
    Likes Received:
    0
    SDL is a low level library. This means that you have to write your own font rendering routines, own widgeting system, image loading routines, resource manager, sound manager etc. Although there are add on libraries available for most of these tasks (like sdl_image, sdl_mixer etc), there werent any good bitmap font routines or widgets last time I looked. Also, lot of add on libs are incomplete.

    I used sdl in my previous two games (Last Man Standing and RiotBall). I had to spend a lot of time in writing font classes, widgeting systems etc. Additonally, in Riotball I had to do a dirty rects implementation because I wanted to use alpha blending in the game. This is because SDL is a 2d API and uses DDRAW. So it cannot do accelerated alpha blending. So I used software surfaces + dirty rects to get an acceptable frame rate. Of course, you could use OpenGL with SDL, but then a lot of people don't have updated/installed OpenGL drivers..

    It is a question of time in the end. If you have lots of time, then you could write all these things yourself. Using PopCap framework saves a lot of time, but you loose portability.

    My latest game uses PopCap Framework, and I think its my best game yet. Using popcap framework allowed me to use readymade font class, widgets, resource manager etc. I could do lotsa sfx using scaling, rotation, alpha blending because PopCap framework can use Direct3D and those things are hardware accelerated. In general I saved much time, I could concentrate on making & polishing the game instead of spending time writing the engine. This is the main reason why I won't be using SDL anymore.
     
  7. Flatlander

    Original Member

    Joined:
    Feb 9, 2006
    Messages:
    7
    Likes Received:
    0
    Great, thanks for the info everyone. Since I already have most of the necessary functionality implemented in SDL it being lowlevel doesn't really matter. I can see that the speed can be a problem but for speed critical games I would probably use PTK anyway.
     
  8. Jason Chong

    Original Member

    Joined:
    Jul 30, 2004
    Messages:
    264
    Likes Received:
    0
    Here's a pop quiz.

    What 2D library has

    1. 3D acceleration on Windows using DirectX (7.0) for compatibility.
    2. Portable across Mac (Using OpenGL)
    3. Comes with source code.
    4. Affordable or free/Opensource.


    So far I've not seen one at all that fullfills simple criterias above.
     
  9. Dingo Games

    Indie Author

    Joined:
    Jul 26, 2004
    Messages:
    143
    Likes Received:
    0
    Doesn't PTK meet all these? Unless $200 isn't considered affordable? But really, considering how much time you are going to put into your game, it is a small amount.
     
  10. Jason Chong

    Original Member

    Joined:
    Jul 30, 2004
    Messages:
    264
    Likes Received:
    0
    Well I didn't know PTK comes with source for $200. Does it ?

    Edit: Woo hoo ok I saw it. You made my day. I'll put it in my shopping basket for my next project.
     
  11. Hidden Sanctum

    Original Member

    Joined:
    Nov 12, 2005
    Messages:
    66
    Likes Received:
    0
    Jason -

    I think you left out:

    5. incredibly responsive support.

    ;) (PTK again).

    I once toyed with Adventure Game Maker as a potential engine for an Adventure Game (obviously) and thought the support was excellent at first. As time wore on and I started to get the hang of it, I became aware of the many limitations and noticed that updates were a bit slow. Bug fixes were taken care of pretty quickly, but changes and new features seemed to be lagging.

    While getting a bit frustrated with the limitations, there was one thing that made the decision for me. Vacations....well, holiday for you Europeans. Support would completely stop and sit in limbo for a month or two. Not a peep. I would hate to be stuck on an issue with a project I was trying to finalize and have to leave it in limbo. Heck, I was just toying with the engine and didn't have a real project going on and that frustrated me. I can only imagine what I would have felt if I had a real project and was working on the release.

    After working with Patrice using PTK for my casual game, it's been like going from night to day. He's been really quick with his responses and PTK is constantly growing with new features and enhancements. You really get a sense that he cares about your project. When it does come time to start coding the Adventure Game, I'm thinking of using PTK for that as well. So far it will do everything I need except one thing and Patrice already mentioned that he will be adding that as well sometime in the future. Basically, after working with PTK and Patrice, I now have total faith in it.
     
  12. mamashop

    Original Member

    Joined:
    Dec 4, 2004
    Messages:
    14
    Likes Received:
    0
    Does anyone know if the popcap framework supports file compression? i basically need all my art, sound resouces to be compressed into 1 single file to be loaded during runtime, and i have no problem doing this using blitz3d, and was thinking of switching to popcap, but that's one hurdle i'm interested in knowing.
     
  13. DGuy

    Original Member

    Joined:
    Jul 28, 2004
    Messages:
    131
    Likes Received:
    0
    Nope, it does not support compression, nor packing of all resources into a single file. Download any PopCap game and take a look at its directory structure. You'll see the games resources are simply laid out in subdirectories below the executable, with an XML file telling the framework where to find everything.
     
  14. mamashop

    Original Member

    Joined:
    Dec 4, 2004
    Messages:
    14
    Likes Received:
    0
    DGuy,

    i've just downloaded TalisMania Deluxe, which i think is a popcap game, and i see a .saf file. Could that be a compression?
     
  15. stiill

    Original Member

    Joined:
    Feb 13, 2006
    Messages:
    108
    Likes Received:
    0
    Back to PTK, can you productively use PTK without any of that scripting language, just C++?
     
  16. Pyabo

    Original Member

    Joined:
    Jul 27, 2004
    Messages:
    1,315
    Likes Received:
    0
    Yes! In fact... there is no scripting at all. Perhaps you are confusing it with Torque? Just download the demo.
     
  17. stiill

    Original Member

    Joined:
    Feb 13, 2006
    Messages:
    108
    Likes Received:
    0
    Ah, yes, I was thinking of something else. I'll have to download the demo and compare to PopCap. I do like the multiplatform aspect.
     
  18. HairyTroll

    Original Member

    Joined:
    Jul 29, 2004
    Messages:
    582
    Likes Received:
    0
    PTK only exports a C++ API so you can only interface to it using C++ code (unless you generate wrappers yourself). Sucks. I wish more libraries would export a C API.
     
  19. Dan MacDonald

    Moderator Original Member Indie Author

    Joined:
    Jul 26, 2004
    Messages:
    1,424
    Likes Received:
    0
    And while their at it, they should support ASM, it's much faster then C!
     
  20. HairyTroll

    Original Member

    Joined:
    Jul 29, 2004
    Messages:
    582
    Likes Received:
    0
    No, it is not a speed issue. It is about libraries that assume that C++ is the only language on the planet. There are a lot of libraries that are written in C++ but export a C API for this very reason.

    A C API allows for very easy integration with all languages (Python, Lisp, Pascal, C++, etc...) because it does not have any of the name mangling issues that are inherent in the C++ API.
     

Share This Page

  • About Indie Gamer

    When the original Dexterity Forums closed in 2004, Indie Gamer was born and a diverse community has grown out of a passion for creating great games. Here you will find over 10 years of in-depth discussion on game design, the business of game development, and marketing/sales. Indie Gamer also provides a friendly place to meet up with other Developers, Artists, Composers and Writers.
  • Buy us a beer!

    Indie Gamer is delicately held together by a single poor bastard who thankfully gets help from various community volunteers. If you frequent this site or have found value in something you've learned here, help keep the site running by donating a few dollars (for beer of course)!

    Sure, I'll Buy You a Beer