13 Replies - 8704 Views - Last Post: 10 February 2012 - 09:47 AM Rate Topic: -----

#1 RLB31384  Icon User is offline

  • D.I.C Head

Reputation: 10
  • View blog
  • Posts: 97
  • Joined: 29-January 10

SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 12:14 AM

Hi guys, I have a thread over in the mobile section where I was asking about iphone games. Modi helped me a lot with it and I think I'm going to have to wait on an iphone game because of the expenses.

I was already debating on SDL from other topics I had read. I figure I should start with a 2D game and wait on opengl?

I'm best at C++ and have only skimmed through the Java for dummies book, it seems fairly simple, but I have no really wrote anything major in Java as I prefer C++. Heres some of the classes I have taken:

Python, C++ (introductory and advanced), data structures (also advanced), parallel programming, theory of programming languages, VB (introductory only), operating systems, software engineering, game concepts class. Also have taken a bunch of Information system classes (my minor) and some Math classes.

I am also taking an Artificial Intelligence class, and a game design class this semester too.

I eventually would like to get a cheap MAC and make an iphone game, so perhaps I should go for programming for the Android and get Android SDK?

Can anyone that has used all them, tell me which would be easiest to learn at first, or are they all similar? Also, what about XNA? Would there be any benefit for me in picking that over SDL? I would have to figure out a little about C#, but im sure I could if it was worth it.

Anyways, I plan on making a game for my final project for my BS in CS, I have four months to do it. So hopefully none of these would take me longer than that to learn and use. Im going to be doing more research to decide but I really can't find much information actually comparing which to use when beginning programming. I'm assuming maybe theres not a big difference between most?

oh, I could also do Flash, and learn actionscript, perhaps make a game for facebook? I'm not sure if that would be a good idea or not...

What do most people start out with?

Thanks for any and all help!

This post has been edited by RLB31384: 19 January 2011 - 12:16 AM


Is This A Good Question/Topic? 1
  • +

Replies To: SDL, Opengl, XNA, or Android SDK for first game?

#2 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 0
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 06:27 AM

Firstly, you certainly have a head start with the classes that you have taken and the material that you are already familiar with. I started with C++ and OpenGL (with some DirectX) working on a 3D game after graduation, and it took me about a year from not knowing anything about game programming to my first 3D game, but you have four months.

I don't know if writing a mobile game will be a good idea as there still a fair bit to learn, so I would stick with the PC for your final year project and the mobile as your home brew.

Now to the OpenGL, SDL, XNA, DirectX decision. Recall that OpenGL is just a graphics library and the rest also offer audio and IO libraries. We can't really tell you which will be best for you per se, but the choice you make should really be based on:

1. Do you know enough about the SDK to get a game written in four months to a good standard?
2. Are you aiming for a professional programming career?
Was This Post Helpful? 2
  • +
  • -

#3 Fib  Icon User is offline

  • D.I.C Addict
  • member icon

Reputation: 161
  • View blog
  • Posts: 554
  • Joined: 12-March 09

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 10:23 AM

Here are some things that you may not have know, that could affect your decision.

