It’s come to my attention…

That the folks over at TrayGames are starting to make some noise..  They’re looking to meet some prospective developers at this years Game Developers Conference (yes i’ll be there), and even have a blog started up for their community.

With their new platform coming out soon, it seems likely we’ll be seeing a much larger array of Managed DX games soon.  I’d highly recommend you go check them out!

The code!!! It doesn’t compile!!!

So I was looking at my latest book on Amazon and noticed it had a review.. Only 1 star.. Apparently ‘Phoenix Guy’ can’t get the code to compile, and really there’s nothing else to say.. (Although, if you read this ‘Phoenix Guy’, please stop using all caps..)

Now, I had a 1 star review on my last book too, so I’m not overly worried about that.  What I *am* worried about is the code not compiling for this guy..  Naturally, when I tried it, everything compiled (and worked) just fine for me.  Has anyone else who has my second book had an issue with it not compiling?  If so, where?  Unfortunately this guys ‘review’ doesn’t give me any type of information I could use to try to ‘fix’ the issues (if they exist)..

February DirectX SDK Available!

It’s actually been available a few days, but..  Here are the new features:

What’s New in this Release:

For a complete list of updates, please refer to the SDK Documentation “What’s New” sections.

SDK

  • Windows 2000 is no longer a supported platform for the SDK.
  • All of the DirectShow components (Header, Libs, Utilities, Tools, and Samples) were moved to the extras folder.

New Samples and Technical Articles

  • New “Top Issues for Windows Titles” article
  • New PRTCmdLine sample
  • New Managed HDRFormat sample
  • Updated “Install-on-Demand for Games” and “Gaming with Least-Privileged User Accounts” with information about patching

Tool Updates

 

Enhancements to PIX have been made:

  • You can now capture the Microsoft Direct3D calls made by a single frame of your application and play them back within PIX.
  • When grabbing screenshots:
    • You can append an incrementing number, or the current frame number, to the screenshot filename.
    • You can specify whether to overwrite existing image files with the same filename.
    • You can specify whether to show or hide the mouse cursor in the screenshot.
  • New command-line options are available to:
    • Convert a .PIXRun file to a .csv format that can be read by Microsoft
    • Save an exclusive-or comparison of two images to a file

D3DX

 


Precomputed Radiance Transfer
The precomputed radiance transfer (PRT) system has been enhanced:

  • New fast raytracing methods have been added for direct computation of ray/mesh intersections against a simulation scene.
  • GPU-accelerated direct-lighting computation now supports normal maps.

Math Library

  • D3DX math functions on X64 have been heavily optimized for 64-bit processors in this release.

HLSL Compiler

  • A series of improvements and bug fixes have been made to the HLSL compiler

Effects Framework

  • New functions have been added to allow a developer to specify parameters to be ignored by the effects system and managed directly by the application.

D3DX as a Dynamic-Link Library

  • Starting with this SDK release, D3DX is being released as a dynamic-link library (DLL). Updates to D3DX in the future will continue to ship as uniquely-named DLLs that exist side-by-side on the system. This allows for continued improvements to the library without imposing regression risk. D3DX9.lib is still provided as the import library for the DLL which your application can statically link against. See documentation for details.
  • The D3DX DLL included in the SDK is automatically installed as part of Installing DirectX with DirectSetup. If your application does not use D3DX, you can remove D3DX from the redistributable (see Directx redist.txt for details).
  • The statically-linked debug library (D3DX9dt.lib) has been removed; use D3DX9d.lib instead

Other

  • D3DX for DirectX8 was removed from the SDK in December. This was not mentioned in the release notes for the December SDK.

 
You can download the new SDK here.

A cornucopia of topics!

It’s been a while since I’ve written anything here, but a few other posts today have gotten me to change that now.  First David Weller tries answering the question “Does Managed DirectX discriminate against VB.NET Developers”..  Since he put me on the spot to answer it, i’ll do that first.

In short, no, of course not.  He hits the nail on the head that it’s mainly about time, and given my busy schedule, it’s quite difficult to get the stuff out that I do end up releasing.  It’s also at least partially about maintenance.  Considering in the past when we had VB.NET and C# version of the samples, the VB.NET versions were simply mirrors of the C# version.  Which means not only do you need to ‘write’ two versions of the same code (3 if you count the original unmanaged version), whenever any one of them changes, all of them must be updated..  It can become quite a bit of work when the samples are changing daily.

