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

Índice:

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

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

Vídeo: Por que todo jogo de PC instala sua própria cópia do DirectX?
Vídeo: REMOVER OU BLOQUEAR MEMBROS DO SEU GRUPO DO FACEBOOK! - YouTube 2024, Maio
Anonim
O DirectX faz parte do sistema operacional Windows. Então, por que parece que todo jogo de PC que você instala do Steam, do Origin ou de outro lugar instala sua própria cópia do DirectX?
O DirectX faz parte do sistema operacional Windows. Então, por que parece que todo jogo de PC que você instala do Steam, do Origin ou de outro lugar instala sua própria cópia do DirectX?

O que é o DirectX?

O 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 Direct3D do DirectX para gráficos. Se não, eles usam as APIs OpenGL ou Vulkan de plataforma cruzada. Outros aplicativos que não são jogos podem usar o DirectX para recursos como gráficos 3D.

O Windows 7 inclui o DirectX 11 e o 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” na 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 à direita de "Versão do DirectX" em "Informações do sistema".

Image
Image

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

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

Não existe apenas um único jogo de biblioteca do DirectX Direct3D, ou mesmo apenas um punhado. Os desenvolvedores de jogos precisam direcionar uma versão exata da biblioteca auxiliar do Direct3D. Uma versão mais recente da biblioteca não pode ser usada. Por exemplo, se um desenvolvedor de jogos tiver segmentado o jogo no d3ddx10_40.dll, o jogo não poderá usar d3ddx10_41.dll. Precisa da versão 40, e apenas esse arquivo serve.

Você encontrará esses arquivos na pasta C: Windows System32 do 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 que você tenha executado 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 no seu sistema. A Microsoft também optou por não agrupar esses arquivos de biblioteca do Direct3D com o próprio Windows. Mesmo as bibliotecas do 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 precise delas. Como a Microsoft observa na documentação destinada aos desenvolvedores de jogos, “o Windows Update e os Service Packs não fornecem nenhum dos componentes opcionais do DirectX”.
Mesmo que você tenha executado 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 no seu sistema. A Microsoft também optou por não agrupar esses arquivos de biblioteca do Direct3D com o próprio Windows. Mesmo as bibliotecas do 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 precise delas. Como a Microsoft observa na documentação destinada aos desenvolvedores de jogos, “o Windows Update e os Service Packs não fornecem nenhum dos componentes opcionais do DirectX”.

Até fica mais complicado 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.

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

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

Ok, então todo jogo tem que instalar a versão secundária exata das bibliotecas do 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?
Ok, então todo jogo tem que instalar a versão secundária exata das bibliotecas do 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á como os jogos verificarem com facilidade se as bibliotecas corretas do DirectX de que precisam estão instaladas. Como observa o site de suporte da Steam, o instalador do Microsoft DirectX é a única maneira oficialmente suportada de verificar se os arquivos do DirectX corretos estão instalados no momento. Os jogos executam o instalador do DirectX, geralmente em segundo plano, que instala as bibliotecas necessárias e repara qualquer problema 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 inteligentes descartando diretamente as bibliotecas do DirectX em seu sistema e ignorando o instalador, ou eles quebrariam a licença de software da MIcrosoft. Eles também provavelmente se deparam com vários bugs, mesmo se tentassem isso. É por isso que ninguém faz.

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

Posso remover algumas dessas bibliotecas?

Você não deve remover nenhuma das bibliotecas do DirectX na sua pasta System32 ou SysWOW64. Se eles estão 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 realmente quais arquivos da biblioteca do DirectX são exigidos pelos jogos em seu sistema, por isso não há como saber quais deles são seguros para remover.

Deixe-os em paz! Há uma razão pela qual não há maneira oficialmente suportada de desinstalar esses arquivos de biblioteca. Eles não causarão problemas no seu sistema e serão usados apenas pelos aplicativos que os exigem.

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

O que posso fazer se estou com problemas com o 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 do DirectX incluído corretamente. Você não pode simplesmente baixar um instalador do DirectX a partir do site da Microsoft, mas precisa executar o instalador que o próprio jogo exige.
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 do DirectX incluído corretamente. Você não pode simplesmente baixar um instalador do DirectX a partir do site da Microsoft, mas precisa executar o instalador que o próprio jogo exige.

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. Este arquivo é geralmente chamado DXSETUP.exe.

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

Recomendado: