uitest: remove duplicated tests
[LibreOffice.git] / slideshow / README
blobe67379f43c89c9ef9e91bd21341419350fdf4576
1 The Impress slideshow engine
3 == 3D transitions ==
5 The 3D transitions are slideshow transition engine using OpenGL and
6 are located in slideshow/source/engine/OGLTrans/. They were initially
7 written by GSOC student Shane.M.Mathews. Radek has later polished the
8 code a bit, added few new 3D transitions, added infrastructure for
9 vertex and fragment shaders. Wrote few transitions with fragment shader
10 too.
12 == Physics Animation Effects ==
14 Physics animation effects are simulated by external 2d physics engine
15 library Box2D. They don't directly call Box2D functions but instead
16 use the wrapper in:
17 * slideshow/source/inc/box2dtools.hxx
18 * slideshow/source/engine/box2dtools.cxx
20 The wrapper has two corresponding classes to manage the Box2D world
21 and Box2D bodies.
23 When a physics animation starts, a Box2DWorld is initiated and
24 populated with every shape that is part of the foreground (which are
25 shapes that do not belong to the master slide and not a background
26 shape).
28 After creation until the end of the slide (not the whole slideshow)
29 the Box2D World isn't destroyed and reused. But the bodies that
30 represent the shapes in the slide get destroyed when there's a point
31 in time that there's no physics animation in progress. And recreated
32 when another physics animation starts.
34 If there are multiple physics animations in parallel only one of them
35 takes the role of stepping through the simulation.
37 If there are other animation effects that go in parallel which change
38 the shape position, rotation, or visibility - they also report the
39 change to Box2D World. These updates are collected in a queue in
40 Box2DWorld and processed before stepping through the simulation.
41 To achieve convincing results these updates are performed by setting
42 the box2d body's linear velocity or angular velocity instead of
43 setting directly it's position or rotation.