Traceur de chemin Webgl
Demo: webgl-path-tracer
Rapport: Master_Thesis_Report.pdf
Scènes rendues
Progrès
- [+] Estimation de l'événement suivant et échantillonnage à importance multiple portés à partir du phare22
- [+] Algorithme de traverse BVH ordonné implémenté
- [+] Plusieurs textures GL exploitées pour le chargement des textures SkyDome et Albedo
- [+] Chargement du fichier GLTF Amélioré: multiples maillages avec différentes textures Support; quelques correctifs de bug cruciaux: ne calculez pas la taille de la texture GL au moment de l'exécution
- [+] Skydome Sampling
- [+] Couleur de base et textures d'albédo Support
- [+] Chargement de la géométrie à partir de fichiers GLTF
- [+] Amélioration de l'interface utilisateur: boutons du site Web pour contrôler les actions telles que la modification de la scène, le rendu d'arrêt / curriculum vitae
- [+] Contrôles de la caméra de scène via des boutons de site Web ou un clavier
- [+] Shaders GLSL séparés en fichiers externes
- [+] Méthode de la roulette russe pour évaluer la probabilité de survie des rayons
- [+] Structure d'accélération BVH mise en œuvre. Construit du côté JavaScript, puis transmis au shader de fragment via la texture GL. Traversé à l'aide de pile du côté shader.
- [+] Randomiser la lumière basée sur les graines {temps, coordonnées de pixels, itération de boucle}
- [+] Pass Scene Triangles and Lights au shader via la texture
Installation
- Installez les dépendances répertoriées dans package.json , puis regroupez les fichiers source Javasscript
npm install
npm run develop
npm run build
- Traduire TypeScript en javascript: exécutez la tâche de construction dans le code Visual Studio (
CTRL + SHIFT + B ) - Contenu de déploiement
/dist sur un serveur Web hors dossier /dist/.tmp .