95 | | Another use of TextureMapperLayer is to tie together TextureMapper, GraphicsLayerTextureMapper, TextureMapperBackingStore, GraphicsLayerAnimation and GraphicsLayerTransform. It includes all the synchronization phases, that are responsible to time when changes coming from different sources are actually supposed to occur. Without proper synchronization, many times flickers or artifact bugs will occur. |
| 95 | Another use of TextureMapperLayer is to tie together TextureMapper, GraphicsLayerTextureMapper, TextureMapperBackingStore, TextureMapperAnimation and GraphicsLayerTransform. It includes all the synchronization phases, that are responsible to time when changes coming from different sources are actually supposed to occur. Without proper synchronization, many times flickers or artifact bugs will occur. |
104 | | '''[/browser/trunk/Source/WebCore/platform/graphics/GraphicsLayerAnimation.cpp GraphicsLayerAnimation]''' is a class that replicates the AnimationController logic in WebCore, but does so without being coupled with particular WebCore primitives like the document. |
105 | | |
106 | | GraphicsLayerAnimation can receive an accelerated animation “spec” (WebCore::Animation, KeyframeValueList), and process the animation at different points in time, interpolating the opacity, transforms (and filters in the future), sending them back to the animation client, in this case being TextureMapperLayer. |
107 | | |
108 | | '''[/browser/trunk/Source/WebCore/platform/graphics/GraphicsLayerTransform.cpp GraphicsLayerTransform]''' is responsible for the transformation matrix calculations based on the rules defined by GraphicsLayer. There are several properties that determine a node’s transformation matrix: its parent matrix, the anchor point, the local transformation, position, scrolling adjustment, perspective and the preserves-3d flag. These properties are separated due to the fact that the transformation might be animated using GraphicsLayerAnimation, which would make it impossible to multiply in advance. |
| 104 | '''[/browser/trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.cpp TextureMapperAnimation]''' is a class that replicates the AnimationController logic in WebCore, but does so without being coupled with particular WebCore primitives like the document. |
| 105 | |
| 106 | TextureMapperAnimation can receive an accelerated animation “spec” (WebCore::Animation, KeyframeValueList), and process the animation at different points in time, interpolating the opacity, transforms (and filters in the future), sending them back to the animation client, in this case being TextureMapperLayer. |
| 107 | |
| 108 | '''[/browser/trunk/Source/WebCore/platform/graphics/GraphicsLayerTransform.cpp GraphicsLayerTransform]''' is responsible for the transformation matrix calculations based on the rules defined by GraphicsLayer. There are several properties that determine a node’s transformation matrix: its parent matrix, the anchor point, the local transformation, position, scrolling adjustment, perspective and the preserves-3d flag. These properties are separated due to the fact that the transformation might be animated using TextureMapperAnimation, which would make it impossible to multiply in advance. |