XNA Creators Club Online
Page 1 of 1 (6 items)
Sort Posts: Previous Next

Learning path to XNA

Last post 11/14/2009 11:35 PM by TSZ IRONMAN. 5 replies.
  • 11/14/2009 4:40 PM

    Learning path to XNA

    Hey people!

    Alright, i guess I'm just going to jump right into this post.

    I have been spending countless hours over the last two weeks trying to grasp the concept of C# and I felt as though I had made some good progress up until last night.  This is what my learning path has consisted of so far.

    http://www.freewebs.com/campelmxna/tutorials.htm and http://www.csharp-station.com/Tutorial.aspx where I have learned...

    Hello World
    Variables
    Loops
    Debugging (kinda)
    Random
    Methods
    Classes
    Inheritance (kinda)
    Arrays
    Structs
    Enums
    Properties
    Namespaces
    Polymorphism (kinda)

    ... and with that knowledge I went and created a Console Application that consisted of a hero getting experience from killing random monsters with random health and a kind of random kind of responsive artificial intelligence system.

    Now, my tutorials showed me how to do this but to make sure that I had these concepts down I did them myself without help of google or any references so I know that the benchmarks I wrote above are understood.

    Here's why I am a little upset.  Upon attempting to write something... anything in an XNA 3.1 Windows application I am completely lost.  It seems as though there is some gap, in fact i know there is I just don't know what it is, between C# and XNA that I just can't figure out.

    Here are my questions.

    What learning path did you take to learning C# and eventually XNA?  By that I mean, please state like i did above, your learning path to XNA from C# and through C# from Hello World to whatever point you are now.

    What benchmarks am I missing in my quest to understand C#?  I know that there are many things that I have yet to begin learning because I have learned the concepts above in two weeks and still can't understand how to write an XNA game from scratch, even at it's most basic level.

    Are the keywords in XNA a matter of memorization or logical conclusion?  By that I mean, do I need to look at every keyword and know what it means before I can use it or will I eventually get to the point where I can figure out what keyword I need without knowing the definition of the keyword beforehand.  I know that may sound a bit confusing since I am not using technical terms but please try to answer to the best of your abilities.

    Thank you guys for reading my post and thank you to everyone who responds.  It will really help me to hear what kinds of paths you guys took in your quest to learning C# because right now I have reached the point where I feel like what I have learned in Console programming is a complete waste of time.

    And I would also like to know about how many hours it took you to get to the point where you could make a C level game like one of the XNA starter kits, starting from the first time you tried to program.  This is very important for me because people will point out the fact that it takes them 5 months to learn something and someone else 2 months and the difference is that the first guy practiced 2 hours a week and the other guys 2 hours a day.  I spend about 4 hours a day on average learning this stuff because I am a college student and I have a good amount of free time.  I can't imagine this taking too much longer than a semester of taking a C# class which would only come out to about 48 hours of learning, generally about 3 months.

    Haha, so i mean you don't have to do the math you know but if you would be so kind as to estimate in hours how long it took you to learn C# and get to the point of being able to program a C or D level game that would be greatly appreciated.

    Thank you guys so much!
  • 11/14/2009 6:27 PM In reply to

    Re: Learning path to XNA

    For me, I think the difference is that I didn't have to learn game development OR C# when I started with XNA. You're attempting to learn all the concepts of programming, then tacking on the concept of game development and then on top of that trying to learn how to use a new framework. I can totally see how that might be a little overwhelming. Doable. But overwhelming.

    I think I see your gap though. You took such a methodical approach to learning C# and programming. But I don't see that same list for learning game development with XNA? You need to take the same tactic.

    1) Create a new Windows game project - take some time to understand what's going on in the code without any coding.
    2) Draw a sprite on the screen
    3) Learn about the Draw overrides
    4) Learn how to detect Keyboard Input
    5) Learn how to detect Gamepad Input
    6) Make the sprite move
    7) Make the sprite move using Keyboard/Gamepad input
    8) Draw text on the screen
    9) Make a sound play
    10) Make music play
    11) Detect collisions on the edges of the screen
    12) Draw a second sprite
    13) Move both sprites around independently
    14) Detect collisions between the two sprites
    ...

    And then so on.... You need to break the framework and game development down into those same basic steps. That should help fill in those gaps.

    Hope that helps a bit.
  • 11/14/2009 7:04 PM In reply to

    Re: Learning path to XNA

    The "how to" articles in the help file were really good to me when I started.  In fact, I fell into one one of them from a google search about managed directX.  I downloaded xna & C# within the hour of reading the "How to render a model" section,  had a model moving on the screen that night, and have been hooked ever since (I had a bit of prior experience in procedural programming (no OOP) with Pascal and C).

    over at http://msdn.microsoft.com/en-us/library/bb200104.aspx under Programming, expand every link and look for all the "How to.." and "What is.." articles.  They're invaluable, in my opinion, getting started.   Start with something simple, like http://msdn.microsoft.com/en-us/library/bb203933.aspx (how to render a model).  All the code is there, just start typing and studying.   Do a search on every new word and function & learn about it.  You'll be doing great things in no time.

    Best,
    Byron
    ..shaders make you feel... powerful, or very very stupid.
    http://drjbn.spaces.live.com/
  • 11/14/2009 7:24 PM In reply to

    Re: Learning path to XNA

    Thanks alot to both of you guys.

    George, the way you put things makes an incredible amount of sense... in fact, that's such an obvious approach for me that I feel silly for asking the question in the first place.

    And Byron, I am on the site that you recommended right now and it is pretty much laying out exactly what George said so thank you very much for the resource.

    For anyone looking at this thread, please go to the msdn.microsoft site under xna and look at the programming guide, then follow George's list on how to approach developing in XNA.

    Thanks
  • 11/14/2009 9:18 PM In reply to

    Re: Learning path to XNA

    This is also the approach I've been taking with the tutorials I write. They might be too basic for you or you might find them useful. But I'm trying to slowly, step by step build up the information you need to make games with over complicating it with making an actual game.
  • 11/14/2009 11:35 PM In reply to

    Re: Learning path to XNA

    That's funny, earlier today or sometime last night i was searching google for more sites to bookmark once i came to certain issues.  One of the things that I thought of was health bars and I bookmarked your website, for when I get to that issue haha.  Good work advertising, i found it at least in the first two pages or from a link to someone else's website.  I will give it another browse through.
Page 1 of 1 (6 items) Previous Next