Sections

Valve engineer explains why Steam keeps installing D3DX files with each game download

Wednesday, 3rd August 2011 14:22 GMT By Stephany Nunneley

Valve has explained the reason many Steam users are experiencing DirectX installs whenever a new or older game is downloaded onto the users system.

According to Valve software engineer John McCaskey, the issue is with Microsoft in how it packages software, which in some cases has multiple D3DX instances showing up in their .NET configuration files.

“This is not a matter of making sure your overall DirectX install being up-to-date,” said McCaskey on the official Steam forums. “Microsoft has a helper library with D3D called D3DX. You’ll find binaries for this like d3dx9_43.dll in your Windows\system32 folder. There are over 40 different versions of the D3DX library for D3D9 alone, and many more for D3D10 and 11 as well. Each game that uses the D3DX helper library is linked to a specific version. As such the game must run the correct D3D installer version that it was specifically compiled with to ensure the binaries exist. Even if a later version of the binary is already installed, that version cannot be used, and even if your DirectX install is up-to-date because you’ve run a more recent version of the installer that is not guaranteed to have installed all previous versions.”

McCaskey said that even if a version is installed for x86 it doesn’t guarantee the same version is installed for x64, therefore, 64 bit and 32 bit games could run the same installer version but target different platforms.

“Furthermore, Microsoft’s licensing terms prevent anyone from distributing the files directly, the only way to distribute them is to run the installer, that’s also the only supported method from Microsoft to check that the correct version installed,” McCaskey explained. “Trying to manually check for the correct versions is extremely complicated because there are numerous files that must all be present and individual system configuration options like dll search paths complicate the situation.

“Games which don’t use the D3DX helpers (such as Source engine games) don’t require running the annoying installer on first launch as they only depend on major D3D9/10/11 versions being installed. However, games that do use D3DX must run it as it’s the only way Microsoft has allowed for distributing and checking the version info on the files

“We can’t stop. It’s required due to a bad versioning/packaging scheme as well as bad redistribution licensing terms on the D3DX libraries.”

McCaskey said it could be made a bit better on the Steam side of things, but in order for that to happen, game manufacturers would have to change the way games are packaged for the service.

“The one thing that could be made better on our side is that Steam could be smart enough to know if an exactly matching version of the DX installer is already downloaded and share that content so you don’t download it with each game,” he said.

“Since the installer is relatively small compared to most game installs that wouldn’t be a huge win, though, and requires a good deal of new complexity for partners in how they package up their games and manage installation dependencies.

“You’d also still end up with lots of different versions of the installer, since as discussed above they are often targeting different D3DX versions and as such are all required. As such any improvement to avoid duplicates isn’t an immediate priority, but we may be able to improve it slightly in the future.”

Thanks, Eurogamer.

Latest

14 Comments

Sign in to post a comment.

  1. freedoms_stain

    What’s that? Microsoft guilty of inefficient software practices and policies?

    BLOW ME DOWN!

    #1 3 years ago
  2. mojo

    not realy.

    #2 3 years ago
  3. BULArmy

    Steam started to often to blame others. I think that they need to look into their own courtyard and fix some big problems, like the fuckin’ EU pricing, delays on launching games, absent support, except for the account managment. For me they are in some way Activision of PC gamingm they think, because they are the biggest, that they can do whatever they want without any consequences. But mostly the pricing, this is why I have bought games only from their sales, even if I want to buy them full price I must go to retail, because I am not rich and I can’t affourd games that are some times 20 euro more expensive then I can get them retail.

    #3 3 years ago
  4. Lounds

    @3
    STEAM is the best thing that ever happened to PC, M$ ditched PC gaming the second they made a games console, and GFW is utter shit.

    #4 3 years ago
  5. deadstoned

    @4 Indeed Microsoft’s PC ineptitude lately is getting tiresome. After your “Xbox Stories” finish VG247 could you write an article about the annoying and miserable life of Games for Windows Live. I hate that thing so much and the only people I’ve met who like it are Xbox achievement whores. GFWL should be a PC service not an ancillary one to Xbox owners >:( .

    #5 3 years ago
  6. abbe

    @3:
    EU pricing: Game devs/publishers set the prices.
    Complain to the publishers about the pricing, its they that are setting the prices. The reason that stores have a lower price and lower prices more often is because they buy a stock of games for x€. That’s the money the publisher gets, right there and then, then the retailer can go give the games away if they like it, doesn’t matter to the publisher.
    On steam they will get the money when the game is actually sold.

    Delays on launching games: Game devs/publishers set the launch date. But mainly the biggest reason for this is that since the days of yore games have been released at different times over the world: US on tuesdays, Europe on thursdays and UK on fridays, the retail market still follow this and thus the publishers mostly follow this on steam as well so there isn’t a time difference between physical and digital stores.

    Absent support: This is Valve.

    Its a store where the publishers have the biggest control of pricing, if they want to lower the prices, they need to say so, don’t blame Valve for providing the tool.

    #6 3 years ago
  7. Talkar

    Valve hasn’t even updated their server distribution system for all titles yet, and they’ve already begun complaining of how others do the same thing? xD

    #7 3 years ago
  8. abbe

    @7:
    I believe its more about them commenting on why games on steam install Directx all the time, so people can stop complaining to them. :D

    #8 3 years ago
  9. DarkElfa

    @3, If you’re mad you live in Europe and the stupid policies towards gamers over there are getting you down, there’s always America, South Africa or Australia. Hell, those 3 places have been taking European refugees for decades.

    We must escape gamer persecution.

    You could also try Wales, I think Europe disowned them. Giggety, Giggety, Giggety!

    #9 3 years ago
  10. endgame

    actually BULArmy is right. this only happens if u install the game using Steam. it doesn’t happen if u install the retail version of the game. so it’s Steam’s fault no matter what they say.

    edit: oh and we talking about it doesn’t matter too much. it won’t make a difference. Valve always ran and will run things in w/e way they want. they only give a f**k about users if said users can bring them money and this is precisely why they chose to switch to euro prices in Europe.

    #10 3 years ago
  11. rainer

    This is freaking ancient and has always been the practice long before Steam was around. Games always silently install the Direct-X build they were coded to it’s just installers advanced to the point where they no longer popped up the DX installer.

    Do people like having security holes & bugs in Direct-X or would they prefer malware authors start targeting games.

    The only thing Microsoft could do is run minor DX updates through Windows Update but they would have likely done that already if it were possible so something is blocking them.

    #11 3 years ago
  12. endgame

    also I forgot to mention that steam games can run without installing dx at first run. i canceled it many times and I never had any problems. that guy is talking out of his ass.

    #12 3 years ago
  13. DSB

    What rainer said.

    #13 3 years ago
  14. Talkar

    @3
    Isn’t Activision, you know… Activision of PC gaming? x)

    #14 3 years ago