-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cesium looks aliased on MacBook Pro Retina display #3249
Comments
What is the value of |
Are you suggesting this as a workaround? These laptops are popular enough that Cesium needs to looks crisp by default. |
I totally agree. The issue here is that the scene is being rendered at a lower-resolution (as requested by the browser) and then resized with smoothing, but simply going back to the old behavior isn't a good solution for 3 key reasons:
We need to figure out how to resize without smoothing, which is easy to do with a 2D context, but I'm not sure how to do it with 3D (one option could be render to 3D, copy to 2D and then resize without smoothing.) |
Can you try disabling the FXAA pass and see how that looks? I think applying FXAA and then resizing may be part of the problem. One possible solution would be to disable FXAA if resolutionScale !== 1.0 but I think we can do better than that. |
Also, I'm fine with backing out #3233 for 1.16 if we'd rather just keep the status quo for now, but the overall issue is something we've let go on for to long that we should address soon. |
It looks worse without fxaa. With fxaa: Without fxaa:
Let's do this and revisit as time allows. |
I think the problem is that #3233 is wrong. It changed this:
To this:
So previously, with a Now, when
|
For those that didn't see #3251, even the fixed code is blurry because of browser smooth scaling of WebGL canvases. However, thinking about this some more, could we simply render to a texture at the browser-requested size and then draw that on a full-screen quad without smoothing? That seems like it would fix the problem completely and be easy to implement. |
I spoke with @bagnell offline and he thinks implementing the idea in my last post should be simple, since we are already rendering to a texture. He's going to look into it when he has spare time. |
@lilleyse, that's by design. The blurriness is definitely because of the canvas resizing, once that's fixed then we will still have lower-resolution imagery at the same camera view, but it will be crisper. |
That being said, this change could also open the door to defaulting maxScreenSpaceError to 1 or 1.5 instead of it's current default of 2. |
@mramato perhaps this is due to #3233?
master:
1.15:
The text was updated successfully, but these errors were encountered: