Hi All,
Anyone have a recommendation for an alternative to OpenVG? I heard it is no longer supported on RP4.
I'm looking for a library which takes over the frame buffer for 2G graphics on the RP4?
Kind regards,
--andrew

You don't.
According to GitHub those examples haven't been updated in 8+ years, so would likely fail to account for OpenVG getting stripped from Mesa in 2015.
incognitum pointed out these two incomplete implementations in an earlier topic:Gavinmc42 wrote: ↑Thu Aug 08, 2019 1:53 amhttps://www.amanithvg.com/ Is there an open source equivalent?
LGPL licensed on top of standard OpenGL: https://github.com/ileben/ShivaVG
BSD licensed on top of OpenGL ES: https://github.com/micahpearlman/MonkVG
Gavinmc42 wrote:
Looks like OpenGL and GLES so it should run on all Pi's.
Can that be used without X11?
Gavinmc42 wrote:
After seeing what can be done with shader code on Pi4 perhaps OpenVG done by shaders?
That's cool, but another language to learnNanovg uses a shader that was coded into the source code as a string that's used to render all the shapes.
rainer wrote:
Great if nanovg actually works. Has anyone tested this out on the RP4 multiple displays? Also can someone confirm they have actually got this really working on a RP4 & Buster? And even better record the runes to get it to work?
Code: Select all
#CMakeLists.txt : located in nanovg root directory
cmake_minimum_required(VERSION 3.13 FATAL_ERROR)
project("nanovg")
# add include paths
include_directories(${PROJECT_SOURCE_DIR})
# set nanovg sources
set (NANOVG_SOURCE
src/nanovg.c)
add_library (nanovg STATIC
${NANOVG_SOURCE})
target_include_directories(nanovg PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/src)
Code: Select all
#build_examples.sh : located in nanovg root directory
mkdir -p build/examples && cd build/examples
for entry in `ls ../../example/*.c`; do
entry_name=`echo "$entry" | awk -F"/" '{print substr($0, length($0)+1-length($NF))}' | rev | awk -F"." '{print substr($0,length($0)+1-length($NF))}' | rev`
#echo "$entry_name"
gcc "$entry" ../../example/demo.c ../../example/perf.c -I../../example -I../../src -L../../ -L.. -lnanovg -lm -lEGL -lGL -lglfw -o "$entry_name"
done