Commit graph

3837 commits

Author SHA1 Message Date
Leon Styhre 4745a8edf3 Added a missing Emscripten compiler flag to CMakeLists.txt 2022-01-13 21:27:33 +01:00
Leon Styhre 69d218e58a Added CMake configuration for Emscripten WebAssembly builds. 2022-01-13 20:32:30 +01:00
Leon Styhre 73beeeaeaf Fixed two Emscripten compiler warnings. 2022-01-13 20:07:04 +01:00
Leon Styhre 8596aca68c Added an OpenGL ES 2.0 renderer. 2022-01-13 19:39:49 +01:00
Leon Styhre 90fa63f91c Removed support for supplying a separate format than internalFormat when creating OpenGL textures. 2022-01-12 22:25:41 +01:00
Leon Styhre 750ee07351 Improved the structure of main.cpp
Also partially added support for Emscripten.
2022-01-12 21:38:37 +01:00
Leon Styhre d85c966e49 Added logging of the display refresh rate on startup. 2022-01-12 21:26:43 +01:00
Leon Styhre a233b96c2a Removed some unnecessary typedefs and replaced the remaining ones with the more modern 'using' keyword.
Also harmonized the names of some user defined types and made some other minor cleanup.
2022-01-11 21:57:00 +01:00
Leon Styhre c477c12dde (Windows) Fixed some build script issues. 2022-01-11 17:33:34 +01:00
Leon Styhre d45a67eeab (Windows) Fixed a few compiler errors and warnings. 2022-01-10 19:53:23 +01:00
Leon Styhre b4e08ba92b Renamed Platform to utils/PlatformUtil 2022-01-10 18:56:04 +01:00
Leon Styhre 2d149c5161 Moved all Platform functions to the utility namespace. 2022-01-10 18:43:17 +01:00
Leon Styhre 5a085c585e Fixed a frame caching issue in LottieComponent. 2022-01-10 17:42:01 +01:00
Leon Styhre c3dbdd431c Fixed some potential segfaults on emergency shutdown. 2022-01-10 17:41:08 +01:00
Leon Styhre f80658696c Removed some unnecessary time measurement constants. 2022-01-09 23:50:08 +01:00
Leon Styhre aeb0292a3e Changed a variable to inline static in BadgeComponent. 2022-01-09 23:41:56 +01:00
Leon Styhre 7c640c24bf Some minor CMake configuration cleanup, mostly for Windows. 2022-01-09 23:40:59 +01:00
Leon Styhre 167ee26fa1 Documentation update. 2022-01-09 20:40:36 +01:00
Leon Styhre 5c07e29101 Fixed an issue where the cached background would sometimes miss some GUI elements. 2022-01-09 19:50:11 +01:00
Leon Styhre f66bb91496 Decreased the background caching invalidation delay from 50 to 25 ms. 2022-01-09 19:48:29 +01:00
Leon Styhre 6ff91e89ca Disabled debug mode in LottieComponent and fixed a small bug. 2022-01-09 19:26:42 +01:00
Leon Styhre 93adea943b Removed two temporary Lottie animations from the resources directory. 2022-01-09 18:18:09 +01:00
Leon Styhre cd7cfe36ce Added play direction support to LottieComponent.
Also fixed some bugs and cleaned up the code a bit.
2022-01-09 18:17:23 +01:00
Leon Styhre e730d24da0 Added a small delay to the cached background invalidation to give components some time to render. 2022-01-09 17:56:17 +01:00
Leon Styhre a1abaa7112 Increased the default per-file maximum Lottie cache size from 100 to 150 MiB. 2022-01-09 13:45:44 +01:00
Leon Styhre b16ea29088 Added theme support and proper application integration for LottieComponent. 2022-01-09 13:43:42 +01:00
Leon Styhre 0c31124cd2 Disabled threading for rlottie as it causes performance degradations. 2022-01-09 13:32:28 +01:00
Leon Styhre d45c690586 Some CMake configuration changes for building with rlottie. 2022-01-08 16:23:23 +01:00
Leon Styhre b3421823a7 Added rudimentary frame caching support to LottieComponent. 2022-01-08 15:04:10 +01:00
Leon Styhre 3f629b6c1e Created proper program structure for LottieComponent. 2022-01-08 11:25:29 +01:00
Leon Styhre 8d648867e1 (Windows) Disabled threading support in rlottie since it was unstable when built using MinGW. 2022-01-07 22:51:14 +01:00
Leon Styhre 29eceedde0 (RPi) Added custom patch to rlottie to be able to link against it. 2022-01-07 19:45:52 +01:00
Leon Styhre 3ee4e4cb35 Added threading support and proper frame pacing to LottieComponent. 2022-01-07 19:09:07 +01:00
Leon Styhre 0c552dd8fb Added a GLSL shader to convert the color model BGRA to RGBA.
Also added support for specifying a separate format as compared to internalFormat when creating textures, although the shader should be used primarily as this is not really supported by the OpenGL standard.
2022-01-07 18:54:52 +01:00
Leon Styhre 7430a8b5f5 Merge commit '79ff784721f4467450f37310322ecff59d3f1ce9' into lottie-support 2022-01-07 18:43:06 +01:00
Leon Styhre 79ff784721 Squashed 'external/rlottie/' changes from bf3d272df..875626965
875626965 Check border of color table while generating gradient
d1636c7b4 Ignore animations with objects of unspecified type
f3eed9a33 add formal parameter void to lottie_init() and lottie_shutdown()
519bd08b0 Add lottie_init() and lottie_shutdown() c api.
447cb7dd1 replace unsigned int with uint32_t in Int()
d7cf0a5ab replace uint ushort and uchar typedefs with uint32 uint16 and uint8 -- added format script to run clang format on latest commit.
16beec845 lottiemodel: Improve opacity calculation for gradient stop
327fb7dba Reject reversed frames
625bc4c48 Finite loop in VBezier::tAtLength()
ddbc9dce7 rlottie/capi: Add missing multiply for Path
c0e16e571 Check Layer.mExtra and Transform.mExtra before dereferencing
9f78532c8 Avoid access to last element of empty mChildren vector
4e08acd8c remove RAPIDJSON_ASSERT() by placing the parser in error state
7affa78fe Fix dereferencing of null pointer in model::Layer::solidColor() getter
9d17ff8e6 Skip dash array of size one or zero
f379dfe15 add the /inc folder as an include path at build time
194b31736 Improve matte rendering performance for simple layer
7c5b40cbb CMake: fix MSVC warnings
fa44b753e fix compileing error
41f906480 On windows, stbi__fopen opens a path containing non-English characters or symbols will fail due to encoding problems, so the filename parameter is assumed to be utf-8 and converted to utf-16, and then call _wfopen_s or _wfopen
29b391b95 add lottie_configure_model_cache_size() c api
3cd00151c Fix comparison
bd4c4e1f8 MT and MTd
c593b57eb Remove link warnings on MSVC
132ca0a00 #include "fix" for rust-bindgen
c9780b46d Fix CMake build in subdirectory
1cb2021d6 Fix crash when path animation  data is empty
ad9beaec6 Added support for RoundedCornor objects.
a41bd7383 rlottie: draw line if width or height is 0
ed94baf14 resource: polish player png image.
9b4c4d2af resource: add rlottie_player image.
2d7b1fa2b Fixed build with GCC 11.
9cd9a6e95 vs2019: Add release build option
d733e953b updated AUTHORS
fc760ef92 updated AUTHORS
d92d4aaf6 wasm: Add extra functions for lottie animation to use them in rlottie viewer
09662b89d updated AUTHORS
71fbff5d5 example/win32Player: removed unnecessary files.
d25911e6c add app executables
538dfd9aa rename directory rlottiePlayer to win32Player
6fbb67d49 fix openJSONFileDialog
85856dff3 fix animation replace error
f86e97d65 fix animation bitmap size to be set dynamically
55815b2cb move function prototype to animation.h To prevent function prototype duplicate code in source.cpp.
9a71eeca9 add an example of win32 app that play rlottie animation by vs2019
619320cbb add rlottiePlayer Project
4884e0e9b Modify: Update .gitignore
3ebf0c7e3 Docs: Fix README typo
502cc3638 updated license in spec file.
e812ba9e9 Docs: Fix README typo
c98ec565d Update README.md
33295c22f Fixed README typo
073224e69 fixed readme typo
ff8ddfc49 ci: upgrade windows build chain to VS2017
10c1055a3 fixed sign extension warning
98ed2620a build: use shared_module instead of shared_library