SDL is a cross-platform 2d graphics library. So you can write 2d graphics code for linux, mac, and windows (I believe it's built on top of openGL, not 100% on that). It's super simple to learn, and easy to use. You can use C++.

OpenGL is also a cross-platform graphics library, but you can code 3d graphics. It's much more complicated than SDL. You can use C++.

DirectX is a game library that handles graphics, input, sound, and some other stuff. It is capable of 3d graphics. It's just as complicated as OpenGL i would say. DirectX is windows only. You can use C++.

XNA is built on top of DirectX (i think), so it's also windows only. It also does graphics, sound, input, and other stuff. It's capable of 3d graphics. You have to use C#, but it's pretty quick and easy to learn, and you can make games pretty fast. It hides a lot of the boring stuff for you, so you can just focus on making games.

I've used XNA, SDL, a little bit of Direct3D. XNA is my favorite so far because it's so quick and easy to get games up and running, but I also really like SDL for 2d games. I've never used OpenGL so I can't say anything about it. I've never touched mobile development, but I hear that Android is pretty easy to program for because it's all free, you get an Android emulator, and it's in java. But that's just what i hear.

So I hope that gives you a little more information about your options so you can make a better informed decision.
Was This Post Helpful? 2
  • +
  • -

#4 RLB31384  Icon User is offline

  • D.I.C Head

Reputation: 10
  • View blog
  • Posts: 97
  • Joined: 29-January 10

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 11:44 AM

Thanks guys, the information is greatly appreciated.

I had went ahead and ruled DirectX out as I figured it was the hardest but it seems I should leave opengl out for something later as well. As I have heard I should start with a 2d game, that and I've heard 3d games take a lot of math skills. (I have some math skills, but I've probably forgotten most of the stuff I learned in math)

As of now I know nothing about any of them. I do know C++ fairly well, but im sure theres things I could brush up on since I haven't used them a lot, they aren't pounded in my head yet.

So basically XNA would be easiest, SDL may be more impressive for use in a portfolio and I could learn to incorporate opengl with it? Then of course theres Android SDK which is in Java, and have heard it is pretty easy to learn. But it seems hard to find much information on. Ill try to find some tutorial videos of them all when I get home and hopefully can pick one by tonight.

Anyways for my career, I have been thinking of making mobile games, I have also thought about facebook games. I wouldn't mind getting into some harder games though. I also wouldn't mind just programming software if I found a good job. I just hope im not getting myself into a project that I won't be able to complete in the four months I have. I'm not sure if its my school or the degree, but I would have thought I would have had to write a 2d game by now in CS.

Thanks again
Was This Post Helpful? 0
  • +
  • -

#5 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 0
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 11:51 AM

DirectX is fiddly, but I'd still be careful in choosing the right one. Spend the next day or two creating a triangle or something in each to see how you really feel about them. :)
Was This Post Helpful? 2
  • +
  • -

#6 Fib  Icon User is offline

  • D.I.C Addict
  • member icon

Reputation: 161
  • View blog
  • Posts: 554
  • Joined: 12-March 09

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 01:51 PM

View PostButchDean, on 19 January 2011 - 12:51 PM, said:

DirectX is fiddly, but I'd still be careful in choosing the right one. Spend the next day or two creating a triangle or something in each to see how you really feel about them. :)


Agreed.
Was This Post Helpful? 0
  • +
  • -

#7 RLB31384  Icon User is offline

  • D.I.C Head

Reputation: 10
  • View blog
  • Posts: 97
  • Joined: 29-January 10

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 02:38 PM

After class today, my choices may have gotten narrowed down for me. As I have to present like 5th of 20. Anyways...is it reasonable to look at any of them and think I can create something decent in a little under 3 months. I've heard everyone say that XNA was good because it can create games fast, and easier. So perhaps I can use that? I have never looked at C# but I imagine its not hard to adjust from C++? I can invest a lot of time, but I also have AI class which could take up a lot of time. I have a game fundamentals class which may or may not be hard (im leaning towards not) I have a gen ed class which will be easy, and a 1 credit hour class which will be easy. Also have a CIS web technology class (xhtml, css exc.) That sounds easy too.

So probably two hard classes...little less than 3 months...Does that even sound doable? Or am I dreaming? It wouldn't have to be a great game I don't think. Something simple, maybe a puzzle game, perhaps a 2d game similar to Mario. Maybe something like bejeweled or a game where you click colored balls and try to remove them all. Have no idea yet, just want to make sure i don't start something I don't have a shot at completing.

Thanks again
Was This Post Helpful? 0
  • +
  • -

#8 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 0
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 02:42 PM

