"Você ouvirá muito sobre por que o SFS (Sampler Feedback Streaming) é tão importante"
Publicado por ☠ Ayrton Senna, em .
Recentemente, Jason Ronald, Diretor de desenvolvimento do Xbox Series X, publicou um artigo sobre a Velocity Architeture, que basicamente representa a arquitetura de i/o do novo console da Microsoft. Este site traduziu o artigo https://www.gamevicio.com/noticias/2020/07/xbox-velocity-architecture-um-olhar-mais-atento-sobre-a-tecnologia-de-ultima-geracao/

Um dos componentes da Velocity Architeture que tem gerado várias discussões na comunidade é o SFS (Sampler Feedback Streaming), onde Jason Ronald mostrou que este componente filtra as texturas que de fato a GPU precisa no momento, economizando leituras de assets do SSD, bem como espaço físico na memória RAM. E foi alegado no artigo que a melhoria é de até 2.5x

Em um recente tweet, James Stanard que trabalha na Microsoft como Engenheiro de Gráficos do Xbox, explicou a eficiência do SFS.


A eficiência aproximada de 2,5x vem da não leitura de mips inteiros, mas apenas das regiões de textura de interesse. Lendo mips inteiros, um jogo pode solicitar 12 GB para carregar. Com o SFS, apenas 4,8 GB são realmente necessários; portanto, 4,8 GB/s "parecem" 12 GB/s. Faz sentido?

E em uma série de tweets, Gavin Stevens, que é lead Designer do estúdio Team Blur Games, detalhou tecnicamente as reais vantangens do SFS. Como vocês poderão observar nos tweets, Gavin deixa claro que em matéria de poder bruto, a arquitetura de i/o de SSD do Playstation 5 é mais rápida. Entretanto, features como SFS podem mitigar bastante essa diferença, obtendo um equilíbrio de resultados se comparado ao poder bruto do PS5.


Você ouvirá muito sobre por que o SFS (Sampler Feedback Streaming) é tão importante e por que é tão importante para maximizar o potencial do Hardware do Xbox Series X em relação à sua arquitetura Velocity. Então, vamos dar uma olhada muito breve e rápida nas coisas. 1/1


Primeiro, texturas. Os jogos são feitos de texturas, das quais uma única superfície pode conter várias. O que parece um asset visual simples para você no mundo do jogo pode na verdade conter muitos. Geralmente, as superfícies são criadas com um mínimo de: Difuso, Especular e Normal. 2/2


No entanto, eles também podem conter canais separados para mascarar, variáveis de potência e escala, mapas de altura, mapas de oclusão ou de paralaxe etc. Esses geralmente são melhor servidos na mesma resolução nativa do difuso, mas podem ser de qualquer tamanho, maior ou menor. 3/3


Portanto, um conjunto de texturas padrão contém vários assets. Os assets variam em tamanho, dependendo da resolução e do método de compactação usado. Para referência, um conjunto de texturas padrão de 2048x2048 será D / N / S, dos quais cada arquivo tem 12mb, portanto, 36mb no total. 4/4


Na próxima geração, 4096x4096 e 8192x8192 será mais comum. Um conjunto padrão 4096 tem 48mb cada (144mb) e 8192 é um maciço 192mb cada (576mb). Adicionando em outras superfícies, você pode ver como elas se somam. 5/5


No entanto, essa não é uma suposição justa, pois normalmente compactamos essas imagens para economizar o tamanho do arquivo no disco. Mas também fazemos outros truques, como especular em escala de cinzas ou mapas de especificação com resolução mais baixa. Existem várias maneiras de economizar tamanho aqui. 6/6


Mas vamos com um conjunto padrão 4096, em 144mb, descompactado.

Agora, todo recurso de textura é composto de algo chamado "mip". Os mapas Mip são, essencialmente, versões de resolução mais baixa do mesmo asset. A razão para isso é que, quando um asset é usado no atual ... 7/7


... cena, se você usar uma imagem de resolução muito baixa, ela parecerá horrível, mas também uma resolução muito alta parecerá absolutamente terrível à distância e parecerá o que chamamos de brilho (quase como olhar para uma versão pixelizada da imagem) . Então, misturamos essas texturas conforme necessário. 8/8


