[Bug] - N8AO works incorrectly with adaptiveDpr
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Bug
- Clarté
- À clarifier
- Activité
- À l'abandon
- Stack technique
- react, three.js, typescript
- Domaine
- frontend, performance, web-dev
Piste de recherche
Commencez par le comportement de N8AOPostPass décrit dans l’issue et reproduisez le cas en faisant passer la DPR du renderer de 2 à 1 dans les configurations react-postprocessing et three indiquées. Suivez la manière dont ses valeurs de taille sont mises à jour ; c’est terminé lorsque adaptiveDpr ne produit plus de réflexions intempestives après la transition de DPR.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Hey everyone! I seems found a bug in N8AO related to AdaptiveDpr
We found a strange effect in our application after adding N8AO to EffectComposer - sometimes it started to add weird 'reflections' to the materials, and we couldn't understand where it's coming from
This is how it looks like: On the surface of the model you can see "reflection" from grid, which should't be present (but it's not only about grid but any objects can appear as reflection).
After debugging for a while I've noticed that this happens on my machine when DPR value is changed. If we (or system) change dpr from 2 to 1, N8AO started to add this 'reflections'. As I can see class has size values which are half of the initial renderer size (if I understand correctly)
If I manually call setSize(width, height) method on N8AOPostPass instance and upscale this values back to dpr=2 values this bug disappears. So it's either should always keep initial values or there is some error in calculation after updating render size
Steps to reproduce
Lest say screen size is 1000x500 with dpr=2. initial values of renderer is 2000x1000px, dpr=2, we set dpr to 1, values are updated to 1000x500, bug appears. If I set values manually by calling setSize() on N8AOPostPass instance to setSize(2x1000, 2x500) it starts working correctly again
versions
"@react-three/drei": "^9.97.5",
"@react-three/fiber": "^8.15.16",
"@react-three/postprocessing": "^2.16.2",
"postprocessing": "^6.35.3",
"three": "^0.161.0",
Can anyone help with this? I can help with fix if you can explain a bit more of how it works. Thanks in advance
- Langage dominant
- TypeScript
- Étoiles
- 1.4k
- Forks
- 134
- Merge moyen
- 4 min
- PR mergées (30 j)
- 4
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de pmndrs/react-postprocessing
-
Difficulté 3/5 1-2 jours Accessibilité débutants 42/100
pmndrs/react-postprocessing#343 · 1 commentaire ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
pmndrs/react-postprocessing#286 ·
-
enhancement
pmndrs/react-postprocessing#253 · 4 réactions · 1 personne assignée ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
pmndrs/react-postprocessing#240 · 1 commentaire · 1 réaction ·
-
Integrate realism-effects Ouverteenhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 20/100
pmndrs/react-postprocessing#183 ·
Toutes les issues de pmndrs/react-postprocessing
Issues similaires
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulté 1/5 Moins d'une heure Accessibilité débutants 76/100
-
code-quality refactoring
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
langchain-ai/deepagents#6450 ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
vercel/react-tweet#225 ·