Webgl Path Tracer
Demonstração: webgl-path-tracer
Relatório: Master_Thesis_Report.pdf
Cenas renderizadas
Progresso
- [+] Próxima estimativa do evento e amostragem de importância múltipla portada do Lighthouse2
- [+] Ordenado algoritmo de travessia BVH implementado
- [+] Múltiplas texturas GL exploradas para texturas de Skydome e Albedo
- [+] Carregamento do arquivo GLTF Melhorado: várias malhas com suporte de texturas diferentes; Poucas correções cruciais de bug: não calcule o tamanho da textura GL no tempo de execução
- [+] Amostragem de Skydome
- [+] Suporte de cor base e albedo
- [+] Carregamento de geometria de arquivos GLTF
- [+] Interface do usuário aprimorada: botões do site para controlar ações como mudança de cena, renderização de parada/retomar
- [+] Controles da câmera de cena através de botões do site ou teclado
- [+] Shaders GLSL separados em arquivos externos
- [+] Método da roleta russa para avaliar a probabilidade de sobrevivência dos raios
- [+] Estrutura de aceleração BVH implementada. Construído no lado JavaScript e depois passou para o shader do fragmento via textura GL. Atravessado usando a pilha no lado do shader.
- [+] Randomizar a luz com base na semente {time, coordenadas de pixel, iteração de loop}
- [+] Passe os triângulos e luzes da cena para o shader via textura
Configurar
- Instale dependências listadas em package.json e depois agrupar os arquivos de origem javasscript
npm install
npm run develop
npm run build
- Traduzir TypeScript para JavaScript: Executar tarefa de construção no código do Visual Studio (
CTRL + SHIFT + B ) - Implante
/dist conteúdo em um servidor da Web excluindo /dist/.tmp Pasta.