git-subtree-dir: external/rlottie
git-subtree-split: 875626965959d8e269ca22175c8e1ad190696c43
2022-01-07 18:43:06 +01:00
Leon Styhre 886b99d071 Added some .gitignore rules for rlottie on Windows. 2022-01-07 18:37:22 +01:00
Leon Styhre d96879c57f Fixed a CPACK generator issue on Windows and macOS. 2022-01-07 18:35:47 +01:00
Leon Styhre ecc599e5cc (Windows) Some additional CMake configuration changes to make rlottie link correctly. 2022-01-07 00:38:20 +01:00
Leon Styhre 0021bee104 (Windows) Fixed two compiler warnings. 2022-01-07 00:30:31 +01:00
Leon Styhre 19147eee66 (Windows) CMake configuration changes to make rlottie build correctly. 2022-01-07 00:29:31 +01:00
Leon Styhre 5f9505f780 Added a missing CMake configuration file to build the external dependencies. 2022-01-06 23:25:22 +01:00
Leon Styhre 998830181f Added CMake configuration for the Lottie animation support. 2022-01-06 23:19:37 +01:00
Leon Styhre f56d7cc67b Added a preliminary Lottie animation component.
Also added two temporary test animations.
2022-01-06 23:15:29 +01:00
Leon Styhre 2b4126fcb3 Updated the external/.gitignore file for rlottie. 2022-01-06 23:11:56 +01:00
Leon Styhre 73411266c1 Squashed 'external/rlottie/' content from commit bf3d272df
git-subtree-dir: external/rlottie
git-subtree-split: bf3d272df3916a0c34575ac8286cb0fe672fd0d4
2022-01-06 22:59:15 +01:00
Leon Styhre deb6dced0f Merge commit '73411266c1bf07eb0b659102c3376a3739629ff7' as 'external/rlottie' 2022-01-06 22:59:15 +01:00
Leon Styhre 8644a414d8 Merge branch 'thread-safety-refactoring' 2022-01-05 10:34:42 +01:00
Leon Styhre c62a069448 Fixed an issue where the audio device was accessed after it had been closed. 2022-01-05 00:08:50 +01:00
Leon Styhre f8e201d347 Moved the CollectionSystemsManager cleanup from the destructor to a deinit function. 2022-01-04 23:14:12 +01:00