summaryrefslogtreecommitdiff
path: root/slideshow
AgeCommit message (Collapse)AuthorFilesLines
2016-01-07OpenGL transitions: squashed 5 commits into this oneEmmanuel Gil Peyrot9-111/+324
vcl: Ignore i965’s shader compiler debug (cherry picked from commit 928fe134ff6ea85f732b36a1ab11336f1d829531) slideshow: Fix a few issues in the Glitter transition Remove an unused variable, add comments, reduce the time a tile stays black, and don’t rely on implicit casts of integers into floats. (cherry picked from commit 22480b20130d10f4691cdf0a658040be7f36e47b) slideshow: Improve the Ripple transition to match PowerPoint better (cherry picked from commit 1d411cad5a7d78ead8cffb5da522f1e0fba31187) slideshow: Improve the Vortex transition to match PowerPoint better (cherry picked from commit d886fef25c5978dd4b07fa0e3ce2402874a6c29a) slideshow: Define inverse() to bring back the GLSL version to 1.20 (cherry picked from commit a301da7cb6c562cd21983d9b3b34dc01235a82a5) Change-Id: Ifd33ae982b762af3ea8d88b2b2de259aabeebc9a Reviewed-on: https://gerrit.libreoffice.org/21116 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2015-12-12slideshow: windows build fixesTomaž Vajngerl2-5/+5
Change-Id: I9032af7583f0cf97664d2f84d5aead0cb1547c1a (cherry picked from commit 3b397f8a41ccc810ce5048d80b1e3dab827cb093)
2015-12-12slideshow: Improve the performances of the Glitter transitionEmmanuel Gil Peyrot4-23/+205
Change-Id: Iaf482b357577ff8a5511607844a69c90ea28d29f (cherry picked from commit d9116f2235e1a79c86446fc67231684edac49d82)
2015-12-12slideshow: Improve the performances of the Honeycomb transitionEmmanuel Gil Peyrot5-51/+297
Change-Id: Iacddc7b84bf0be8bb112cba88cc7fd36f72e7ca0 (cherry picked from commit c0b8c035db9afd6271e0382c4f10ad44d3aa0dbb)
2015-12-12slideshow: Don’t upload matrices to inexistent uniformsEmmanuel Gil Peyrot1-8/+16
Change-Id: I1572e101be0f5d9267dd48e96212689d80d1d023 (cherry picked from commit c5228bd0e430c3e45383939cdbd3e6dc7ee9dca6)
2015-12-12slideshow: Use GL_CLAMP_TO_BORDER for texture wrapEmmanuel Gil Peyrot1-2/+2
No transition makes use of repeat, and it could lead to some artifacts when writing transitions. Change-Id: Icf6f4f0eb74c28d8c75991e717b6b4ffe9df5060 (cherry picked from commit b4383be80b0f24ebee670eec558d0963404d40d4)
2015-12-12opengl: Add Geometry Shader support to OpenGLHelperEmmanuel Gil Peyrot1-3/+5
This is the ground work for some later transitions in slideshow. Change-Id: Ib200cf7fabd579256a5255b0fb5d8c4accf7d24b (cherry picked from commit facfbeb5cbff191da956827bc37df7bc74ed0b81)
2015-12-12slideshow: Remove extraneous checks for the program object.Emmanuel Gil Peyrot1-87/+68
Change-Id: Ice61bfbd75aafd4197584c34ef7fbed80c20c184 (cherry picked from commit 129b8b85c945091665ad3ae1c4fa3b6d9a157d25)
2015-12-12slideshow: Don’t crash when a transition fails to initialize.Emmanuel Gil Peyrot3-22/+27
Instead replace it with no transition at all. Change-Id: If7085e2ecd79eda80097f96bebbb2f9d11161c22 (cherry picked from commit 9e991f43e57d7a74fa2db10a46021cbe2218ac5a)
2015-12-12slideshow: Only upload vertex data on prepareEmmanuel Gil Peyrot2-35/+87
Change-Id: If87f441607adf2ed0aa31023352774e7372b7edb (cherry picked from commit 463739f44e75798dbdb1239c7374ed5254a9e9d4)
2015-12-12slideshow: Fix what was remaining to be able to use a core contextEmmanuel Gil Peyrot3-10/+15
Change-Id: Ifb22c75c77d6bb5d3f144a1ed92bbcdf8d1112fd (cherry picked from commit c831e4851f35ddef5ef45062ba291d07dda4b1b4)
2015-12-12slideshow: Fix lighting in the Vortex transitionEmmanuel Gil Peyrot2-8/+36
Change-Id: I870ef7885fe569c89bde63a70ef038c4133ffbfd (cherry picked from commit 859e64aa730fa380ecaab92527e2cfe97c299a4f)
2015-12-12slideshow: Remove the last legacy uniformsEmmanuel Gil Peyrot4-36/+49
Change-Id: If5f7368bf53dd59e66e990e4f2c57b6ee2cba44b (cherry picked from commit a74e8ab7841a67ae353c537d449d27a931ba67d8)
2015-12-12slideshow: Upload the projection and modelview matrices as uniformsEmmanuel Gil Peyrot5-41/+51
Change-Id: I9d6c3ad0d2cc2f691afb2c8622471286f8a5e1c7 (cherry picked from commit 7d1c123a55d222868e27673685c25d62b1e96cd5)
2015-12-12slideshow: upload the transform matrices as uniformsEmmanuel Gil Peyrot5-41/+55
Change-Id: I2380fc7f8462514e6c032b18b44df51fbaaccb9f (cherry picked from commit 566eca14481ea70c83aef30824da911ccf834b41)
2015-12-12slideshow: Remove legacy lighting codeEmmanuel Gil Peyrot1-8/+0
Change-Id: Ib799244c6c3dd8d6fd21adc28e68690287caebd0 (cherry picked from commit 4fcebe9f8a69f40bb8629da69df5974851515d2e)
2015-12-12slideshow: Remove wrong and unused uniform uploadEmmanuel Gil Peyrot1-11/+1
Change-Id: I13c91af15caad888b4b56dbf92b63fdb0a97b47d (cherry picked from commit f9a0564fb900764485f5e44c9b01a467022b792f)
2015-12-03tdf#96083 slide transitions wrong with appearing shapesArmin Le Grand3-31/+79
When using appearing animations on shapes, some of the slide transitions incorrectly don't show these shapes. Same for disappearing shapes - both states are wrong during slide transition time. Fix slide bitmap generator to take final slide states into account. Change-Id: Iea0e576009a109c7f44a7a6498b0ee5b2c4791c5 Reviewed-on: https://gerrit.libreoffice.org/20199 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> (cherry picked from commit 57387eb30d07f15b1b2a798e0e4dcb0f4543945c) Reviewed-on: https://gerrit.libreoffice.org/20375 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2015-11-24fix build: "warning C4305: truncation from 'double' to 'float'"Thorsten Behrens1-1/+1
Change-Id: Ied01ccf789877c15080797de3723588e09fa6c7c
2015-11-24fix build "error C2065: ´M_PI´ : undeclared identifier"Thorsten Behrens1-0/+2
Change-Id: I0ba164cdc1c473184b953bffd7d264d1ec8733b6
2015-11-23slideshow: Fix rotations when the slide and the screen have a different ratioEmmanuel Gil Peyrot3-25/+39
Change-Id: Ia6dcc352531a6bf067f3e87086cb275b00f81c97
2015-11-23slideshow: Add back lighting in the SimpleTransition shadersEmmanuel Gil Peyrot4-3/+17
Change-Id: Iec854a8369a7a9f845f261233e46aea8097db109
2015-11-23slideshow: Fix the baseline version, we now require OpenGL 2.1Emmanuel Gil Peyrot2-5/+3
With ReflectionTransition requiring 3.0 instead. Change-Id: I9497dab91017d1d81a6a5a369524849ce5774694
2015-11-23slideshow: Make the Iris class private to the TransitionImpl translation unitEmmanuel Gil Peyrot2-17/+16
Change-Id: I9bf701a7f19d0f778b8fec7a39b762cc89b061b7
2015-11-23slideshow: Merge ShaderTransition into OGLTransitionImplEmmanuel Gil Peyrot2-128/+81
Change-Id: Ia585a5064362c261c137d8c4abefcfda7cb7bdd7
2015-11-23slideshow: Move Operation to its own translation unitEmmanuel Gil Peyrot5-409/+484
Change-Id: Ie0be68055152347e82da66cb48cf76c54b7966c0
2015-11-23loplugin:unusedfields in slideshow/Noel Grandin1-9/+0
Change-Id: I509dd0bdda284abb2b8abdb809bf1dec8b9632ce
2015-11-22loplugin:staticmethodsNoel Grandin1-2/+1
Change-Id: I57ab559112201269ce389bb6eff737168cec1e78 Reviewed-on: https://gerrit.libreoffice.org/20119 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-20slideshow: Reimplement reflections in shaders, and port Rochade and TurnAroundEmmanuel Gil Peyrot5-87/+171
This removes the hack reflections were previously, where a black quad was drawn on top of a mirror version of the first primitive only. Change-Id: I8c0863ab30e85d0130a8d7e838f3514e9be93788
2015-11-20slideshow: Reimplement both Fade transitions in shadersEmmanuel Gil Peyrot4-62/+108
Change-Id: I94187b9316a206578bb738411053afe070703f09
2015-11-20slideshow: Make SimpleTransition inherit from ShaderTransitionEmmanuel Gil Peyrot4-117/+217
Many transitions don’t like the simplistic default shader, especially since it doesn’t handle lighting or reflections properly. Those issues are addressed in the following commits. TODO: except lighting. Change-Id: Ia99308deb87c97d9bbe1da32aac64d0437061a84
2015-11-20Seems more natural to pass a homogenous list by initializer_listStephan Bergmann2-2/+2
...than by template parameter pack (even if that requires using ServiceDecl*, as initializer_list cannot take reference types) Change-Id: Ia986201b52d8daedfe925f132ebc79bc2c0ba378
2015-11-20loplugin:sallogareasStephan Bergmann1-1/+1
Change-Id: Ib1f06cb5f925535858bc14aab6f59ad7fd2a3a8d
2015-11-19loplugin:redundantcastStephan Bergmann1-1/+1
Change-Id: I89281db92f9b75e972313a95c33473d7649a9bef
2015-11-19slideshow: Port all matrix operations from GL to glmEmmanuel Gil Peyrot3-56/+71
We are still using glPushMatrix/glMultMatrix/glPopMatrix until everything is moved to shaders, at which point we will upload it with glUniformMatrix instead. Change-Id: I1684700eb9ed5867c5a2ae2b4e8cf2f1805f4d70
2015-11-19slideshow: Batch primitive display as much as possibleEmmanuel Gil Peyrot2-59/+100
We now set the state and upload all vertices data at once, before each batch, in order to minimize GL calls during drawing. The next step will be to move to shaders, in order to use per-primitive uniforms instead of changing the global modelview matrix and issuing another draw call. Change-Id: I8c7cf29047047b9cad575cc6264485ae77d6ba10
2015-11-19slideshow: Use gl_ModelViewProjectionMatrix in vertex shadersEmmanuel Gil Peyrot2-2/+2
ftransform() is deprecated, and we shouldn’t do an extraneous multiplication to obtain the two matrices together. Change-Id: Iaa16c106b8b702468f7be643a812107f0967acdd
2015-11-19slideshow: Always enable normals, there is no case where they are emptyEmmanuel Gil Peyrot1-8/+3
Change-Id: Ia45a3ec98a1f548b5a976f485d4165bb3d1ff2e4
2015-11-19slideshow: Don’t create the permTexture if the shaders don’t use itEmmanuel Gil Peyrot1-8/+8
Change-Id: I0aefe2130a85303213e247676d45546d9859cf62
2015-11-19slideshow: Rename getVertices into getVertex, to match its only usageEmmanuel Gil Peyrot2-6/+6
2015-11-18slideshow: improve "honeycomb" transitionTomaž Vajngerl1-47/+60
Change-Id: I8687127cd9ccf6a6ddd87d934f7462a69a047053
2015-11-18remove unused typedefs and inline use-once typedefsNoel Grandin1-1/+0
and improve the script a little Change-Id: I2792ea4dd5df3a50736fbe209225c3f16fb86b84 Reviewed-on: https://gerrit.libreoffice.org/20033 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-17loplugin:unnecessaryvirtualNoel Grandin4-48/+0
update the plugin with lessons learned from the mergeclasses plugin and re-run it Change-Id: I9d622eb3d05fceaf8fa764c533c8fa5dfb4c7711 Reviewed-on: https://gerrit.libreoffice.org/20015 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-16slideshow: initial work on "honeycomb" transition (incomplete)Tomaž Vajngerl3-2/+64
Change-Id: I4a46f7f1ec289f96f9fd1b849317b7548ac29383
2015-11-15Fast PCH generator and optimized PCH filesAshod Nakashian1-163/+220
Ported update_pch.sh to Python with improved performance and features. The new script is invoked from the same update_pch.sh which calls it for each library in parallel, although it can be invoked directly. The ported script (update_pch) updates all PCH files in ~15 seconds where the old script took ~4500 seconds. In addition, the new script supports 3-tiered headers (system, module, and local) and is very flexible to support other improvement. It has a per-library optimal configuration settings that can be updated using another new scripts (update_pch_autotune.sh) which finds optimal per-PCH settings. PCH files have been generated using the new scripts which builds significantly faster (2-3x, depending on module and configuration) and the intermediate binaries are noticably smaller (by several GBs). The new script stamps each generated PCH file with the command that generated it to make it trivial for users to update them, and also adds the command to invoke another script (update_pch_bisect) that helps find missing headers or conflicting headers that may break the build after updating the PCH. Finally update_pch has built-in unit-tests for makefile parsing and other core functionality. Change-Id: Ib933b50e50374d7e2e7e3e95ba8799b0cc8a27fa Reviewed-on: https://gerrit.libreoffice.org/19965 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2015-11-13slideshow: improve rotation timing in glitter transitionTomaž Vajngerl1-20/+26
Change-Id: I8b0475a6dcde53202a489b9d3265add9fe068cbc
2015-11-13slideshow: simplify NByMTileFlip transitionTomaž Vajngerl1-23/+15
Change-Id: I0ec07eb25d538d82d740a33f05b0a4f002adf36a
2015-11-13slideshow: add "glitter" slide transitionTomaž Vajngerl3-5/+67
Change-Id: Ie89b64c4399cd0092eee579660c9fe85f8ca8e73
2015-11-12Bin mesa_headers completelyTor Lillqvist2-2/+0
We don't need them in a MSVC or OS X compilation either. Change-Id: I00181fe0a047df09bbdfcce34c07eb2ebc45a2da
2015-11-12Avoid mesa_headers on X11, also link with -lGL only where necesssaryTor Lillqvist2-2/+2
The GLEW headers are enough, and what we actually use in these places. In addition to handling GL extension things in its dynamic fashion, GLEW headers also have declarations for standard, non-extension, OpenGL API, including xgl and wgl ones. Most likely we don't need mesa_headers on Windows or OS X either, and can drop them completely. Change-Id: Ic0d8d6238c862f8fe4a74e99e95344dcbf540980