Changes between Version 43 and Version 44 of CoordinatedGraphicsSystem


Ignore:
Timestamp:
Mar 1, 2019 12:28:15 AM (5 years ago)
Author:
Fujii Hironori
Comment:

Texture Mapper

Legend:

Unmodified
Added
Removed
Modified
  • CoordinatedGraphicsSystem

    v43 v44  
    4444
    4545== [#=TextureMapper Texture Mapper] ==
     46
    4647TextureMapper is a light-weight scenegraph implementation that is specially attuned for efficient GPU or software rendering of CSS3 composited content, such as 3D transforms, animations and canvas.
    4748It is a combination of a specialized accelerated drawing context (TextureMapper) and a scenegraph (TextureMapperLayer).
     
    5758TextureMapper also includes a class called [/browser/trunk/Source/WebCore/platform/graphics/texmap/TextureMapper.h BitmapTexture], which is a drawing buffer that can either be manipulated by a backing store, or become a drawing target for TextureMapper. BitmapTexture is roughly equivalent to an [/browser/trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp ImageBuffer], or to a combination of a texture and an FBO.
    5859
    59 '''[/browser/trunk/Source/WebCore/platform/graphics/texmap/TextureMapperImageBuffer.cpp TextureMapperImageBuffer]''' is a software implementation of the TextureMapper drawing primitives.
    60 
    61 It is currently used by Qt in WebKit1 when using a QWebView, and also by the GTK+ port as a fallback when OpenGL is not available.
     60'''TextureMapperImageBuffer''' was a software implementation of the TextureMapper drawing primitives.
     61
     62It was used by Qt in WebKit1 when using a QWebView.
    6263TextureMapperImageBuffer uses normal GraphicsContext operations to draw, making it not effectively use the GPU. However, unlike regular drawing in WebCore, it does use backing stores for the layers, which could cause some soft acceleration.
    6364
    64 '''[/browser/trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp TextureMapperGL]''' is the GPU-accelerated implementation of the drawing primitives. It is currently used by Qt-WebKit2, GTK+ and EFL(?). TextureMapperGL uses shaders compatible with GL ES 2.0, though we’re in the process of converting it to use the WebGL infrastructure directly, which would help with shader compatibility.
     65'''[/browser/trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp TextureMapperGL]''' is the GPU-accelerated implementation of the drawing primitives. TextureMapperGL uses shaders compatible with GL ES 2.0, though we’re in the process of converting it to use the WebGL infrastructure directly, which would help with shader compatibility.
    6566
    6667TextureMapperGL tries to use scissors for clipping whenever it can, though if the clipping is not rectangular stencil is used.