Last week, the Mozilla Gfx team announced that WebRender is now in beta. It is not yet released because of some blocking bugs. WebRender is an experimental renderer for Servo that draws web content like a modern game engine. It consists of a collection of shaders that very closely matched CSS properties.
Though WebRender is known for being extremely fast, its main focus is on making rendering smoother. It basically changes the way the rendering engine works to make it more like a 3D game engine.
What are the WebRender and Gecko changes?
- In order to save GPU memory, the sizing logic to render targets is now more efficient.
- It comes with improved tooling to synchronize between the WebRender and Gecko repositories.
- Many incremental changes towards picture caching including batch caching based on z id rather than prim index, removing PrimitiveMetadata struct, and many more.
- A proper support for using tiled images as clip masks.
- A texture corruption issue after resuming from sleep on Linux with proprietary Nvidia drivers is fixed.
- A flickering issue at startup on Windows is fixed.
- The backface-visibility bugs are fixed.
- The z-fighting glitch with 3D transforms is fixed.
- A font leak on Windows is fixed.
In the future, we will see more improvements in memory usage, the interaction between blob images and scrolling, and support for WebRender in Firefox for Android.
You can enable WebRender in FireFox Nightly by following these steps:
- In about:config set “gfx.webrender.all” to true.
- After configuring restart Firefox.
Read the official announcement on the Mozilla Gfx team blog.