[webkit-help] Rendering problems without 3D_RENDERING and TEXTURE_MAPPER

Benjamin Poulain benjamin at webkit.org
Tue Sep 2 12:50:04 PDT 2014

Long term you should look into a real solution to support layer
compositing. Modern pages rely more and more on that.

But in the short term, have you tried changing
RenderLayerCompositor::needsToBeComposited() and
RenderLayerCompositor::requiresCompositingLayer() to ensure that no
RenderLayer gets a compositing layer?


On 02/09/2014 06:42, pulkomandy wrote:
> Hi,
> I have a rather annoying issue with the Haiku port for some time. In
> several places there are pages where parts are not rendered at all. For
> example, on youtube.com the search bar at the top of the page does not
> render.
> I have identified the problem: anything using
> 	-webkit-transform: translate3d
> or any other way to trigger the "3D" mode (even with an identity
> transformation) is not rendered.
> This would not be a problem if this was used only when 3D is actually
> needed, but a lot of websites are using this in an attempt to enable
> GPU-accelerated rendering on some browsers.
> I tried enabling the 3D_RENDERING build feature but this has no effect
> on its own. It seems 3D_RENDERING has an effect only when TEXTURE_MAPPER
> is also enabled. We don't want to enable this, for performance reasons
> (the texture mapper doesn't work very well with our currently software
> rendered drawing code).
> I don't think actual 3D rendering is an useful feature for the Haiku
> port (at least not until we can use the GPU to do the rendering). So I'm
> looking for either:
> - A way to make WebKit ignore "translate3d" and the other 3D things in
>   CSS and render pages as if there was no transform at all. I thought
>   the 3D_RENDERING feature would do that, but apparently it doesn't.
> - Or, a way to handle the 3D elements in our platform specific drawing
>   code. At the moment it looks like the GraphicsContext mehods are never
>   called to draw these 3D elements, but I don't understand why it is so.
>   I suspect they are somehow intercepted and sent to a separate "3D"
>   drawing code, but I couldn't find that anywhere in the source. So I
>   have no idea how they are supposed to be drawn on screen, if they
>   don't go through the GraphicsContext.

More information about the webkit-help mailing list