Best SDK?

  • (2 Pages)
  • +
  • 1
  • 2

23 Replies - 12435 Views - Last Post: 15 February 2008 - 12:48 PM Rate Topic: -----

#1 Cyborg Ninja  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 56
  • Joined: 29-January 08

Best SDK?

Post icon  Posted 02 February 2008 - 09:28 PM

What is the best SDK for game development on Windows? I realize that using the word "best" can actually be ambiguous, so I'll expand on that. I'd like to know which SDK will help me most if I decide to move into game development as a career. I've heard that OpenGL no longer has built-in support with Windows, is this true? Will this effect OpenGL's future? Also, which do you prefer, personally?
Is This A Good Question/Topic? 0
  • +

Replies To: Best SDK?

#2 KYA  Icon User is offline

  • g++ jameson.cpp -o beverage
  • member icon

Reputation: 3105
  • View blog
  • Posts: 19,144
  • Joined: 14-September 07

Re: Best SDK?

Posted 03 February 2008 - 04:55 AM

View PostCyborg Ninja, on 2 Feb, 2008 - 10:28 PM, said:

What is the best SDK for game development on Windows? I realize that using the word "best" can actually be ambiguous, so I'll expand on that. I'd like to know which SDK will help me most if I decide to move into game development as a career. I've heard that OpenGL no longer has built-in support with Windows, is this true? Will this effect OpenGL's future? Also, which do you prefer, personally?



DirectX. I'm still wading through the API, but its a lot of fun and the industry standard for PC games.

--KYA
Was This Post Helpful? 0
  • +
  • -

#3 WXY  Icon User is offline

  • D.I.C Head
  • member icon

Reputation: 0
  • View blog
  • Posts: 85
  • Joined: 02-January 08

Re: Best SDK?

Posted 03 February 2008 - 05:23 AM

View PostCyborg Ninja, on 2 Feb, 2008 - 09:28 PM, said:

What is the best SDK for game development on Windows? I realize that using the word "best" can actually be ambiguous, so I'll expand on that. I'd like to know which SDK will help me most if I decide to move into game development as a career. I've heard that OpenGL no longer has built-in support with Windows, is this true? Will this effect OpenGL's future? Also, which do you prefer, personally?


The last time I've checked it's not that OpenGL support is no longer built into windows (cause technically it never really was, even DirectX components were dynamic libraries) Its just that now vista is now more so fused with DirectX (specially direct3D). So you don't need to panic about things yet.

Personally I have been working with direct3D for a while now, it's a lot more confined in the sense the theres pretty much only one good way to do everything, while every other logical approaches noticeably sucks a heck of a lot more. DirectX has a decent manual, but like all documentation from Microsoft.... it tends to have a bad language choice where things that could be explained in a few words are inflated to lines of technical gibberish. None the less yours truly has so far been able to survive on nothing more than the official documentation + samples and doing pretty well I must add =)

OpenGL, learning it has no disadvantages cause Direct3D users usually notice that the steps needed to take to start rendering and even most of the rendering procedure is conceptually the same. The big difference with OpenGL is however that it is non OOP, which means your getting no compensations for using C++ instead of C (though it also means your code might run faster). The other thing with OpenGL is that its easier for you to write non-hardware-portable code as most new non standard features are supported via hardware specific APIs distributed by the graphics cards vendors, which is a big issue if you want absolution in hardware (which direct3D 10 , not 9, guarantees, but OpenGL does not) none the less that is only a factor if you want OpenGL to score you big points in results
Was This Post Helpful? 0
  • +
  • -

#4 Cyborg Ninja  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 56
  • Joined: 29-January 08

Re: Best SDK?

Posted 03 February 2008 - 03:58 PM

Quote

"... but like all documentation from Microsoft.... it tends to have a bad language choice where things that could be explained in a few words are inflated to lines of technical gibberish."

LOL, I've noticed that myself with Visual Studio. I'm afraid I can't understand anything at all from Microsoft's documentation.

Thanks for the replies. I think I will go with DirectX. I would like to work more with OOP. My friend really liked OpenGL, but he also loves Perl, and it sounds like both are somewhat obfuscated. I'm comfortable with using only one approach to do what I want.
Was This Post Helpful? 0
  • +
  • -

#5 Cyborg Ninja  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 56
  • Joined: 29-January 08

Re: Best SDK?

Posted 04 February 2008 - 01:00 PM

Another question: DirectX9 or 10? I can't find many books that cover 10.
Was This Post Helpful? 0
  • +
  • -

#6 MorphiusFaydal  Icon User is offline

  • D.I.C Lover
  • member icon

