You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For three-gpu-pathtracer I've been rendering the image in tiles for the sake of performance but found that it's not possible to set the exact pixels that the renderer rasterize due to the multiplication with the pixel ration and subsequent rounding that occurs in the setScissor and setViewport functions.
This means that when rendering tiles side by side the rounding can result in pixels being missed when rendering tiles. For three-gpu-pathtracer I've switched to using the WebGLRenderTarget's .scissor property since it affords setting the sciossor via exact pixel values.
Reproduction steps
Try to render in a tiled fashion with a combination of pixel ratio and dimensions that do not cleanly divide
See that the tiles miss rows and columns of pixels due to rounding error
Code
See live example.
Live example
Demo with selected pixel ratio and dimensions that result in the skipped pixels.
According to the WebGL/OpenGL spec the values passed to gl.viewport() and gl.scissor() are supposed to be GLint. To be spec compliant, the engine should round values. So maybe the usage of floor() is incorrect? Would using round() solve the issue?
Description
For three-gpu-pathtracer I've been rendering the image in tiles for the sake of performance but found that it's not possible to set the exact pixels that the renderer rasterize due to the multiplication with the pixel ration and subsequent rounding that occurs in the setScissor and setViewport functions.
This means that when rendering tiles side by side the rounding can result in pixels being missed when rendering tiles. For three-gpu-pathtracer I've switched to using the WebGLRenderTarget's .scissor property since it affords setting the sciossor via exact pixel values.
Reproduction steps
Code
See live example.
Live example
Demo with selected pixel ratio and dimensions that result in the skipped pixels.
https://jsfiddle.net/cfhwous9/
Screenshots
https://twitter.com/mrdoob/status/1752366500621746617
Version
r160
Device
Desktop, Mobile
Browser
Chrome, Firefox, Safari, Edge
OS
Windows, MacOS, Android
The text was updated successfully, but these errors were encountered: