AminoGfx implementation for OpenGL 2 / OpenGL ES 2. Node.js based animation framework supporting images, texts, primitives, 3D transformations and realtime animations. Hardware accelerated video support on Raspberry Pi.
- macOS
- Raspberry Pi
In order to build the native components a couple of libraries and tools are needed.
- Node.js 4.x to 14.x
- There is a bug in Node.js v6.9.1 (see nodejs/node#9288; fixed in Node.js > 6.10).
- Freetype 2.7
- libpng
- libjpeg
- libswscale
- GLFW 3.3
- FFMPEG
MacPorts setup:
sudo port install glfw freetype ffmpeg
Homebrew setup:
brew install pkg-config
brew tap homebrew/versions
brew install glfw3
brew install freetype
- libegl1-mesa-dev
- libdrm-dev
- libgbm-dev
- libfreetype6-dev
- libjpeg-dev
- libav
- libswscale-dev
- libavcodec-dev
- Raspbian (other Linux variants should work too)
Setup:
sudo rpi-update
sudo apt-get install libegl1-mesa-dev libdrm-dev libgbm-dev libfreetype6-dev libjpeg-dev libavformat-dev libswscale-dev libavcodec-dev
npm install
During development you'll want to rebuild the source constantly:
npm install --build-from-source
Or use:
./rebuild.sh
node demos/circle.js
Example of all supported features are in the demos subfolder.
- node: ../src/rpi.cpp:209: void AminoGfxRPi::initEGL(): Assertion `success >= 0' failed.
- select a screen resolution with raspi-config