O three-dlss-nr levou a rede de Neural Rendering associada ao DLSS 5 para o ecossistema Three.js por meio de TSL e WebGPU. O projeto de Ben Houston, atualizado em 2 de outubro de 2026, porta a implementação aberta do OpenDLSS-NR e executa os 71 blocos da rede como kernels de computação dentro do WebGPURenderer, sem readback de CPU.
Além disso, o desenvolvedor afirma que o resultado intermediário foi validado byte a byte contra a implementação WebGPU usada como referência. Isso torna o projeto especialmente interessante como demonstração técnica de DLSS 5 no Three.js, embora ele ainda não represente uma solução pronta para jogos ou aplicações em tempo real.
Demonstração do three-dlss-nr com pesos sintéticos em visualização dividida. Imagem: Ben Houston/three-dlss-nr.
DLSS 5 no Three.js usa 71 blocos e 451 dispatches
Segundo a documentação do projeto, a rede é uma U-Net com blocos transformer e um ViT global na parte inferior. Ao todo, a formulação WebGPU executa 451 dispatches de computação por quadro. Portanto, o trabalho não se limita a uma interface visual: a rede completa foi transportada para nós de computação do TSL.
O three-dlss-nr recebe o quadro renderizado, ruído, histórico temporal reprojetado e parâmetros de condicionamento. Em seguida, produz um residual RGB e um valor usado na composição temporal. Dessa forma, o processo mantém a mesma resolução de entrada e saída; ele não funciona como um upscaler tradicional.
Esse ponto também diferencia a tecnologia de Super Resolution. A própria NVIDIA descreve o DLSS 5 como uma etapa de renderização generativa guiada pelo conteúdo já produzido pelo motor. O projeto independente tenta reproduzir a rede aberta do OpenDLSS-NR dentro do pipeline do Three.js, mas não possui vínculo oficial com a NVIDIA.
Cena-base usada pela demonstração pública do projeto. Imagem: Ben Houston/three-dlss-nr.
Porta é validada byte a byte contra a referência WebGPU
Para conferir a fidelidade do port, Houston compara os kernels e tensores com a referência WebGPU do OpenDLSS-NR no mesmo dispositivo. De acordo com o repositório, os testes cobrem famílias de kernels FP8 e FP16, atenção por janelas, ViT global, operações elementares e etapas de pré e pós-processamento.
Além disso, a rede completa foi comparada em 64 × 64 e 512 × 512 com pesos sintéticos. O autor relata correspondência em 83 de 83 tensores verificados. Entretanto, isso não significa que a demonstração pública reproduza a aparência real do DLSS 5, pois os pesos sintéticos servem apenas para validar a matemática e o fluxo da rede.
Suite pública de paridade compara o backend TSL com a referência WebGPU. Fonte: three-dlss-nr.
Projeto ainda não roda o Neural Rendering em tempo real
Apesar da paridade numérica, o desempenho ainda limita o uso prático. Em uma RTX 3060 Ti, o autor mediu cerca de 201 ms por quadro em 512 × 512 no backend TSL e aproximadamente 659 ms em 1280 × 720. A referência WGSL ficou mais rápida no mesmo teste, com cerca de 123 ms e 412 ms, respectivamente.
Por isso, o próprio repositório deixa claro que o port ainda não é tempo real. O backend TSL aparece aproximadamente 1,6 vez mais lento que a referência WGSL otimizada no mesmo hardware. Assim, os números devem ser entendidos como benchmark de uma implementação experimental, e não como desempenho esperado do DLSS 5 oficial em jogos.
O projeto também exige WebGPU e Three.js r180 ou posterior. Não existe fallback para WebGL. Além disso, a implementação limita o tamanho interno a 1280 × 720 e depende dos recursos de computação disponíveis no adaptador gráfico.
three-dlss-nr não distribui os pesos proprietários da NVIDIA
Outro limite importante envolve o modelo. O repositório não inclui, baixa, hospeda ou extrai os pesos proprietários da NVIDIA. Em vez disso, a demonstração pública pode gerar pesos sintéticos determinísticos, que permitem executar todo o pipeline e verificar a paridade sem distribuir o modelo real.
Consequentemente, a saída visual dos pesos sintéticos não representa a qualidade do DLSS 5. O objetivo é provar que o DLSS 5 no Three.js executa a mesma função matemática da referência quando recebe os mesmos dados. Para uma saída visual significativa, o usuário precisaria fornecer um diretório de modelo para o qual tenha os direitos adequados.
O avanço se soma a outros experimentos recentes com Neural Rendering. O Allves Games também acompanhou o DLSSNR-AMD rodando uma implementação independente em Radeon RX 9070 XT, embora os dois projetos usem arquiteturas e objetivos diferentes.
Por fim, o three-dlss-nr mostra que a rede aberta do OpenDLSS-NR pode ser integrada ao pipeline moderno do Three.js e executada inteiramente na GPU via WebGPU. O próximo desafio é reduzir o custo dos kernels para aproximar a implementação de taxas realmente interativas.
Fontes: repositório oficial do projeto; documentação técnica da NVIDIA sobre DLSS 5.