You will need understanding of 3d concepts to be able to handle collision detection, physics and so forth. I'm not sure how XNA handles matrix calculations, but I would guess you will still need to understand that topic.
It is not that hard to grasp. Just don't chew over too much in the beginning. Start with being able to display a polygon, then understand how to rotate it. How to put light on it and how to set up a scene. How to set up camera and field of view. Then move on to understand how textures works and effects work.
Roger Larsen
You might also want to start with doing 2D stuff until you're comfortable with the concepts of game development. You might also want to check out the game development webcasts that are available.
I would imagine the Starter Kit(s) would set up the basic game loop and initializing needed so you can check how it's done for future reference. We'll have to wait a few more days to see what the team is going to give us as a baseline. ![]()
Geek Squad wrote:
I've been reading DirectX sdk tutorials and MDX tutorials and things like that, and it seems VERY VERY VERY hard. Will this new XNA studio and the documentation simplify this? All these vectors and whatnot is very complicated and I'm having trouble understanding seemingly basic concepts in game programming in 3d.
Yup. I do recall saying that pretty clearly on the DirectX 101 forums: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=77027&SiteID=1
Many people look down on game programmers but they don’t know that games are one of the most difficult things to program. It funny that when I am working on my resume or talking to a recruiter about a job I feel embarrassed when I talk about any games I have programmed.
So yes game programming is not for everyone like they say on TV, give programming a try and if its not for you there are many more things you can do to help make games.
When you get into collision detection and reaction with high velocity objects, that's when my brain explodes and leaves a black hole.
Game developers are probably some of the most talented individuals when it comes to understanding problems and solving them efficiently. There is still a lot of hacking (performance vs. maintainable code) going on though; that is why they might not be the best fit for enterprise level software development. I’m not sure why a professional game developer would ever go down the path of writing “boring” enterprise apps though. :)
Roger Larsen
Btw, I found a few MSDN tutorials and they're much more simple and informative than the MDX ones I found...
A couple last questions:
1) Am I missing out on a lot by using Managed DirectX?
2) What about OpenGL? Regardless of managed and unmanaged DirectX, am I missing out on something important by not doing Open GL?
By missing out on I mean missing out on features and speed and things like that...
Also (kind of off-topic), about what percentage of Windows users have .NET framework installed (can you give some kind of estimate)?
I agree with Geek Squad here.
I do quite a bit of 2D graphics programming without difficulty so I tried to learn 3D. I actually have no problem with the matrix and vector stuff, but there seems to be a lot of complexity in setting up the environment and maintaining it.
With 2D you have a drawspace, which is almost anything (including offscreen bitmaps) and then you just draw objects or other bitmaps to it.
Will XNA simplify this process and make it easier to create 3D environments?
PdCNZ wrote: Will XNA simplify this process and make it easier to create 3D environments?
From what's been posted by the MS guys, they're trying to make getting a game up and running as easily as possible a goal. The Starter Kits that should be included will help accomplish this. I'm sure the community will help as well by providing samples, info, etc.
2) What about OpenGL? Regardless of managed and unmanaged DirectX, am I missing out on something important by not doing Open GL?
Geek Squad wrote:1) Am I missing out on a lot by using Managed DirectX?
1. No
2. No. ![]()
1) What is the best performing render loop (in your opinion)?
I've encountered ones that use application idle events, others that use on paint events, and some really long ones that I don't have any idea how they work...
Framework - that's one of the things we take care of for you! Just hook
up to the Update and Draw events on our Game object, and off you go.
(of course you can still write your own render loop if you really want
to for some reason, but I suspect the standard version in the Game
class will do the right thing for 99.9999% of people)
Shawn Hargreaves wrote:
You don't need to worry about render loops any more with the XNA Framework - that's one of the things we take care of for you!
god bless you ;)