To be honest, we can't really even tell you what you will have a shot at completing because we don't know the rate at which you learn, and even if you do learn well will this talent translate to game development skills. It's not unheard of that application developers, who excel in their own fields, cannot code a game to save their lives; it's a different train of thought to regular coding.

I still say that you need to spend a short time testing the water within whatever constraints you're working under. :)
Was This Post Helpful? 1
  • +
  • -

#9 stayscrisp  Icon User is offline

  • フカユ
  • member icon

Reputation: 998
  • View blog
  • Posts: 4,173
  • Joined: 14-February 08

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 03:27 PM

I would say have a look into XNA and see how it is. If you want to start using SDL you could check out the tutorials in my sig, at the moment they will help you create a nice game framework and get something drawing to the screen. They will not help you create a full game.

Also check out the XNA tutorials written by SixOfEleven here. Three months is not very long to develop a game so keep it simple and try to focus on getting a basic game working before trying any extra features.
Was This Post Helpful? 1
  • +
  • -

#10 RLB31384  Icon User is offline

  • D.I.C Head

Reputation: 10
  • View blog
  • Posts: 97
  • Joined: 29-January 10

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 04:06 PM

I plan to load up XNA tonight and SDL as well. I've already looked at code for SDL for drawing shapes and stuff. Looks pretty simple. BTW I learn at a fast rate, but I also forget at a fast rate =P Hopefully I can mess around with it in a few and I can report back what I think. I'm really afraid of starting a project which I can't finish, but he did say that a lot of people don't finish, and thats fine as long as it looks like you worked hard on it.

And yeah if I go forward with this, ill make something pretty simple and if I got time left over ill add in some stuff.

Thanks for all the help.
Was This Post Helpful? 0
  • +
  • -

#11 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 0
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 04:26 PM

Design your code base well, young Jedi. *vanish* :)
Was This Post Helpful? 1
  • +
  • -

#12 SixOfEleven  Icon User is offline

  • using Caffeine;
  • member icon

Reputation: 945
  • View blog
  • Posts: 6,342
  • Joined: 18-October 08

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 19 January 2011 - 05:01 PM

For fast and easy to get a game up and going, I've not found a framework as easy as XNA. Microsoft put a lot of thought into the framework and each revision they've made they've made it better. I may be a little biased as I use it almost exclusively. You're experiences with C++, and a little Java, so C# is not all that hard to pick up. I tend to prefer it to Java but that is my preference, I'm not saying it is any better or worse. In the end though it will come to your comfort zone and preference. Any of the tools/languages will make a game. If you don't want to spend the time learning C# first just so you can use XNA, then SDL would be a great choice. You obviously have a very good working knowledge of C++ so going with SDL you won't have to worry about figuring out the nuances of the programming language before moving to game programming. I'd consider going with SDL as you're already very familiar with C++. SDL is good in that it hides dealing with things like Win32 for you. Either of the two will get you where you want to go. Fiddle around with the two, not too long though, and see which you like more say by Monday and go with that one.
Was This Post Helpful? 1
  • +
  • -

#13 _Phantom_  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 2
  • Joined: 10-February 12

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 10 February 2012 - 03:21 AM

Try Linderdaum Engine + Android SDK + Android NDK. It is open source and runs on Windows and Android. You can do most of the development on Windows.
Was This Post Helpful? 0
  • +
  • -

#14 DivideByZero  Icon User is offline

  • D.I.C Addict
  • member icon

Reputation: 238
  • View blog
  • Posts: 551
  • Joined: 02-December 10

Re: SDL, Opengl, XNA, or Android SDK for first game?

Posted 10 February 2012 - 09:47 AM

Another great option is Slick2D.
It works very similarly to XNA, but it's in Java instead :)
You can also get it to work with android easily too.
Plus, it's cross platform unlike XNA.
http://slick.cokeand...m/wiki/doku.php

This post has been edited by DivideByZero: 10 February 2012 - 09:48 AM

Was This Post Helpful? 0
  • +
  • -

Page 1 of 1