As modernas engines de jogos lidam com esse processo automaticamente. Coloque um 512x512 e a engine carregará os mips corretos, conforme necessário. Mas quais são os "mips corretos"? Um mip é criado para uma textura que é exatamente metade dos eixos X e Y do anterior. Em inglês, este ... 9/9


... significa que 512x512 seria nossa fonte e, em seguida, 256x256, 128, 64, 32, 16 etc. Portanto, como você pode ver, quanto maior a resolução do seu recurso básico, mais mips serão necessários. Lembre-se novamente de que isso é feito para TODOS os assets, em termos de textura. 10/10


Agora ... Vamos voltar ao SFS. Um método normal de lidar com esses dados é que precisamos carregar toda a textura na memória. Sim, isso significa que se você tem, digamos um modelo de jogador, e ele usa uma textura de 8192 res, você não tem como contornar isso. Você carrega essa textura 8192. 11/11


Se o jogador estiver na sua cara ou se estiver a 1,6 km de distância, atirando em outra pessoa, não importa ... Se o mecanismo achar que esse recurso é necessário, ele estará na memória. Lembre-se, eu disse que não é apenas um asset, mas vários. Então, pense na enorme quantidade de dados que poderia ser ... 12/12


..necessário, para um único personagem que está a uma milha de distância, que ocupa 1 cm no seu OLED de 65 ". Os sistemas tradicionais e, sim, o PS5, funcionam dessa maneira.

Mas com o SFS, você não.

E este é o divisor de águas. 13/13


O SFS essencialmente carregará apenas os mips necessários e ignorará totalmente tudo o que normalmente precisaria ser chamado na memória. Por que isso é importante?

Simples.

Porque agora, essa metade de gigs de dados não compactados são apenas 576 ...... kb. 14/14

Because now, that half a gigs worth of uncompressed data, is just 576......kb


Agora você só precisa carregar a textura de 128x128 (exemplo), devido à grande distância. Obviamente, isso mudará com base na proximidade, mas funciona para qualquer superfície. Texturas do mundo do jogo, personagens, etc. Você SEMPRE estará perto de algo, mas longe de outros. 15/15


Então agora você está carregando muito, muito, muito menos dados de textura.

Por que isso é tão importante?

Porque agora, você precisa de muito menos taxa de transferência de E/S para mover assets para dentro e para fora da memória. Você pode carregar as coisas mais rapidamente, com menos impacto, mas ainda com a qualidade desejada. 16/16


Em suma, isso realmente muda a necessidade de uma largura de banda maior e permite a mesma fidelidade, a um custo menor. O que não apenas equivale a mais memória para jogar com assets), mas também a um desempenho mais rápido. 17/17


O PS5 SSD é mais rápido que o do SeriesX. Desse modo, não há absolutamente ninguém com um cérebro que lhe diga o contrário. No entanto, há mais de uma maneira de esfolar um gato, e o SFS é uma mudança de jogo absoluta para acompanhar a unidade (brilhante) do PS5.


Junte isso a velocidades sustentadas que são um pouco mais altas e outros truques para renderizar assets de melhor qualidade em um ambiente próximo (estou ansioso para ver como a MS também aborda uma alternativa ao DLSS 2.0!) E está claro para entender por que o Xbox Series X é uma máquina muito boa. 19/19


Ambas as máquinas são incríveis. AMBOS. Mas enquanto a Sony colocou todos os ovos em uma cesta de SSD, a MS dividiu o talento de tudo. O XSX SSD é um excelente kit com algumas otimizações impressionantes de IO que são ignoradas, mas ... 20/20


218/5000... agora, juntamente com o SFS, essencialmente nivela o campo de jogo.

Como eu disse, não há como negar que o PS5 tem o IO mais rápido e velocidades brutas ... É CLARO. Mas esse não é o fim do truque de mágica para a MS. 21/21
carloseduardocd
☠ Ayrton Senna #carloseduardocd
River Raid, Enduro, Super Mario World, Top Gear e Street Fighter 2. O restante foi consequência.
Usuário do Site
Deixe seu comentário para sabermos o que você achou da publicação
Gosta do site e quer ajudar a o manter online? Apoie-nos!.
Não se esqueça que você pode participar do nosso Discord.
E também nos seguir no Facebook, Twitter, Instagram e na nossa curadorida da Steam.