Open rajsunku opened 1 month ago
I think there's a bigger question of what these screenspace thickness lines should do for raycasting when they're off screen - if a line is off screen there's not a clear interpretation of what "screen space" means. And projecting into camera clip space to to perform the raycasting won't necessarily have sensible results.
cc @WestLangley
@rajsunku Can you please provide a live example to demonstrate exactly what you are doing?
I think there's a bigger question of what these screenspace thickness lines should do for raycasting when they're off screen - if a line is off screen there's not a clear interpretation of what "screen space" means. And projecting into camera clip space to to perform the raycasting won't necessarily have sensible results.
I'd agree with this. Anything that is screen-space must be culled if all points are completely offscreen. For speed, we can early out by checking resolution is non-zero.
I'd agree with this. Anything that is screen-space must be culled if all points are completely offscreen.
From a practical perspective I can see needing to be able to interact / raycast with lines that are off screen but I'd be okay changing the function to just cull the lines off screen until there are requests to figure out another solution.
It gets resolved once you pan to the line since the resolution gets updated.
Disabling "frustumCulled" would be a workaround for now, I think.
Description
When a
LineSegments2
object is rendered off the screen, theLineMaterial.resolution
variable doesn't get updated until theonBeforeRender
function is run. This causes raycasters to intersect with the lines incorrectly even when they are not on the screen. It gets resolved once you pan to the line since theresolution
gets updated.Reproduction steps
Code
Live example
Screenshots
No response
Version
0.168.0
Device
No response
Browser
No response
OS
No response