XNA or OpenGL

Started by
13 comments, last by Shashwat 13 years, 9 months ago
Quote:If you run into things the C# and XNA can't handle, solve it yourself or take a look around for alternatives.


What type of things are they?
XNA can do everything which OpenGL can? Are you talking about its platform independence?

Quote:You don't have to learn C++ to use OpenGL. You can use it with C# just fine through, e.g. OpenTK.


What is OpenTK? I know C++ but not VC++.
Advertisement
XNA is based on DirectX.
So, what is advantage of DirectX over OpenGL? Even it is not productive like XNA.
Quote:What is OpenTK?

Why don't you google it? First result.
Anyways if you are a beginner, you're learning and you don't have any especific reason to use OpenGL, IMO you should stick to the XNA with C# and DirectX.
Quote:Original post by Shashwat
XNA is based on DirectX.
So, what is advantage of DirectX over OpenGL? Even it is not productive like XNA.


Look, threads regarding "DX vs OpenGL" arguments can be found everywhere on the internet. They're mostly a waste of time. If you got lot of time to waste feel free to google and loose yourself into it for days.
They both are interfaces to talk to a video card, the same video card.. so they basically do the same things.
So it doesn't really matter what they do and how they do it, the difference is what YOU are going to do with those. They're tools to do a job.
Whatever tool you will learn, it'll make it easier for you to learn another one after that.

XNA is based on DX9. The reasons DX9 is still in use are:

- Most game companies have lots of existing libraries in C++. Going XNA would mean to give up all this backbone infrastructure. This is, usually a no no
- DX9 is the base for XBOX 360 development. XNA can be used to develop on the XBOX but performances are pretty bad at the moment, and, anyway, the same reason as above would apply

IMO, the "problem" with DX9 and OpenGL is that they have too much "past" and offer too many ways to do the same things... most of the time you'll find easy OpenGL tutorials using immediate mode but then you'll realise that's not what you need to make things go fast.
Same goes with DX9 that offers both a FFP and a shader-based pipeline.

XNA (and DX10/11) are modern takes on the problem and they offer ONE GOOD shader based approach to rendering that will give you good result and point you in the right direction regarding modern real time 3D application developing.

Anyhow, the worst thing you can do is to waste your time thinking "what is best?"... there is no best, just pick one and do stuff.

Stefano Casillo
TWITTER: [twitter]KunosStefano[/twitter]
AssettoCorsa - netKar PRO - Kunos Simulazioni

Quote:Anyhow, the worst thing you can do is to waste your time thinking "what is best?"... there is no best, just pick one and do stuff.


I'm not wasting time by asking this. I'm learning XNA side-by-side.

And thanks for your reply. Your explanation made it clear in my mind what to do.

This topic is closed to new replies.

Advertisement