-
-
Notifications
You must be signed in to change notification settings - Fork 36.1k
Closed
Labels
Milestone
Description
Description
I believe @sunag is working on this, but posting here for reference:
This code block is leading to a concurrency problem.
three.js/src/renderers/common/PostProcessing.js
Lines 69 to 85 in 7b9a543
| const renderer = this.renderer; | |
| const toneMapping = renderer.toneMapping; | |
| const outputColorSpace = renderer.outputColorSpace; | |
| renderer.toneMapping = NoToneMapping; | |
| renderer.outputColorSpace = LinearSRGBColorSpace; | |
| // | |
| await _quadMesh.renderAsync( renderer ); | |
| // | |
| renderer.toneMapping = toneMapping; | |
| renderer.outputColorSpace = outputColorSpace; | |
While awaiting renderAsync() to resolve, other asychronous calls to renderer.render() can occur -- in a loader callback, for example.
Adding some print statememts to the above block, I get results like this:
renderer.toneMapping temporarily set to: 0
renderer.toneMapping temporarily set to: 0
renderer.toneMapping restored to: 2
renderer.toneMapping restored to: 0
renderer.toneMapping temporarily set to: 0
renderer.toneMapping restored to: 0
renderer.toneMapping temporarily set to: 0
renderer.toneMapping restored to: 0
.
.
Reproduction steps
see above
Code
see above
Live example
n/a
Screenshots
No response
Version
r169dev
Device
No response
Browser
No response
OS
No response
sunag and gkjohnson