Jump to content
  • Advertisement
Sign in to follow this  
Ravyne

OpenGL Microsoft announces Direct2D API

This topic is 3686 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

So, I thought this might be interesting to you folks, but I was surprised to find no topic yet. Relevent links are here and here. In Summary: Direct2D (or D2D) is a native immediate-mode 2D graphics rendering API that is built on top of Direct3D, and offers some compelling performance and visual quality improvements over GDI and GDI+:
- Hardware-acceleration
- Software fallback when hardware isn't available
- Interoperability with GDI, GDI+, and Direct3D
- ClearType text rendering
- Per primitive antialiasing
- Device-independent coordinate system
- Draw and fill commands for geometries (lines, curves) and bitmaps
- Solid color, linear, radial, and bitmap brushes.
- Rendering to intermediate layers
- Rich geometry operations (eg. unions, intersections, widening, outlining, etc)
- Server-side rendering
- Preservation of rendering state
At first thought, it seems crazy to add (yet) another 2D API at this point in time, but this one goes in a different direction than GDI, WPF or even DirectGraphics or the D3DX Sprite interfaces and marches towards Vector Graphics territory. It looks like a pretty nice API (though, I might be biased since I was working on nearly the same thing, just more OpenGL inspired) though, and I welcome any modern take on 2D goodness. What are your thoughts?

Share this post


Link to post
Share on other sites
Advertisement
based on your post's summary i think its a good thing to watch for!!! the features are nice(and i hope and think that there will be more) still reading the links though...

Lets wait and see :D

Share this post


Link to post
Share on other sites
I'm very interested in this, having written a comprehensive 2D game engine in Direct3D 9. But my first reaction is "what's the point"? I've read the articles and their justification, but why not add those features to Direct3D? Still, they say you'll be able to render to a Direct3D surface, so I guess it could be seen as an extension. I wonder if there will be a Direct3D 9 version for XP?

They haven't yet mentioned 2D gaming - I wonder how appropriate it will be for that. They seem to be designing it for applications. A software renderer fallback would be nice for casual gaming, though - DirectX requirements always irk people who just want to jump in and play.

It doesn't look like it'll offer any major performance advantage for 2D Direct3D games. I can imagine you could send more compact messages to the GPU for 2D rendering - 'Draw texture at scale X and angle Y' might use less bandwidth than the traditional four vertices and six indices - but this bandwidth shouldn't be a bottleneck in a well-designed game.

Will be nice to have high quality text rendering. I never got ID3DXFont to do anything that looks any good. Thanks for the link though, interesting news!

Share this post


Link to post
Share on other sites
Quote:
Original post by AshleysBrain
I wonder if there will be a Direct3D 9 version for XP?


According to the Windows 7 Developer Guide released today, it appears that this new API is going to be rolled up with the Windows 7 DirectX API's. I would imagine that there is a greater chance of this being released on Vista then XP. Especially since Microsofts plan is to phase XP out over the next year.

Share this post


Link to post
Share on other sites
To disappoint you a bit:

In D2D team's blog, they said D2D is build on top of D3D10.1.
So the chance for XP is very low.

Share this post


Link to post
Share on other sites
One problem with DirectX10 was the lack
of an easy way to interoperate with GDI.
(Used to be easy with DirectX9).
Direct2D brings back this easy interoperability.

Share this post


Link to post
Share on other sites
Quote:
Original post by qingrui
To disappoint you a bit:

In D2D team's blog, they said D2D is build on top of D3D10.1.
So the chance for XP is very low.


Actually, in either the blog or the slides they mention being able to target Direct3D 9L optionally... They say that it's built to be optimal on D3D 10.1. I doubt they'd port to XP simply because it doesn't make business sense to back-port to an OS they'd rather have phased out by now. If they want to back-port to vista, they have to support 9L as a minimum, because that's all Vista requires... It would be quite a shame to tie this API to Windows 7, and there's no technical reason to support such a decision. I think what they meant to say is that it will come out in whatever major DirectX release coincides with the 7 release, which would be 11 I think, possibly 12, but either of those are supposed to be compatible with Vista as well.

If it can be done on 9L, then there's no technical reason it couldn't be done on plain-old 9c AFAIK. The chances of XP are low, yes, but not for technical reasons -- and I guess that always leaves the opportunity open for the community to develop an equivalent.

Share this post


Link to post
Share on other sites
Well I definitely didn't see this one coming! Very cool though, I like the idea of having an easily accessible and lightweight API that offers a visible performance path for 2D rendering. I wonder who will use it, though.

Share this post


Link to post
Share on other sites
The idea is that Direct2D is supposed to be able to be used on a very wide variety of systems and hardware - and one of the key target audiences is business applications. I think there's a good chance of it being ported to XP.

The PDC video has a lot of information.

Share this post


Link to post
Share on other sites
Quote:
Original post by Ravyne
Actually, in either the blog or the slides they mention being able to target Direct3D 9L optionally... They say that it's built to be optimal on D3D 10.1. I doubt they'd port to XP simply because it doesn't make business sense to back-port to an OS they'd rather have phased out by now. If they want to back-port to vista, they have to support 9L as a minimum, because that's all Vista requires... It would be quite a shame to tie this API to Windows 7, and there's no technical reason to support such a decision. I think what they meant to say is that it will come out in whatever major DirectX release coincides with the 7 release, which would be 11 I think, possibly 12, but either of those are supposed to be compatible with Vista as well.

If it can be done on 9L, then there's no technical reason it couldn't be done on plain-old 9c AFAIK. The chances of XP are low, yes, but not for technical reasons -- and I guess that always leaves the opportunity open for the community to develop an equivalent.


Excellent point.

Actually, I don't care about D2D much. Technically it is not so difficult to do it ourselves. But the DirectWrite thing is really what I've been longing for for a long time. I really hope DirectWrite can work on XP. But the chance is also low...

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!