Reputation: 43
  • View blog
  • Posts: 1,376
  • Joined: 12-May 05

Re: Best SDK?

Posted 04 February 2008 - 01:41 PM

View PostCyborg Ninja, on 4 Feb, 2008 - 02:00 PM, said:

Another question: DirectX9 or 10? I can't find many books that cover 10.


That's because 10 is still very new and only works on Vista.
Was This Post Helpful? 0
  • +
  • -

#7 Nova Dragoon  Icon User is offline

  • The Innocent Shall Suffer, Big Time
  • member icon

Reputation: 36
  • View blog
  • Posts: 6,169
  • Joined: 16-August 01

Re: Best SDK?

Posted 04 February 2008 - 01:41 PM

I haven't used directX since 7, but if the trend continues, DX is the obfuscated on, OpenGL is very simple and straight forward, cross platform, etc etc. From what I remember of DX it was like
DirectDraw7lpcComObjectInitilation(lpHWin32classContainer *dd7winhandle, ... );
Was This Post Helpful? 0
  • +
  • -

#8 Cyborg Ninja  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 56
  • Joined: 29-January 08

Re: Best SDK?

Posted 04 February 2008 - 01:43 PM

You're sure it only works on Vista? I checked out Microsoft's site, and the page just said "DirectX" without a number. I assumed it was 10, and it said it was compatible with all types of Windows platforms, including XP.
Was This Post Helpful? 0
  • +
  • -

#9 MorphiusFaydal  Icon User is offline

  • D.I.C Lover
  • member icon

Reputation: 43
  • View blog
  • Posts: 1,376
  • Joined: 12-May 05

Re: Best SDK?

Posted 04 February 2008 - 02:10 PM

View PostCyborg Ninja, on 4 Feb, 2008 - 02:43 PM, said:

You're sure it only works on Vista? I checked out Microsoft's site, and the page just said "DirectX" without a number. I assumed it was 10, and it said it was compatible with all types of Windows platforms, including XP.


That's one of the "selling points" of Vista - DirectX 10.

You might be able to program using DirectX 10 on Windows XP, but it won't run. Same with the All-In-One installer - the DirectX 10 stuff only installs on Vista. Go ahead and try it.

This post has been edited by MorphiusFaydal: 04 February 2008 - 02:11 PM

Was This Post Helpful? 0
  • +
  • -

#10 Tom9729  Icon User is offline

  • Segmentation fault
  • member icon

Reputation: 180
  • View blog
  • Posts: 2,641
  • Joined: 30-December 07

Re: Best SDK?

Posted 04 February 2008 - 02:19 PM

Disclaimer: I'm an OpenGL programmer, I do not and have never used DirectX. Everything about DirectX in this post is from tutorials I've read/skimmed. Please correct me if I've gotten anything wrong. :)

DirectX 10 only works on Vista. It's one of their incentives to get people to "upgrade".

OpenGL may not be object oriented (though OpenGL 3.0 is supposed to be IIRC), but it's pretty simple to use.

This will draw you a coloured triangle in OpenGL.
glBegin(GL_TRIANGLES);

glColor3d(1.0, 0.0, 0.0);
glVertex3d(0.0, 0.0, 0.0);

glColor3d(0.0, 1.0, 0.0);
glVertex3d(0.0, 1.0, 0.0);

glColor3d(0.0, 0.0, 1.0);
glVertex3d(1.0, 0.0, 0.0);

glEnd();



Below is the same thing in DirectX (if anyone codes in DirectX, feel free to post a better way of doing this, this is just what I found in a tutorial).

GraphicsStream stm = vertexBuffer.Lock(0, 0, 0);
CustomVertex.TransformedColored[] verts =  new CustomVertex.TransformedColored[3];

verts[0].X=150;
verts[0].Y=50;
verts[0].Z=0.5f;
verts[0].Rhw=1;
verts[0].Color = System.Drawing.Color.Aqua.ToArgb();
verts[1].X=250;
verts[1].Y=250;
verts[1].Z=0.5f;
verts[1].Rhw=1;
verts[1].Color = System.Drawing.Color.Brown.ToArgb();
verts[2].X=50;
verts[2].Y=250;
verts[2].Z=0.5f;
verts[2].Rhw=1;
verts[2].Color = System.Drawing.Color.LightPink.ToArgb();
stm.Write(verts);
vertexBuffer.Unlock();



DirectX is supposed to have more functions that "help gamers" built in, but if you're using it then you're locked onto one platform, and the API's likely change quite a bit from version to version (of which there are many).

OpenGL is a little more low level, but it's crossplatform, and new versions are not released very often.
Was This Post Helpful? 0
  • +
  • -

