3D Hardware for 2D. Is it worth it?

Discussion in 'Indie Basics' started by Gnatinator, Feb 1, 2005.

  1. Gnatinator

    Original Member

    Joined:
    Nov 23, 2004
    Messages:
    357
    Likes Received:
    0
    Hey guys. I want your opinions on taking advantage OpenGL for 2D games.

    Is it really worth using the GPU even if it means cutting out the percentage of users without the required OpenGL hardware?

    Thanks.
    - Gnat
     
  2. Raptisoft

    Indie Author

    Joined:
    Jul 29, 2004
    Messages:
    804
    Likes Received:
    0
    When thinking about something like this, look to the masters: Popcap. They moved their graphics over to 3D, but still support 2D for older computers. I believe they only have a small user base that have machines poor enough to require software processing, but cover them nonetheless.
     
  3. baegsi

    Original Member

    Joined:
    Oct 8, 2004
    Messages:
    424
    Likes Received:
    0
    Well, the questions remains if a small indie developer should try to compete with Popcap who have outgrown the indie status long time ago.
     
  4. luggage

    Moderator Original Member Indie Author

    Joined:
    Jul 27, 2004
    Messages:
    2,132
    Likes Received:
    0
    Look to PrinceC's threads regarding uptake of OpenGL and make a decision based on that. 50% of users not being able to run your game?

    If you were going to use 3d for 2d, then go for as low a version of DirectX as you can for windows. At most DirectX 8, DX9 uptake isn't there yet.

    Try and keep your D3D calls away from your game code. We used a simple API for our engine. So calls like Image_Load returned an image structure. This made it trivial to convert to different versions of DirectX, libraries, etc.
     
  5. James C. Smith

    Moderator Original Member

    Joined:
    Aug 21, 2004
    Messages:
    1,768
    Likes Received:
    0
    It’s not the hardware that the problem. It’s the software. Even old low end machines have decent 3D hardware (good enough for 2D games anyway.) The problem is that working OpenGL drivers are often not installed. As luggage points out, there are many existing discussions about this on this forum. I just wanted to make sure you understand that using 3D acceleration hardware is a software problem not a hardware problem. Much of the software problem can be avoided by using DirectX 7 or 8 if you must. There are also potential solutions to the OpenGL software problem mentioned in other recent optics. (In other words, you can use OpenGL and ship with a utility to help install working drivers)
     
    #5 James C. Smith, Feb 1, 2005
    Last edited: Feb 1, 2005
  6. princec

    Indie Author

    Joined:
    Jul 27, 2004
    Messages:
    4,873
    Likes Received:
    0
    It was 35% of Windows and 1% of OSX users. 50% of Linux users (so who cares?). And this is not forgetting that the overlap between "potential customers" and "people without OpenGL drivers" is not anywhere near 100%.

    Cas :)
     
  7. luggage

    Moderator Original Member Indie Author

    Joined:
    Jul 27, 2004
    Messages:
    2,132
    Likes Received:
    0
    My mistake - 35% of potential customers won't even be able to run your game.
     
  8. princec

    Indie Author

    Joined:
    Jul 27, 2004
    Messages:
    4,873
    Likes Received:
    0
    No, that's still not right, and you're deliberately being obtuse.

    35% of Windows machines will not be able to run the game. This has nothing directly to do with customers. I would still dearly like to find out what the correlation is.

    Cas :)
     
  9. luggage

    Moderator Original Member Indie Author

    Joined:
    Jul 27, 2004
    Messages:
    2,132
    Likes Received:
    0
    Everyone is a potential customer.
     
  10. Hamumu

    Indie Author

    Joined:
    Jul 26, 2004
    Messages:
    557
    Likes Received:
    0
    Not the Amish.
     
  11. oNyx

    Original Member

    Joined:
    Jul 26, 2004
    Messages:
    1,212
    Likes Received:
    0
    Say... you're doing somewhat hardcore-ish twitch games. People who like to play those games are more likely to have usable drivers, because most of these games require em. But you could also argue that those people with broken drivers might be more willing to buy the game, because there are less games which work on their machines.

    So you could assume that switching to software rendering might also reach those 35%, but it doesn't. Giving up acceleration means that your game will need more cpu power. Easily 2-10 times more... that will also take it's piece of the cake. Therefore you might end up with even less potential customers then before. Someone *might* upgrade the drivers, but it's really unlikely that anyone out there would upgrade the cpu (=whole system usually) for a shareware game.

    You could use DX. Right. But then you would lose the mac (and the rather unimportant linux) crowd. Duh. That doesn't sound too appealing...

    What does that mean sales-wise? Who knows? I think the genre is a major factor, which should be taken into account for rule of thumb guesstimates. I would like backing that up with hard data, but I can't. All I can do is cross my fingers and hope it's really the best decision. After all those opengl problems will disappear in the (not to distant) future with those (hopefully correctly) working windows default drivers.

    Just ask yourself some questions. Is it arcade? Hardcore? Is mac support generally a problem or just around the corner? Does the game really need acceleration (eg scrolling, transparency, rotations etc)?

    If you know the answers... it's pretty straightforward, isn't it?
     
  12. svero

    Moderator Original Member Indie Author

    Joined:
    Jul 27, 2004
    Messages:
    3,392
    Likes Received:
    6
    You're not targeting the underground amish game market? Man with major oversites like that no wonder sales are down.
     
  13. Screwball

    Original Member

    Joined:
    Aug 2, 2004
    Messages:
    84
    Likes Received:
    0
    Barn Flux ?
     
  14. willm

    Original Member

    Joined:
    Feb 10, 2005
    Messages:
    11
    Likes Received:
    0
    I use OpenGL to render the board in Chess Commander. Technology wise, it is simple to implement and works well.

    Im not sure where the 50%, or 35% figure comes from. I dont think it represents an equivelent loss in sales. The people that cant run accelerated OpenGL have old machines and are less likely to be buying games in the first place. If you are running OpenGL in fullscreen and only using 2D, you can run your game on quite ancient machines (in PC terms). Running on a desktop is a different story unfortuantely, and is quite dodgy on first generation cards.

    Ideally you would have an OpenGL renderer and a software renderer. You would sacrifice a bit of quality doing it in software, but - depending on the game - you can get equivelent results. Using MMX, can give you fast blending and effects if you dont mind excluding early Pentiums..
     
  15. Pallav Nawani

    Indie Author

    Joined:
    Aug 13, 2004
    Messages:
    371
    Likes Received:
    0
    This would depend on the type of the game, but in general, 3D is the way to go. Lot of new games, even puzzlers are now using 3D API, even if its just for alpha blending. Having developed 2 arcade games without 3D acceleration, I now think that at least for games with fast gameplay, 3D is a must. Alpha blending, anti aliased fonts greatly improve the polish on your game, and for just that reason only using 3D API's is a must. In both my games, I was unable to use alpha blending the way I wanted to use it, I did not manage to use anti aliased fonts, I could not have nice flare like effects, etc.

    Now, it can be said that using 3D API will restrict the number of potential users, but on the other hand, using it will make the game a lot more saleable. Just look at Ricochet & Breakquest for example. If you want to use resolutions equal to or higher than 800x600, there is no way you will get an acceptable frame rate without 3D acceleration (At least on lower end PCs).
     
  16. willm

    Original Member

    Joined:
    Feb 10, 2005
    Messages:
    11
    Likes Received:
    0
    It is practical to do such blending effects in software. Although it will push your minimum spec up a bit. See Ping Ball, which is entirely rendered in software.. (http://www.pingball.com). Sorry for shameless plug! ;)

    Of course it depends on the game. For me it was practical because I had a background with a single grid of alpha blend sprites and a few particle effects. Anything with significant overdraw and framerate would suffer.
     
  17. Raptisoft

    Indie Author

    Joined:
    Jul 29, 2004
    Messages:
    804
    Likes Received:
    0
    There's a stylistic way to do fast alpha blending, if you only care about edge anti-aliasing. If you put a thickish black outline around ALL your characters, then your blend at the edges needs to only DARKEN and not actually blend. It's computationally a lot faster.
     
  18. Jim Buck

    Indie Author

    Joined:
    Jul 27, 2004
    Messages:
    1,158
    Likes Received:
    0
    I don't know about BreakQuest, but all the Ricochet games are software-rendered. The developer posts in these forums and has talked extensively about how he did it. The fact that it was software rendered was a huge factor in its success. After Ricochet, they released Wik and the Lost Souls which used 3d acceleration. Once they heard of all the problems that many people were having with running it, they ended up integrating their software-rendering technology into that game as well.

    Yeah, it's nice to use an elegant 3d api and all. But there are so many problems with going that route, depending on the game, it behooves the developer to have a software-based solution.

    My game will have both hardware and software rendering, and it's 3d. Hence, my choice of using the Quake2 engine - the software renderer in that is top-notch.
     
  19. Pallav Nawani

    Indie Author

    Joined:
    Aug 13, 2004
    Messages:
    371
    Likes Received:
    0
    That's the point: It will push up the minimum spec. My game riotball has quite a bit of blending (all done in software), but will be unplayable on anything less than a celeron 333 (I developed riotball on this machine). Movement gets slightly jerky sometimes.

    Don't worry about your plug: Here's one from me :D : Go to my website and download Natwarlal, its a free winboard chess engine, ELO around 2250. Maybe you can use it in chesscommander!
     
  20. Pallav Nawani

    Indie Author

    Joined:
    Aug 13, 2004
    Messages:
    371
    Likes Received:
    0
    That's a neat trick, thanks for letting me know.

    I am interested in knowing about it. Any links to a relevant discussion?
     

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