PortableGL: An implementation of OpenGL 3.x-ish in clean C

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • PortableGL

    An implementation of OpenGL 3.x-ish in clean C

  • Not entirely related to the subject of OpenGL, but I really like how the author has decided to lay out this project. It's pretty hard to beat the convenience of a single header (or single header/single source) distribution for C libraries, but library development gets progressively harder as the project gets bigger as more code is added to the (usually hard to navigate) header file. Here, the author does their development with multiple files as one normally would, but when a new version is released they run the generate_gl_h[1] script that concatenates everything into a .h file for distribution. Simple yet flexible! This is also how SQLite[2] distributes its builds. It's a pattern that I'm using myself in some unreleased projects.

    [1] https://github.com/rswinkle/PortableGL/blob/master/src/gener...

  • learn-wgpu

    Guide for using gfx-rs's wgpu library.

  • > Has anyone built a library on top of Vulkan, targeted roughly around the abstraction level of OpenGL, but with a better design?

    WebGPU more or less fills this gap. It's built on top Vulkan/Metal/DirectX12 primarily, and targeted as a WebGL2 replacement, but there's also major interest (and right now, better support) around using it natively for games and other programs. Thereare bindings for Rust, C++, and Javascript (either through the browser, or using deno for native).

    Here's an excellent tutorial that uses Rust, although the API is more or less identical across langiages https://sotrh.github.io/learn-wgpu/.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • tinygl

    Discontinued The penultimate portable graphics library

  • tinygl

    TinyGL : a Small, Free and Fast Subset of OpenGL* (by ska80)

  • cgltf

    :diamond_shape_with_a_dot_inside: Single-file glTF 2.0 loader and writer written in C99

  • I recently discovered this pattern in cgltf (https://github.com/jkuhlmann/cgltf), and I agree, it makes deployment so much nicer.

  • 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.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts