Older, Not Wiser

The blog has not had a ton of love, so I’ve decided to set myself a regular time to update things, Wednesday. Wednesday updates are likely to be heavier on game development topics, but at least they may be more frequent.

Today’s topics:

  • I’m 30.
  • Gamebryo 2.6 Released
  • Microsoft Visited
  • Compiler Warnings

Birthday, Birthday, Time for Fun

I turned 30 which somehow seems heavier than turning 29 even though the marginal deterioration is probably the same. In any case, we had a big beer around the world party. I drank too much hence the “not wiser” part of the post title. I paid for Saturday night well into Sunday afternoon.

Gamebryo 2.6 Released

Gamebryo 2.6 was released over the last two weeks. I was remiss in not announcing things when we actually went gold, so I’ll catch up now. Exciting new stuff includes:

  • Fully productized versions of our D3D10 and Wii renderers.
    • D3D10 was previously a developer preview, but we’ve done more optimization, added stream out support, and other enhancements.
    • Wii has been available as an overlay for 2.3, but we’ve added it to the product officially. This is pretty exciting stuff as we’ll be keeping it up to date moving forward.
  • Improvements to terrain.
    • Support for new distribution masks on shader-based platforms.
    • Support for terrain on Wii.
    • Additional authoring tools.
  • Refactored animation system.
    • Massive memory reductions for scenes with cloned characters.
    • Significantly faster on current hardware.
  • Enhancements to SceneDesigner
    • Support for layers.
    • Support for prefabs that combine multiple NIFs
    • Enchanced tagging, filtering, and selection.

There’s more, but I don’t want this to be too much like a press release. We’re really excited, and there’s a ton of new features for developers to us.

Tiding from MS

Our account manager at Microsoft, Tracey Frankcom, came to visit. She’s great, and she brought along some other folks from Microsoft to share insight into Xbox Live, 360 development, and DX11. Alas, I can’t share too much of that here. One thing I was going to share, however, was the SAL features of Visual Studio that they mentioned. This technology has been around for a bit, but this was the first time I talked about it in depth with anyone. Here’s a quick link.

SAL stands for standard annotation language, and it’s a way to tag interfaces with additional information that’s not available just from function declarations. For example, SAL can indicate that one parameter is a pointer to a buffer and that it’s size is specified by a second paramter. Obviously, this is pretty interesting information. When used in conjunction with the /analyze switch in their team studio editions of the compiler, these annotations allow static code analysis to more easily detect security issues and bugs. It seems pretty cool, and I’m hoping to play with it soon.

Compiler Warnings

It’s sort of a compiler warning week, I guess. Anyway, I noticed over here at .mischief.mayhem.soap that there’s actually a /Wall for Visual Studio. It’s not in the UI, but you can turn it on for some extra warnings. Most are not useful, but a few are. Here’s the full list which I’ll admit to not having fully parsed yet due to time.

  • C4820 – Maciej is not a fan, but I like to turn this on from time to time to make sure frequently used types aren’t burning memory. I’m a bit neurotic about struct packing.
  • C4263 – This isn’t always an error; I’ve actually put it to use in Gamebryo with sufficient documentation. However, it can be an indicator of a problem.
  • C4265 – I’m as puzzled as he is that this one is off. While one could have a virtual function in a non-base class, I’m not entirely sure why.

Anyway, fun stuff to play with. I’m out.

If the stars align, I’ll actually do this again next week. dba


One Response to “Older, Not Wiser”

  1. You should be careful what you say; if there’s one thing that trying to update a webpage has made me realize, it is that you shouldn’t promise regularity with the expectation of delivering; you should get regularity going first, then point out that you did it.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: