Updated Direct2D in March DirectX SDK

The March DirectX SDK includes an updated build of Direct2D. Note that this build of Direct2D runs on both Windows 7 and Windows Vista.

https://msdn.microsoft.com/directx

After the Windows 7 Beta release, we received some customer feedback, and made a few minor Direct2D API changes. These changes are present in the March DirectX SDK, but the documentation will not be ready until the Windows 7 RC release. In the interest of getting prelease code into the hands of customers faster, here is a list of breaking changes...

· Refactored some values of D2D1_RENDER_TARGET_USAGE into D2D1_RENDER_TARGET_TYPE for better clarity.

· Added D2D1_FEATURE_LEVEL structure variable to D2D1_RENDER_TARGET_PROPERTIES. Allows the caller to specify a minimum hardware feature level (9, 10, etc) to use.

· Added D2D1_OPACITY_MASK_CONTENT parameter to ID2D1RenderTarget::FillOpacityMask. This tells us what gamma to use.

· Removed D2D1_GAMMA parameter from ID2D1RenderTarget::FillOpacityMask. Based on customer feedback, we determined that this parameter was difficult to understand, and the same information could be gleaned by adding a D2D1_OPACITY_MASK_CONTENT parameter.

I've also attached updated Direct2D samples for use with the March DX SDK. You should be able to simply recompile these samples when the Windows 7 RC SDK is released.

If you're using Visual Studio, install the March DX SDK, and make sure that VS's VC++ directories include the following (for example, x86) ...

Tools | Options | Projects and Solutions | VC++ Directories

Executable Files="c:\Program Files (x86)\Microsoft DirectX SDK (March 2009)\Utilities\Bin\x86"

Include Files="c:\Program Files (x86)\Microsoft DirectX SDK (March 2009)\Include"

Library Files="c:\Program Files (x86)\Microsoft DirectX SDK (March 2009)\Lib\x86"

Link with ...

Project | Properties | Configuration Properties | Linker | Input | Additional Dependencies ...

d2d1_beta.lib dwrite_beta.lib D3D10_1_beta.lib dxgi_beta.lib windowscodecs.lib etc...

D2D_DXSDK_Samples.zip

Comments

  • Anonymous
    January 01, 2003
    @Promit: "Is there any particular license on the sample code? I'd like to port it over to SlimDX, but we publish everything under the MIT license and I don't want to run into trouble there." That's a question for the lawyers, and I'm not a lawyer. ;-p But I will pose the question, and see what they say.

  • Anonymous
    January 01, 2003
    @Thomas: "Is support or a Connect feedback site available? I can't get RenderTarget->FillMesh() to run in a very simple test." If you provide me a snippet of source code that illustrates how you're using FillMesh, we'll take a look. Thanks.

  • Anonymous
    January 01, 2003
    Vista Ultimate x64. Visual Studio 2008 SP1, March DirectX SDK. Extrusion and SciFiText work perfectly but DxgiSample does not. _com_error at memory location 0x003deebc

  • Anonymous
    January 01, 2003
    @xyz: "Any chance for supporting D2D on XP? Please?" No decision has been made on XP yet. We're entirely focused on Windows 7 right now. Vista support was announced a while back at PDC.

  • Anonymous
    January 01, 2003
    @Brian: "When we will there be some kind of forum support?  I've got a variety of questions I'd like to get answered about the behavior of the current runtime/sdk.  Thanks, Brian" Given that this is still a prelease product, we don't have a forum set up yet. But I would be happy to answer any questions that you have about the behavior of the runtime/sdk. Please feel free to contact me.

  • Anonymous
    January 01, 2003
    Vista Ultimate x64. Visual Studio 2008 SP1, March 2009 DirectX SDK. Extrusion and SciFiText work perfectly but DxgiSample does not. _com_error at memory location 0x003deebc Thanks

  • Anonymous
    March 24, 2009
    Any chance for supporting D2D on XP? Please?

  • Anonymous
    March 25, 2009
    Thanks for getting Vista. A second vote for adding in XP.

  • Anonymous
    March 27, 2009
    When you say Direct2d now works on Vista, does that include DirectWrite? Thanks!

  • Anonymous
    April 01, 2009
    @genifycom: "Vista Ultimate x64. Visual Studio 2008 SP1, March 2009 DirectX SDK. Extrusion and SciFiText work perfectly but DxgiSample does not. _com_error at memory location 0x003deebc. Thanks" I tried this scenario, and we're not seeing a failure. We did fix some bugs in the Beta SDK sample of DxgiSample, though. Are you building the Beta sample? If so, please get updated source files at the following location, and rebuild: http://blogs.technet.com/thomasolsen/attachment/3217540.ashx

  • Anonymous
    April 09, 2009
    Is support or a Connect feedback site available? I can't get RenderTarget->FillMesh() to run in a very simple test. Thomas

  • Anonymous
    April 09, 2009
    Is there any particular license on the sample code? I'd like to port it over to SlimDX, but we publish everything under the MIT license and I don't want to run into trouble there.

  • Anonymous
    April 10, 2009
    When we will there be some kind of forum support?  I've got a variety of questions I'd like to get answered about the behavior of the current runtime/sdk.  Thanks, Brian

  • Anonymous
    May 12, 2009
    Another vote for making it work on XP. Will be really useful.

  • Anonymous
    May 26, 2009
    When will be the RUNTIME be available on Vista rather than the SDK?

  • Anonymous
    July 12, 2009
    For a full-screen 2D-only application (e.g. a visualizer) what is the recommended method to avoid tearing? In other words, what is the Direct2D equivalent of full-screen Exclusive mode and page-flipping in DirectDraw? I tried the examples but didn't find this case. -chris

  • Anonymous
    July 25, 2009
    I hope it will be support Direct2D  run on XP