SaaSHub helps you find the best software and product alternatives Learn more →
Top 14 C++ graphics-library Projects
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
FluidX3D
The fastest and most memory efficient lattice Boltzmann CFD software, running on all GPUs via OpenCL.
-
FabGL
ESP32 Display Controller (VGA, PAL/NTSC Color Composite, SSD1306, ST7789, ILI9341), PS/2 Mouse and Keyboard Controller, Graphics Library, Sound Engine, Game Engine and ANSI/VT Terminal
-
MethaneKit
🎲 Modern 3D graphics made simple with C++17 cross-platform framework and rendering abstraction API on top of DirectX 12, Metal & Vulkan
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
Skity
A light weight 2D Vector Graphic renderer library writing in c++ for OpenGL3.3+ / OpenGLES3.0+ / Vulkan 1.1+/ WebGL2 with WASM
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: Bombed an interview and trying to figure out how to pivot. Any advice on on increasing code literacy and filling in knowledge gaps from EE? | /r/embedded | 2023-12-06
cmake_minimum_required(VERSION 3.5) project(knn_cpp CXX) # Set up C++ version and properties include(CheckIncludeFileCXX) check_include_file_cxx(any HAS_ANY) check_include_file_cxx(string_view HAS_STRING_VIEW) check_include_file_cxx(coroutine HAS_COROUTINE) set(CMAKE_CXX_STANDARD 20) set(CMAKE_BUILD_TYPE Debug) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) # Copy data file to build directory file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/iris.data DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) # Download library usinng FetchContent include(FetchContent) FetchContent_Declare(matplotplusplus GIT_REPOSITORY https://github.com/alandefreitas/matplotplusplus GIT_TAG origin/master) FetchContent_GetProperties(matplotplusplus) if(NOT matplotplusplus_POPULATED) FetchContent_Populate(matplotplusplus) add_subdirectory(${matplotplusplus_SOURCE_DIR} ${matplotplusplus_BINARY_DIR} EXCLUDE_FROM_ALL) endif() FetchContent_Declare( fmt GIT_REPOSITORY https://github.com/fmtlib/fmt.git GIT_TAG 7.1.3 # Adjust the version as needed ) FetchContent_MakeAvailable(fmt) # Add executable and link project libraries and folders add_executable(${PROJECT_NAME} main.cc) target_link_libraries(${PROJECT_NAME} PUBLIC matplot fmt::fmt) aux_source_directory(lib LIB_SRC) target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) target_sources(${PROJECT_NAME} PRIVATE ${LIB_SRC}) add_subdirectory(tests)
Project mention: Bombed an interview and trying to figure out how to pivot. Any advice on on increasing code literacy and filling in knowledge gaps from EE? | /r/embedded | 2023-12-06
I have a small TTF implementation that's in the neighborhood of that size and is open source. It's part of my canvas_ity single-header library [0] that's around 2300 LOC / 36 KB object size and implements a C++ version of most of the 2D HTML5 canvas spec [1].
The core implementation of the TTF parsing and drawing is in L1526-L1846 with another small bit at L3205-L3274 of src/canvas_ity.hpp.
It's something of a toy implementation that only supports western left-to-right text, and doesn't do any hinting at all, nor kerning, nor shaping. But it's enough to draw a basic "Hello world!" using any typical TTF file.
The test suite in test/test.cpp L84-304 embeds a few custom Base64-encoded TTF files. They're small and only have a few glyphs but they do exercise a number of interesting edge cases in the OpenType TTF spec [2]. Have a look at the HTML5 port of the test suite at test/test.html in different browsers to see how their canvas implementations render those fonts.
[0] https://github.com/a-e-k/canvas_ity
[1] https://www.w3.org/TR/2015/REC-2dcontext-20151119/
[2] https://standards.iso.org/ittf/PubliclyAvailableStandards/c0...
Project mention: Tephra: A high-level graphics and compute library based on Vulkan | /r/vulkan | 2023-07-24
C++ graphics-library related posts
-
Bombed an interview and trying to figure out how to pivot. Any advice on on increasing code literacy and filling in knowledge gaps from EE?
-
Anyone want to help create a Free and Open Source AlphaSmart Neo?
-
Learning programming on TTGO VGA32 (based on ESP32)
-
Looking for variable to store strings to display a message on LEDS
-
Does anyone have feedback on working with GuiLite?
-
How to export Maya files to WebGL.
-
I Dread Writing Embedded GUIs
-
A note from our sponsor - SaaSHub
www.saashub.com | 10 May 2024
Index
What are some of the best open-source graphics-library projects in C++? This list will help you:
Project | Stars | |
---|---|---|
1 | GuiLite | 7,182 |
2 | matplotplusplus | 3,949 |
3 | FluidX3D | 3,210 |
4 | FabGL | 1,376 |
5 | MethaneKit | 761 |
6 | GuiLiteSamples | 615 |
7 | debug-draw | 482 |
8 | canvas_ity | 319 |
9 | Skity | 191 |
10 | ascii-graphics | 36 |
11 | tortoise | 23 |
12 | crosscore_dev | 13 |
13 | Tephra | 10 |
14 | Memake | 2 |
Sponsored