• Shawn Hargreaves Blog

    Rendertarget changes in XNA Game Studio 2.0

    • 17 Comments
    The bad news: If you had a program using rendertargets that worked with the XNA Framework 1.0, it might not still work with 2.0. The good news: Things are actually much more consistent now, honest! Let me explain... How rendertargets used to work (1.0...
  • Shawn Hargreaves Blog

    Lots of little improvements in XNA Game Studio 2.0

    • 2 Comments
    Here are some changes that are too small to deserve their own post, but I think still cool enough to be worth mentioning... The new GamePadState.IsButtonDown method is useful when writing generalized input helpers. This makes it easy to write a method...
  • Shawn Hargreaves Blog

    System link networking in XNA Game Studio 2.0

    • 9 Comments
    So, the 2.0 beta is out... If you are wanting to try out our shiny new network API, you may be waiting to be emailed the code which unlocks access to Games for Windows - LIVE . But did you know: If you just want to develop and test a network game, you...
  • Shawn Hargreaves Blog

    News

    • 4 Comments
    If you're in Minneapolis this evening, check out the Twin Cities XNA User Group . If you're in Vancouver at the end of the month, check out the DevTeach conference . Yours truly will be talking about shaders, networking, and performance. There'll be singing...
  • Shawn Hargreaves Blog

    Bitfield renderstates

    • 1 Comments
    To manage renderstates in the MotoGP engine , I used the "every man for himself" approach described in my previous post . To make this fast, I had the following goals: Drawing methods should be able to specify exactly what states they want, using...
  • Shawn Hargreaves Blog

    Graphics state management

    • 5 Comments
    Once upon a time there lived a young graphics coder named Johnny. One day Johnny wrote a program that displayed a 3D model. As is frequently the case with people his age, Johnny was somewhat careless and did not bother to set all the renderstates which...
  • Shawn Hargreaves Blog

    C# Express r0x0rs!

    • 8 Comments
    I occasionally read about people being put off trying the XNA Framework because they don't want to install C# Express, worrying this might somehow interfere with their main Visual Studio installation. This is madness! C# Express just like totally rocks...
  • Shawn Hargreaves Blog

    Monitoring the garbage collector

    • 4 Comments
    We heard rumors that SpriteBatch.DrawString was generating garbage on Xbox, so this morning I set out to investigate and fix the issue. Trouble is, the Xbox Remote Performance Monitor tool isn't working with my interim build of the framework. How can...
  • Shawn Hargreaves Blog

    Content Pipeline types

    • 10 Comments
    A couple of people recently pointed out that our documentation isn't very clear on what data types are available in the Content Pipeline, and the relationships between the Content DOM object model produced by the importers, the converted types output...
  • Shawn Hargreaves Blog

    Editing curves

    • 1 Comments
    I like curves . One of the guys on the framework team wrote a curve editor that makes it trivially easy to create and tweak the settings for Curve objects. I highly recommend both this utility and the accompanying doc. A few well chosen curves can do...
  • Shawn Hargreaves Blog

    Roll up, roll up, get your replacement hammers here...

    • 5 Comments
    Here is the sample I was working on when I realized that Model is a hammer . And here is a second sample released in reaction to that realization.
  • Shawn Hargreaves Blog

    MotoGP '07

    • 3 Comments
    Playing sequels to games you once worked on is a deeply strange experience. A friend of mine described it as similar to the first time you bump into an ex girlfriend out with her new partner. Even though you parted amicably, are still friends, wish her...
  • Shawn Hargreaves Blog

    Note to self: Model = hammer

    • 7 Comments
    I moved office last weekend. The good news is I am no longer doubled up. The bad news is I no longer have a window. Sigh. At companies I worked for in the past, the process for moving office was simple. I would unplug my gear, carry it over to my new...
  • Shawn Hargreaves Blog

    Motion blur appendix

    • 0 Comments
    Ok, I'm done talking about speed effects. Before I go, here are a couple of external links on the subject. Firstly, George Clingerman wrote a Cops and Robbers tutorial game using the fullscreen motion blur I described earlier. Secondly, in a previous...
  • Shawn Hargreaves Blog

    Speed is a matter of perspective

    • 1 Comments
    One of the simplest and most effective ways to make your game go whoosh is to adjust the camera field of view. This is the first parameter to the Matrix.CreatePerspectiveFieldOfView method. Most games use a field of view somewhere around 90 degrees, which...
  • Shawn Hargreaves Blog

    Vrrroom! Whoosh!

    • 4 Comments
    Only four posts in the whole of August! I do apologize. I have clearly been slacking :-) Continuing on from my article about motion blur , I'm going to talk about some other ways to make a game feel fast. In real life, an obvious clue to when we...
  • Shawn Hargreaves Blog

    SpriteFont utility

    • 0 Comments
    Nice looking tool for making SpriteFont textures with funky effects like outlining, drop shadows, and beveling.
  • Shawn Hargreaves Blog

    GameFest videos

    • 0 Comments
    Recordings from the first day of the GameFest conference are now available, including my talks about XNA Framework Performance and Networking . Man, I hate the way my voice sounds on tape!
  • Shawn Hargreaves Blog

    Dream, Build, GameFest!

    • 10 Comments
    For me the highlight of GameFest was the chance to meet some of the incredibly talented Dream-Build-Play finalists . Conferences like this usually involve Microsoft giving out swag to the attendees, but this year we were excited to be given cool stuff...
  • Shawn Hargreaves Blog

    Motion Blur

    • 12 Comments
    An interesting challenge in game programming is how to make things seem fast. I've spent a great deal of my career working on this particular problem, and the solutions are relevant for more than just racing games. It is all too common to get a character...
  • Shawn Hargreaves Blog

    Pascal? On Xbox?

    • 3 Comments
    Dominique Louis has written an article explaining how to to use the Chrome Object Pascal compiler with the XNA Framework on Xbox 360. He shows how to integrate the Content Pipeline with the Chrome project system, and ports the Game State Management sample...
  • Shawn Hargreaves Blog

    GameTime outside America

    • 4 Comments
    Björn comments on my previous post : The default 60Hz-because-of-TV-refresh makes me wonder: does this change to 50Hz when the XBox is connected to a PAL TV? Or - from a not too serious POV - is this just another default chosen in the spirit of "We are...
  • Shawn Hargreaves Blog

    Understanding GameTime

    • 21 Comments
    Time can be a surprisingly slippery concept to get to grips with. Back when I was working on Allegro it caused the most common question from new programmers , and even though XNA does more than Allegro to handle time for you, it appears some people are...
  • Shawn Hargreaves Blog

    XNA Unleashed

    • 5 Comments
    Every few years I find myself hankering to write a book, but whenever I start seriously thinking about the idea I realize how much work it would be and get scared off. The next best thing to writing a book of my own, though, is reviewing one by somebody...
  • Shawn Hargreaves Blog

    GameFest

    • 9 Comments
    Looks like the talk abstracts for the upcoming GameFest conference have been published, and yours truly somehow got signed up to give a talk and a half. I only actually volunteered for one, but then Mitch suckered me into helping out with his :-) This...
Page 14 of 18 (437 items) «1213141516»