#11 KYA  Icon User is offline

  • g++ jameson.cpp -o beverage
  • member icon

Reputation: 3105
  • View blog
  • Posts: 19,144
  • Joined: 14-September 07

Re: Best SDK?

Posted 05 February 2008 - 02:42 AM

View PostTom9729, on 4 Feb, 2008 - 03:19 PM, said:

Disclaimer: I'm an OpenGL programmer, I do not and have never used DirectX. Everything about DirectX in this post is from tutorials I've read/skimmed. Please correct me if I've gotten anything wrong. :)

DirectX 10 only works on Vista. It's one of their incentives to get people to "upgrade".

OpenGL may not be object oriented (though OpenGL 3.0 is supposed to be IIRC), but it's pretty simple to use.

This will draw you a coloured triangle in OpenGL.
glBegin(GL_TRIANGLES);

glColor3d(1.0, 0.0, 0.0);
glVertex3d(0.0, 0.0, 0.0);

glColor3d(0.0, 1.0, 0.0);
glVertex3d(0.0, 1.0, 0.0);

glColor3d(0.0, 0.0, 1.0);
glVertex3d(1.0, 0.0, 0.0);

glEnd();



Below is the same thing in DirectX (if anyone codes in DirectX, feel free to post a better way of doing this, this is just what I found in a tutorial).

GraphicsStream stm = vertexBuffer.Lock(0, 0, 0);
CustomVertex.TransformedColored[] verts =  new CustomVertex.TransformedColored[3];

verts[0].X=150;
verts[0].Y=50;
verts[0].Z=0.5f;
verts[0].Rhw=1;
verts[0].Color = System.Drawing.Color.Aqua.ToArgb();
verts[1].X=250;
verts[1].Y=250;
verts[1].Z=0.5f;
verts[1].Rhw=1;
verts[1].Color = System.Drawing.Color.Brown.ToArgb();
verts[2].X=50;
verts[2].Y=250;
verts[2].Z=0.5f;
verts[2].Rhw=1;
verts[2].Color = System.Drawing.Color.LightPink.ToArgb();
stm.Write(verts);
vertexBuffer.Unlock();



DirectX is supposed to have more functions that "help gamers" built in, but if you're using it then you're locked onto one platform, and the API's likely change quite a bit from version to version (of which there are many).

OpenGL is a little more low level, but it's crossplatform, and new versions are not released very often.


I don't think people should be discouraged from API's with a steep learning curve. Get the directX 9.0c SDK if you want to go that way.

--KYA
Was This Post Helpful? 0
  • +
  • -

#12 Nykc  Icon User is offline

  • Gentleman of Leisure
  • member icon

Reputation: 729
  • View blog
  • Posts: 8,642
  • Joined: 14-September 07

Re: Best SDK?

Posted 05 February 2008 - 07:25 AM

I wouldn't recommend hopping into DirectX 10. - your restricting yourself to one platform. Directx 9 would be a better start if you want to go with DirectX. It's not going anywhere anytime soon.
Was This Post Helpful? 0
  • +
  • -

#13 Tom9729  Icon User is offline

  • Segmentation fault
  • member icon

Reputation: 180
  • View blog
  • Posts: 2,641
  • Joined: 30-December 07

Re: Best SDK?

Posted 05 February 2008 - 11:33 AM

View PostKYA, on 5 Feb, 2008 - 02:42 AM, said:

I don't think people should be discouraged from API's with a steep learning curve. Get the directX 9.0c SDK if you want to go that way.

--KYA

I said nothing about a learning curve.

I said OpenGL was "simple to use", not "easy to learn". If you can learn one, you can probably learn the other. I just think simplicity is a good thing. :^:
Was This Post Helpful? 0
  • +
  • -

#14 Cyborg Ninja  Icon User is offline

  • D.I.C Head

Reputation: 0
  • View blog
  • Posts: 56
  • Joined: 29-January 08

Re: Best SDK?

Posted 05 February 2008 - 12:30 PM

So, OpenGL is not constricted to one platform. If I wanted it to give my game to people using another platform/OS, would I have to give them the source code and they would have to compile it themselves?
Was This Post Helpful? 0
  • +
  • -

#15 Tom9729  Icon User is offline

  • Segmentation fault
  • member icon

Reputation: 180
  • View blog
  • Posts: 2,641
  • Joined: 30-December 07

Re: Best SDK?

Posted 05 February 2008 - 05:15 PM

You could always compile it for that platform/os yourself. Just run a virtual machine.
Was This Post Helpful? 0
  • +
  • -

  • (2 Pages)
  • +
  • 1
  • 2