I’d also disagree with David’s assertion that you can’t possibly master DX without knowing C++, but the fact is the *majority* of our customers (the game developers) do know c++, C# is a more logical language to use as the starting block for the managed samples.  We will have a VB.NET sample in this upcoming release though.  Oh, and the original post that David quotes is using a bug that shipped in the summer 2004 release as the reason for the discrimination question..  It is just that, a bug.  One that has now been fixed and will be released soon.  We would *never* intentionally ‘break’ something out of spite or whatever the case may be.

So, to summarize, we have no intentional ‘discrimination’ against vb developers in the least.  In a perfect world, where I had infinite time, we would have thousands of samples, in all the languages available, but the fact is, it’s not a perfect world.  We’re trying to add new stuff (including VB samples) as we’re progressing.

David also mentioned Andy Dunn’s new web site on Managed DirectX.  It includes an interview with the lead developer on the first retail MDX game i posted about last time.  In his ‘disadvantages’ section, he lists a few problems he had with MDX, which were all based on the Summer 2003 version.  I believe that I addressed all of those in the latest version, but by all means, if people are seeing bugs and/or issues in the assemblies, please let me know.

Since i’m on a writing roll, let’s continue on to books..  The second book should be hitting store shelves ‘soon’ (it’s definitely already been sent to printing, i’m just not exactly sure when it’ll arrive on shelves).  However, the third book is a different story.  At this point in time, I simply do not have the time required to dedicate myself to writing that book.  I think it’s an important book that is written though, so I’m glad that one of my coworkers has picked up the project.  While it may be not be me writing the book or the code directly, I will be at least tangentally involved (he’s right down the hall from me after all).  The project has been left in good hands, and i’m excited to see the end result.

Oh, and unlike David, I haven’t found Half Life 2 to be all that great.  Sure, the graphics engine is *amazing*, but in reality, I’m so burnt out on first person shooters, I just get annoyed with the gameplay half the time..  I fully expect to get flamed for those last two sentences. =)  It would be hard to disagree with the statement on World of Warcraft though.  I find myself playing that way too often..  (Even though I was sad when they deleted my level 60 warlock from the closed beta)

The first Managed DirectX game..

To my knowledge, the first ‘retail’ game written in Managed DirectX has been released..  It’s called “Tin Soliders: Alexander the Great“, and you can read more about it here.  It seems to be a turned based strategy game.  I’ve never played it, I really don’t know anything about it, but I expect it to be the first of many games written entirely in managed code using Managed DirectX..

Oh, and if there are other ‘retail’ games written in MDX that I’m not aware of, sorry..  You should let me know!

The DirectX SDK – Even quicker updates..

You may not be aware, but the DirectX SDK is moving towards a more flexible (and quicker) release schedule..  With that, our next release is now live.  Here are a few quick details:

Tool Updates
PIX             – Call capture and playback, Asynchronous events, Triggers and Actions
Maya Exporter   – Maya 6 Support, Procedural texture support, Updated installer

New Samples
C++             – AntiAliasing, Instancing, ConfigSystem
Managed         – PrtPerVertex, FragmentLinker , SimpleAnimation

Bug fixes
D3DX            – Debug Output Muting, PRT Blocker meshes no longer have a 65,535 vertex limit, texture UV coordinate transformation)
DirectX for Managed Code        – memory leak in TextureLoader.FromFile, unhandled exception errors)

Here are the links to the downloads.

Release Notes
http://www.microsoft.com/downloads/details.aspx?FamilyId=97CDCC31-7D0C-4F4F-81B1-16A0A7C29FB9&displaylang=en

Software Developer Kit
http://www.microsoft.com/downloads/details.aspx?FamilyId=B7BC31FA-2DF1-44FD-95A4-C2555446AED4&displaylang=en

Extras
http://www.microsoft.com/downloads/details.aspx?FamilyId=D6F237DE-A6EE-4DED-8BB6-139536162EB8&displaylang=en

Symbols
http://www.microsoft.com/downloads/details.aspx?FamilyId=87336CEE-864D-440E-840F-25C53D5DEEE4&displaylang=en