… para que serve essa “bagaça”? Em muitos análises referentes a tecnologias para jogos, vemos as APIs DirectX e OpenGL serem comparadas entre si, no que concerne ao desempenho gráfico promovido por elas na renderização de ambientes em 3D dos jogos eletrônicos. O que muitos não sabem é que diferente do OpenGL ou do Vulkan, o DirectX é uma suíte completa que não só se limita a definir um padrão de acesso ao hardware gráfico (o que é feito pela API Direct3D), mas também do acesso ao áudio, da rede e ao armazenamento, entre outros recursos…
“Today we’re releasing the 1.2 version of the DirectStorage SDK, where we’ve added new features and made some fixes based on your feedback. The full list of changes can be found on the NuGet page and you can update to the latest version using NuGet update. Visit the DirectStorage landing page for more information about how to get started. If you have any questions or feedback, please reach out to us on the #directstorage channel on the D3D12 Discord Server.”
— DirectX Developer Blog.
Tais APIs são fundamentais para tanto para os desenvolvedores de jogos quanto os fabricantes de placas de vídeo (e demais componentes de hardware), para garantir que tenhamos boas experiências na execução de jogos eletrônicos, independente das especificações da plataforma adotada (ao menos, em tese). Dentre elas está a DirectStoragem, responsável por garantir o acesso aos dados dos jogos (texturas, modelos, mapas, sons, etc) pela unidade gráfica (ao invés da CPU), com o objetivo de maximizar a performance e deixar a CPU livre para outras tarefas.
A Microsoft atualizou a API DirectStorage e através ela, não só promoveu as habituais melhorias, otimizações e correções, mas também trouxe algumas novidades tecnológicas! Em destaque, estão o recurso Force Buffered IO (a capacidade de abrir arquivos em modo buffer, com o objetivo de “mascarar” os longos tempos de busca, tanto nos tradicionais HDDs quanto nos modernos SSDs, embora seja recomendada a sua utilização apenas em HDDs mais lentos) e a API GetCompressionSupport (habilita a descompressão de arquivos através da GPU ao invés da CPU, afetando também a definição padrão de resolução de texturas).
Na minha opinião, esta API será importante para a indústria de jogos, pelo fato dos SSDs se tornarem uma exigência para as plataformas de jogos mais modernas, já que estas unidades suportam altas taxas de transferência de dados, que por sua vez são armazenados de forma compactada para consumir o mínimo de espaço em disco (os jogos mais modernos armazenam “toneladas” de dados). Se por um lado, elas possibilitaram carregar um grande volume de dados com maior rapidez, por outro a necessidade de descomprimí-los para serem usados em tempo real acaba criando um gargalo, afetando a performance geral da plataforma.
Resumindo: os HDDs estão com os dias contados! Ao menos, para jogos… &;-D