Global illumination V2
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 22/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Stack tecnologico
- cpp
- Ambito
- computer-graphics
Direzione di ricerca
Start by comparing the gi-rendering-2 prototype branch with the existing -gi 1 implementation and the predecessor issue #510. The issue proposes -gi 2, irradiance cache points and optional RayQuery, but leaves key design choices open. Done would require agreeing on an implementable approach and delivering scalable, higher-quality multi-bounce GI; no files or tests are identified.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Starting new issue, for new and better GI, successor to https://github.com/Try/OpenGothic/issues/510
Enable:
-gi 2 in command-line, while at testing (-gi 1 is old probe based GI)
Concept:
- Irradiance cache points, similar to offline rendering
Goals:
- Improve quality (multi bounce)
- Allow scaling to low-end most hardware
Key building blocks
- Irradiance points for final gather
- RayQuery (if supported), for tracing rays
- ??? for world-space irradiance cache
Prototype (https://github.com/Try/OpenGothic/tree/gi-rendering-2)
(only sun is pathtraced, 64 paths per IC)
First bounce (working)
GBuffer driven hole filling on empty-tile.
Iterative hole filling on tiles with healthy cache.
Second bounce (idea)
On primitive storage for cache-points. uvec2(instanceID, primitiveID) form a key to hash table, with multiple records for cache-points.
Spawn of secondary surfels restricted by remaining path energy.
Reference materials:
DreamWorks:
https://www.tabellion.org/et/paper/siggraph_2004_gi_for_films.pdf
https://cgg.mff.cuni.cz/~jaroslav/gicourse2010/giai2010-04-eric_tabellion-slides.pdf
Very game-friendly setup, with min/max surfel radius accounted in interpolation math.
Disney(Cache Points for Many-Lights)
https://cdn.disneyanimation.com/uploads/publications/DIGIPRO2024_cachepoints_paper_final.pdf
https://disneyanimation.com/publications/cache-points-for-production-scale-occlusion-aware-many-lights-sampling-and-volumetric-scattering/
https://media.disneyanimation.com/uploads/production/publication_asset/177/asset/a.pdf
Not today tech for a game, but maybe valid future-looking idea. Maybe some particular building blocks can be of use.
Extended:
https://www.cs.umd.edu/~zwicker/publications/RadianceCachingParticipatingMedia-TOG08.pdf
https://dcgi.fel.cvut.cz/wp-content/wpallimport-dist/publications/pdf/publications-2006-krivanek-egsr-mricp-paper.pdf
https://sgvr.kaist.ac.kr/~sungeui/SGA08/course_note/IC.pdf
https://studios.disneyresearch.com/wp-content/uploads/2019/03/Practical-Hessian-Based-Error-Control-for-Irradiance-Caching-2.pdf
https://cgg.mff.cuni.cz/~jaroslav/papers/2008-irradiance_caching_class/03-greg-ic.pdf
https://people.mpi-inf.mpg.de/alumni/d4/2016/rherzog/Papers/herzogEG09.pdf
Reference materials (rendering):
Micro-rendering:
https://jankautz.com/publications/microrenderingSIGAsia09.pdf
Today probably, no point to bother with surfel-clouds. Instead same concept can be implemented with nanite-like visibility buffer. Every micro-framebuffer is ~24x24 pixels, making any polygon effectively micropoly that can be rasterized with atomicMin
- Lingua principale
- C++
- Stelle
- 1.6k
- Fork
- 138
- Merge medio
- 1g 22h
- PR unite (30g)
- 14
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Try/OpenGothic
-
Build fails with GCC 16 and -march=native: -Werror=array-bounds in DynamicWorld::soundOclusion()Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Try/OpenGothic#1010 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
Try/OpenGothic#1033 ·
I maintainer di solito rispondono entro 1 giorno
-
Out of box experienceAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
Try/OpenGothic#992 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Skeletons and goblins do too little damageForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertabug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
Try/OpenGothic#990 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
Try/OpenGothic#986 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di Try/OpenGothic
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
macOS: a double-click on a notarized altairsim is refused, and the docs give only the offline caseForse già presa @anhaoXie l’ha presa oggi. Apertadocumentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
mutationpp/Mutationpp#337 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
bulletphysics/bullet3#4819 ·
-
[YSQL] Local-node initdb reads postgres.bki, but YB clusters bootstrap only from yb_postgres.bkiApertaarea/ysql kind/enhancement priority/low status/awaiting-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
yugabyte/yugabyte-db#35763 ·
I maintainer di solito rispondono entro 1 giorno