View Single Post
Old 02-21-2015, 04:33 PM
hDC_0 hDC_0 is offline

* Expert *
Join Date: Feb 2004
Posts: 560
Default DirectX, WPF/Silverlight, OpenGL, and a little history...

Originally Posted by JeremyBenson11
Would love some insight
Hopefully you realize that WPF and DirectX/XNA are two different things.

WPF does have a DirectX reference dependency but I believe it also has a software fallback mode per this StackOverFlow thread:
WPF has a dependency on the DirectX runtime.

However, both DirectX and WPF have their own software fallback modes so that, in the absence of suitable graphics hardware and/or drivers, software rendering will be used instead.

Some graphically intensive features will also be unavailable when software rendering. WPF allows you to check the rendering tier that it's running under and tailor the UI to suit the current environment.
Some WPF/DirectX related links (no working VB.Net code examples, though) (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

However, to try and answer your question:
Originally Posted by JeremyBenson11
Where on earth are people getting SDKs that work in VB? What version are they using?
Re: Microsoft's "Managed" DirectX (MDX) for VB.Net and C# -wherefore art thou?
This Wikipedia page documents the history and untimely death of MDX:
MDX 1.1
This was the first version available and still is the current stable version.
Can be used under .NET Framework versions 1.1 and 2.0.
Provides an object-oriented API that implements functionality very similar to DirectX 9.

MDX 2.0 beta
Was canceled while still in beta. Is no longer available.
MDX 2.0 was replaced by Microsoft XNA (DirectX New Architecture).
The API differed from MDX 1.1 in a number of places.
So what about programming XNA with VB.Net?
As noted on this old Microsoft Mango toolkit page
(entitled "VB Support for the XNA platform"):
With the release of the Mango Toolset, Visual Basic support for XNA and Windows Phone has now been added.
VB resources include VB XNA documentation and VB WP7 code samples and starter kits
and this post is intended to walk you through some of the steps in creating a simple XNA application for Windows Phone 7 using VB.

The XNA toolset is not new although it has undergone a number of revisions.

Although during its history it has only supported C# as a development language for a number of technical reasons,
although some users managed to create workarounds to allow limited support.
However with the advent of the Windows Phone 7 and its use of the XNA framework additional efforts were made to ensure Visual Basic developers were not left out of the game
and with the Mango Tools update finally VB users are provided with full support within XNA
So the code to use XNA with VB.Net was dumped in with (some might say hidden inside) that particular Windows Phone SDK release.

Since then (2011) there has been some people who tried to work with XNA using VB.Net with varying degrees of success.

Re: OpenGL and VB.Net
There is one working example of using OpenGL with pure VB.Net (no third party dlls) on the forum.
It's the "" attachment to the last post in this thread.

There are also the two working VB.Net OpenGL examples (that use the Tao Framework) which martonx attached to this forum post.


For 3D using VB.Net without needing OpenGL, DirectX/XNA, or WPF,
you might want to check out the working attachments to this recent thread.


So that's basically about where things are at..


If you are looking to use WPF with VB.Net there used to be some C# code translated from Petzold's WPF book to VB.Net, but good luck with finding an active download link, though.

There is also a few VB.Net/WPF articles by Rod Stephens, like this one.

Other than that what few working VB.Net WPF examples you'll find are pretty basic (not very scalable).

Re: What happened to doubt the future of WPF?

The turning point for WPF (I think) was when Microsoft's VP Muglia announced (in 2010) that in regard to Silverlight:
..our strategy has shifted..
..or to quote this Wikipedia Silverlight article:
In 2013, Microsoft announced that they had ceased development on Silverlight except for patches and bugfixes.
Officially, per this "Microsoft Support Lifecycle" document, 10/12/2021 is the final date for Silverlight 5 support.

The "death" of Silverlight, probably took a lot of the wind out of the WPF supporters..

All of that, plus the way WinRT seemed to duplicate a lot of WPF functionality and Microsoft voiced evolving support for HTML5
seemed to suggest to many that WPF had a limited lifespan going forward.

Even as late as 2014 the fate of WPF is still an active source of discussion, so who knows?

Some random download links:

The link to something called:
"DX 9.0c (WinXP/2003 only) + DX 10.0/11.0 (WinVista/2008/7 only) June 2010 Redist Full + Managed DirectX (MDX) for Windows XP SP3/2003/Vista/2008/7 [95.6 MB]." available on this page.

Per this DirectX and .Net Microsoft Blog article:
The last DirectX SDK to include the samples and documentation for Managed DirectX 1.1 was August 2006.
I think this is referring to the download on this page.

If you are using one of the older versions of VS.Net,
there were old DirectX wrappers that were part of the what was known as the "Windows API Code Pack".

Of course it's no longer available from Microsoft.

But it's mirrored on Nuget and elsewhere (1, 2, 3)

Last edited by hDC_0; 02-21-2015 at 05:29 PM.
Reply With Quote