11Aug

Por que cada jogo de PC instala sua própria cópia do DirectX?

DirectX faz parte do sistema operacional Windows. Então, por que parece que todo o jogo de PC que você instala da Steam, Origin ou em outro lugar instala sua própria cópia do DirectX?

O que é DirectX?

DirectX faz parte do Microsoft Windows.É um grupo de APIs( interfaces de programação de aplicativos) que os desenvolvedores podem usar para recursos gráficos 3D, vídeo, multimídia, som e gamepad no Windows. Muitos jogos no Windows usam o Direct3D do DirectX para gráficos. Se não o fizerem, eles usam as APIs OpenGL ou Vulkan multiplataforma. Outros aplicativos que não sejam do jogo podem usar o DirectX para recursos como gráficos 3D.

O Windows 7 inclui o DirectX 11 eo Windows 10 inclui o DirectX 12. Quando os desenvolvedores estão desenvolvendo jogos, eles escolhem as versões do DirectX que desejam segmentar. Por exemplo, um jogo escrito apenas para o DirectX 11 não seria executado no Windows XP, onde a versão mais recente disponível é o DirectX 9.

Você pode verificar a versão do DirectX disponível em seu sistema clicando no botão Iniciar, digitando "dxdiag" emna caixa de pesquisa e pressionando Enter. Quando a janela da Ferramenta de diagnóstico do DirectX for exibida, você verá o número da versão aparecer à direita da "Versão do DirectX" em "Informações do sistema".

se estiver incluído no Windows, por que os jogos estão instalando?

Então, se o DirectX é uma parte do Windows, por que os jogos até o instalam em primeiro lugar? A resposta curta é que a instalação do DirectX é uma bagunça.

Não há apenas um único jogo de biblioteca DirectX Direct3D depende, ou mesmo um punhado. Os desenvolvedores de jogos devem segmentar uma versão exata da biblioteca auxiliar Direct3D.Uma versão mais recente da biblioteca não pode ser usada. Por exemplo, se um desenvolvedor de jogos segmentasse seu jogo em d3ddx10_40.dll, o jogo não pode usar d3ddx10_41.dll. Ele precisa da versão 40, e somente esse arquivo fará.

Você encontrará esses arquivos na pasta C: \ Windows \ System32 no seu sistema. Em um sistema de 64 bits, as bibliotecas de 64 bits estão localizadas em C: \ Windows \ System32 e as bibliotecas de 32 bits estão localizadas em C: \ Windows \ SysWOW64.

Mesmo se você executou o instalador mais recente do DirectX, não há garantia de que ele instalará todas as versões secundárias antigas das bibliotecas do DirectX em seu sistema. A Microsoft também escolheu não incluir esses arquivos de biblioteca Direct3D com o próprio Windows. Até as bibliotecas Direct3D criadas antes do lançamento do Windows 10, por exemplo, não estão todas incluídas no Windows 10. Eles precisam ser instalados por um aplicativo que as necessite. Como a Microsoft informa na documentação destinada aos desenvolvedores de jogos, "Windows Update e Service Packs não fornecem nenhum dos componentes opcionais do DirectX".

Até se torna mais complicado do que isso. Os jogos de 32 bits precisam das versões de 32 bits do arquivo da biblioteca, e os jogos de 64 bits precisam da biblioteca de 64 bits.

Isto é semelhante à situação com as bibliotecas Microsoft Visual C ++ Redistributable. As diferentes aplicações dependem de diferentes versões das bibliotecas e você precisa ter muitas versões diferentes instaladas. Há uma boa chance de você ter muitos desses instalados no seu sistema também.

, mas por que cada jogo de PC precisa reinstalá-lo?

Ok, então cada jogo precisa instalar a versão mínima exata das bibliotecas DirectX que ele requer. Mas, se você já instalou essa versão específica de uma biblioteca do DirectX uma vez, certamente o jogo não precisa executar o instalador do DirectX - certo?

Errado. Não há nenhuma maneira para jogos verificar facilmente se as bibliotecas DirectX corretas que eles precisam estão instaladas. Como o site de suporte do Steam anota, o instalador da Microsoft DirectX é a única maneira oficialmente oficial de verificar se os arquivos DirectX corretos estão instalados no momento. Os jogos executam o instalador do DirectX, muitas vezes em segundo plano, que instala as bibliotecas necessárias e repara quaisquer problemas no sistema.

O instalador do DirectX também é a única maneira pela qual a Microsoft permite aos desenvolvedores distribuir esses arquivos. Os desenvolvedores não podem tentar ser inteligentes deixando as bibliotecas do DirectX no seu sistema diretamente e ignorar o instalador, ou estariam quebrando a licença de software da MI.Eles também provavelmente encontrariam vários erros, mesmo que eles tentassem isso.É por isso que ninguém faz.

Claro, nem todos os jogos realmente têm que executar o instalador do DirectX quando você os inicia. Os jogos que usam o OpenGL ou o Vulkan em vez do Direct3D do DirectX não precisarão executá-lo. Alguns jogos também dependem apenas das principais versões do DirectX como DirectX 11, 10 ou 9 e não precisam chamar o instalador do DirectX porque eles não usam nenhuma dessas bibliotecas auxiliares.

Posso remover algumas dessas bibliotecas?

Você não deve remover nenhuma das bibliotecas do DirectX em sua pasta System32 ou SysWOW64.Se eles estiverem presentes no seu sistema, é porque um jogo ou outro aplicativo que você instalou precisava deles. Se você começar a remover arquivos de biblioteca, os aplicativos podem quebrar. Não há como saber quais arquivos da biblioteca DirectX são necessários para quais jogos em seu sistema, então não há como saber quais são seguros para remover.

Deixe-os em paz! Existe uma razão pela qual não existe uma maneira oficialmente suportada de desinstalar esses arquivos de biblioteca. Eles não causarão problemas no seu sistema e serão usados ​​somente por aplicativos que os exijam.

Se você está realmente desesperado para limpar essas bibliotecas antigas, é melhor reinstalar o Windows para obter um novo sistema em vez de excluir aleatoriamente os arquivos da biblioteca. Mas eles vão começar a reaparecer aqui depois de instalar jogos, mesmo assim. Não se preocupe com isso.

O que posso fazer se eu tiver problemas do DirectX?

Se você vir uma mensagem de erro relacionada ao DirectX ao tentar executar ou instalar um jogo, é possível que o instalador do jogo não esteja executando corretamente o instalador redistribuível do DirectX incluído. Você não pode simplesmente baixar um instalador do DirectX no site da Microsoft, porém - você precisa executar o instalador que o próprio jogo exige.

Você pode entrar na pasta do jogo no seu sistema ou no disco de instalação do jogo, localize o arquivo. exe do instalador DIrectX e execute-o para corrigir o problema. Este arquivo geralmente é chamado DXSETUP.exe.

Você geralmente pode obter mais informações sobre como solucionar o problema, realizando uma busca na web pelo nome do jogo ou aplicativo e pela mensagem de erro específica do DirectX que você está vendo.