All Projects → LottieFiles → glottie

LottieFiles / glottie

Licence: MIT license
OpenGL/WebGL based Lottie animation player

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to glottie

BESTV
Android TV App powered by TMDb. It is a easy way to find the best TV content, the top movies, series... all of that in your TV.
Stars: ✭ 49 (-18.33%)
Mutual labels:  lottie
rtlamr2mqtt
Docker container to send rtlamr readings to a mqtt broker
Stars: ✭ 86 (+43.33%)
Mutual labels:  sdl
conan-sdl2
[OBSOLETE] The recipe is now in https://github.com/bincrafters/community
Stars: ✭ 13 (-78.33%)
Mutual labels:  sdl
m2lang
The LLVM-based Modula-2 compiler
Stars: ✭ 29 (-51.67%)
Mutual labels:  llvm
LLVM-Metadata-Visualizer
LLVM Metadata Visualizer
Stars: ✭ 20 (-66.67%)
Mutual labels:  llvm
BonEngineSharp
A simple and fun SDL-based game engine in C#.
Stars: ✭ 16 (-73.33%)
Mutual labels:  sdl
grafx2
Mirror of GrafX2. Official repo is on gitlab.
Stars: ✭ 108 (+80%)
Mutual labels:  sdl
lsif-clang
Language Server Indexing Format (LSIF) generator for C, C++ and Objective C
Stars: ✭ 28 (-53.33%)
Mutual labels:  llvm
lottie-to-svg
Convert a lottie animation to an SVG file
Stars: ✭ 58 (-3.33%)
Mutual labels:  lottie
jitmap
LLVM-jitted bitmaps
Stars: ✭ 25 (-58.33%)
Mutual labels:  llvm
jingle
🔔 Jingle is a dynamically-typed, multi-paradigm programming language designed for humans and machines.
Stars: ✭ 34 (-43.33%)
Mutual labels:  llvm
TinyCompiler
c compiler based on flex(lex), bison(yacc) and LLVM, supports LLVM IR and obj code generation. 基于flex,bison以及LLVM,使用c++11实现的类C语法编译器, 支持生成中间代码及可执行文件.
Stars: ✭ 162 (+170%)
Mutual labels:  llvm
chimera
🐍 A CLI tool for generating Boost.Python/pybind11 bindings from C/C++
Stars: ✭ 12 (-80%)
Mutual labels:  llvm
player-ffmpeg
Up to date tutorial of ffmpeg
Stars: ✭ 17 (-71.67%)
Mutual labels:  sdl
stack-guard
A toy implementation of 'Stack Guard' on top of the LLVM compiler toolchain
Stars: ✭ 21 (-65%)
Mutual labels:  llvm
lldbg
A lightweight native GUI for LLDB.
Stars: ✭ 83 (+38.33%)
Mutual labels:  llvm
faur
⚒️✨ My personal C games framework. 2D graphics, sound, inputs, states, ECS, and misc utils for data, files, math, memory, strings, time, and more. Builds for Linux, Windows, Web, and embedded devices.
Stars: ✭ 55 (-8.33%)
Mutual labels:  sdl
dmjit
.dmJIT is a Rust-based JIT compiler using modified auxtools, dmasm and Inkwell LLVM wrapper for boosting Byond DM performance without any hassle! (formerly known as dm-jitaux)
Stars: ✭ 18 (-70%)
Mutual labels:  llvm
zero-graphics
Application framework based on OpenGL ES 2.0. Runs on desktop machines, Android phones and the web
Stars: ✭ 72 (+20%)
Mutual labels:  sdl
clam
Static Analyzer for LLVM bitcode based on Abstract Interpretation
Stars: ✭ 180 (+200%)
Mutual labels:  llvm

Glottie

Glottie is an OpenGL player for lottie animations. It is a C++ software that has been designed from ground-up for lightness and portability. Its scene graph builder, geometry generator and animation sequencer have been designed strictly for the scope of lottie, making it the leanest lottie player.

Current state of project

Glottie is currently still under development and does not support all the features of the lottie format, as has been documented at https://github.com/airbnb/lottie-web/tree/master/docs/json.

This player can play lotties, but with the following limitations:

  • Borders are currently not supported.
  • Tweening of basic shapes is not supported.
  • Transformations of a parent layer or group (it) are not inherited.
  • Shape items currently unsupported are gFill, gStroke, merge, repeater, stroke and trim.
  • The only effects currently supported are color and fill.
  • No external sources are currently supported.

Contributing

Learn how you can contribute to this project.

Compiling Glottie

From a single codebase, Glottie can be compiled to:

  • WASM (using Emscripten)
  • Windows
  • Linux
  • MacOS

WASM

Currently Glottie has a configuration to compile only with Emscripten. The script to compile for WASM is wasm_build.

The only prerequisite for running the wasm_build script is a working Emscripten installation.

Windows

Compilation to Windows has been set up to use CMake. A preconfigured CMakeLists.txt is included in the Glottie codebase, which has been configured by default to compile for Windows 10.

The CMake configuration uses winclude as the include directory.

Glottie is compiled to Windows using Google ANGLE, and therefore uses ANGLE's EGL and GLES - with the compiler yielding a native DirectX player. The only other prerequisite library is SDL2.

Linux

Compilation to Linux is facilitated by the Bash script linux_build. The linux_build script uses include as the include directory.

MacOS

Compilation to MacOS is accomplished by running the script macos_build. The macos_build script uses include as the include directory.

Testing Glottie

For all platforms other than WASM, Glottie presently reads a JSON file from stdin. Hence, to run Glottie, simply pipe in a JSON file.

Linux and MacOS

cat <JSONfile> | glottie

Windows

type <JSONfile> | <CMAKE_INSTALL_PREFIX>/glottie.exe

WASM

The index.html file in examples/wasm is a base template for loading the WASM player.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].