Jump to content
  • Advertisement
Sign in to follow this  
Chrono1081

Which way to go?

This topic is 3641 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Let me start off by saying I do not want this to turn into flame bait, this is an honest question that I have not found the answer to through forum searches, or google. I have dabbled in SDL, and I have dabbled in Win32 API and I have many books that use one or the other (and I will be learning both). But aside from one being cross platform, is there really one that is generally used over the other? From forum searching and googling here is what I came up with: Win32 API leads to using Direct X and is not cross platform. Learning SDL leads to using OpenGL and is cross platform. Aside from the above is there any advantage to learning one over the other?

Share this post


Link to post
Share on other sites
Advertisement
I started learning SDL probably about 2 weeks ago and I'm almost done with my first game engine. It's clear that, by design, it's been created to cater to newcomers. My advice is to start there. Make something and then when you have that experience, move to OpenGL since it'll be a smoother transition than DirectX.

I don't have any personal experience with DirectX, but I hear it's in many ways similar to OpenGL. So it's really your call.

I wouldn't recommend it, but if you feel you MUST do 3d programming before learning how to do 2d stuff, XNA game studio is a good starting point. Microsoft has adopted the same easily-approachable philosophy, but since it's relatively new, I found it buggy and limited. Still, it's a good starting point for 3d.

XNA runs on either DirectX 9 or 10. I forget which.

Your choice.

Share this post


Link to post
Share on other sites
Quote:

Win32 API leads to using Direct X and is not cross platform.

Learning SDL leads to using OpenGL and is cross platform.

Just because SDL and OpenGL are themselves cross platform won't make you capable of writing cross platform code purely by virtue of using/learning those APIs. This is a myth. Writing cross platform code should not generally be a concern for beginners -- it's not quite as simple as just using APIs that are capable of multiple platform deployment because those APIs frequently don't cover all the bases required of whatever program you eventually try to write.

Besides, a good developer will be able to pick up new APIs quickly once he or she is experienced enough, so you should not concern yourself with picking the "wrong" API now. Pick the one you like better or that makes more sense or that works for what you want, and use that. When eventually you need to expand, consider alternative APIs then.

Remember, cross platform projects are rarely worth the extra effort they involve, especially for a hobby developer.

Quote:

XNA runs on either DirectX 9 or 10. I forget which.

9.

Share this post


Link to post
Share on other sites
Quote:
Original post by Chrono1081
Win32 API leads to using Direct X and is not cross platform.

The Win32 API does not force you into using DirectX/Direct3D, OpenGL is also an option. There's some truth to DirectX depending on a Windows environment, but not the other way around.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!