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

DirectX faz parte do sistema operacional Windows. Então, por que parece que cada jogo de PC que você instala do Steam, Origin ou de 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 de gráficos 3D, vídeo, multimídia, som e gamepad no Windows. Muitos jogos no Windows usam o Direct3D do DirectX para gráficos. Caso contrário, eles usam as APIs OpenGL ou Vulkan de plataforma cruzada . Outros aplicativos que não são de jogos podem usar DirectX para recursos como gráficos 3D.

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

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

Se estiver incluído no Windows, por que os jogos estão sendo instalados?

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

Recomendado:  Onde estão meus downloads no Windows?

Não existe apenas uma única biblioteca DirectX da qual os jogos Direct3D dependem, ou mesmo apenas um punhado. Os desenvolvedores de jogos precisam ter como alvo 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 direcionou seu jogo para d3ddx10_40.dll, o jogo não pode usar d3ddx10_41.dll. Ele precisa da versão 40 e apenas esse arquivo servirá.

Você encontrará esses arquivos na pasta C: \ Windows \ System32 em 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 DirectX mais recente, não há garantia de que instalará todas as versões secundárias antigas das bibliotecas DirectX em seu sistema. A Microsoft também optou por não agrupar esses arquivos de biblioteca Direct3D com o próprio Windows. Mesmo as bibliotecas Direct3D criadas antes do lançamento do Windows 10, por exemplo, não estão todas incluídas no Windows 10. Elas precisam ser instaladas por um aplicativo que precisa delas. Como a Microsoft observa na documentação destinada a desenvolvedores de jogos, “Windows Update e Service Packs não fornecem nenhum dos componentes opcionais do DirectX”.

Ainda fica mais complicado do que isso. Os jogos de 32 bits precisam das versões de 32 bits do arquivo de biblioteca e os jogos de 64 bits precisam da biblioteca de 64 bits.

RELACIONADOS: Por que há tantos “Microsoft Visual C ++ Redistributables” instalados em meu PC?

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

Recomendado:  iCloud Private Relay é outro recurso do iOS 15 que não está pronto para lançamento

Mas por que todo jogo de PC precisa reinstalá-lo?

Ok, então todo jogo precisa instalar a versão secundária exata das bibliotecas DirectX de que necessita. Mas, se você já instalou aquela versão específica de uma biblioteca DirectX uma vez, certamente o jogo não precisa executar o instalador DirectX – certo?

Errado. Não há como os jogos verificarem facilmente se as bibliotecas DirectX corretas de que precisam estão instaladas. Como observa o site de suporte do Steam , o instalador DirectX da Microsoft é a única forma oficialmente suportada de verificar se os arquivos DirectX corretos estão instalados no momento. Os jogos executam o instalador do DirectX, geralmente em segundo plano, que instala quaisquer bibliotecas necessárias e repara quaisquer problemas no sistema.

O instalador do DirectX também é a única maneira pela qual a Microsoft permite que os desenvolvedores distribuam esses arquivos. Os desenvolvedores não podem tentar ser espertos descartando as bibliotecas DirectX de seu sistema diretamente e pular o instalador, ou estariam quebrando a licença de software da MIcrosoft. Eles provavelmente também encontrariam vários bugs, mesmo se tentassem isso. É por isso que ninguém o faz.

Claro, nem todos os jogos realmente precisam executar o instalador do DirectX quando você os inicia pela primeira vez. Jogos que usam OpenGL ou Vulkan em vez do Direct3D do DirectX não precisarão ser executados. Alguns jogos também dependem apenas de versões principais 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 DirectX na pasta System32 ou na pasta SysWOW64. Se eles estiverem presentes em seu sistema, é porque um jogo ou outro aplicativo que você instalou precisava deles. Se você começar a remover os arquivos da biblioteca, os aplicativos podem ser interrompidos. Não há como saber quais arquivos de biblioteca DirectX são necessários para quais jogos em seu sistema, portanto, não há como saber quais são seguros para remover.

Recomendado:  O que significa “JSYK” e como usá-lo?

Deixe-os em paz! Há um motivo pelo qual não há uma maneira oficialmente compatível de desinstalar esses arquivos de biblioteca. Eles não causarão problemas em seu sistema e serão usados ​​apenas por aplicativos que os requeiram.

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

O que posso fazer se estiver tendo problemas com 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 o instalador redistribuível DirectX incluído corretamente. Você não pode simplesmente baixar um instalador DirectX do site da Microsoft – você precisa executar o instalador que o próprio jogo requer.

Você pode acessar a pasta do jogo em seu sistema ou no disco de instalação do jogo, localizar o arquivo .exe do instalador do DIrectX e executá-lo para corrigir o problema. Esse arquivo geralmente é denominado DXSETUP.exe.

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