Take the 2-minute tour ×
Arqade is a question and answer site for passionate videogamers on all platforms. It's 100% free, no registration required.

I have the latest directx. However, I am installing an older game and it asks it I would like to install Directx 6.1

Should I allow the install program to do that?

share|improve this question
    
First thing I would try is not allowing it. You don't indicate what OS impossible to even know if it would install –  Ramhound Feb 13 at 2:11
1  
@Ramhound DirectX is a Windows-only framework –  Robotnik Feb 13 at 4:14
2  
@Robotnik OS can imply version, too. There are several OSes in the Windows family (95, ME, NT, XP, CE, 7, Phone 7, Server 2003, etc...) –  Jonathan Baldwin Feb 13 at 5:53
1  
@JonathanBaldwin - I think we can exclude server OSs, and phones won't have games running on DX6. Further, the 'latest DirectX' only runs on the currently supported & most popular consumer Windows OSs, namely Windows 7, 8 and 8.1, which are all fairly similar under the covers –  Robotnik Feb 13 at 8:20
    
I know this I develop software using direct x daily. For an actually answer I need the exact version of windows being used –  Ramhound Feb 13 at 10:53

4 Answers 4

up vote 8 down vote accepted

Short answer: Yes, It's fine to install it. If the game requires that version of the library, it won't run (properly) without it.


Long answer:

Frameworks like DirectX, OpenGL etc are (basically) just collections of common functions i.e. things which every program needs to do, but don't need to be reinvented/rewritten every time you write a new program. DirectX for example, is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video.

Of course, being programs & libraries themselves, they get updated regularly with bug fixes, new features, improvements to the performance of older functions, and sometimes (especially major updates) a restructuring and rebuilding of the entire package itself.

What this means is that sometimes when older programs attempt to access features in the newer frameworks, those features aren't there. They've either been moved, renamed, or changed drastically so that the result is not what the program was expecting.


For example, say a game relied on a function:

DrawObjectToScreen(Object o, Point p); 

which takes an object, and a Point, representing the pixel coordinates (x,y) for the object.

But an update to the framework comes out, the above method is removed and replaced by:

Draw(Object o, Point p);

Our game doesn't know about Draw(). It looks for DrawObjectToScreen(), doesn't find it, and throws an error.


So in order for a development company to upgrade a program to a newer framework, they would need to:

  • Learn how things changed in the new version
  • Find all the missing/broken references to the old framework, and upgrade & replace them. Sometimes they might have to restructure entire sections of code to workaround the newer APIs.
  • Upgrade and individually test each place where the new framework has new functionality, to ensure that nothing has changed or broken as a result of the upgrade.
  • Find and fix/workaround any Bugs related to the new version of the framework
  • Build up a version of the program for release, including documentation (Release Notes), Strategies for dissemination of the new version etc
  • Release the new version, and deal with any Bugs that arise (not working properly on different OS builds etc).

And all of this would provide little benefit to the end users:

  1. The program worked fine on the old version, and nothing new was added*
  2. You've forced them to update, or at least deal with mismatches between someone having one version and someone having another
  3. You may have introduced more bugs than you fixed.

*Except performance or the ability to run on newer/different OSs & platforms, which would be the major justification for doing this.

So yes, if a program requires a certain version of a framework, it would be best to install that version. Luckly these days this is usually handled for you when you run the installer.

share|improve this answer

If the game comes from a reliable source then I would allow it. It's possible that the latest direct x (11I think) is not backwards compatible with the api for direct x 6 in which case it would be perfectly fine to have both if you need both.

share|improve this answer

I would disallow it because it won't work. You say you run the latest DirectX. The latest is DirectX 11, which is supported only on Windows Vista and newer. DirectX 6 is only supported on pre-NT OSes (95, 98, ME).

share|improve this answer
    
It might work (probably only on 32-bit) because the older DX versions had software fallback modes, so you're then just running a really old GDI app. –  Jonathan Baldwin Feb 13 at 5:51

just run microsoft DirectX End-User Runtime Web Installer heres the link http://www.microsoft.com/en-us/download/details.aspx?id=35 this will update ur current dx to include files of dx starting from 2005

share|improve this answer
1  
This doesn't answer the question. The OP isn't looking for means to update to the latest version of DirectX. And what you said is wrong. The web installer will only install the latest version of DirectX. –  Private Pansy Dec 6 at 10:38

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.