Vulkan-Docs VS sokol

Compare Vulkan-Docs vs sokol and see what are their differences.

Vulkan-Docs

The Vulkan API Specification and related tools (by KhronosGroup)

sokol

minimal cross-platform standalone C headers (by floooh)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
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.
www.influxdata.com
featured
Vulkan-Docs sokol
161 38
2,669 6,355
0.5% -
8.4 9.7
9 days ago 5 days ago
JavaScript C
GNU General Public License v3.0 or later zlib License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Vulkan-Docs

Posts with mentions or reviews of Vulkan-Docs. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-17.
  • GPU synchronization in Godot 4.3 is getting a major upgrade
    2 projects | news.ycombinator.com | 17 Feb 2024
    Pipelines (or in general terms PSOs) are the most problematic aspect of Vulkan / DX12 - much more than synchronization! Large parts of the gamedev industry seems to recognize all the performance issues with pipelines and therefore companies are experimenting with newer models like the VK_EXT_shader_object extension ("Vulkan without Pipelines": https://www.khronos.org/blog/you-can-use-vulkan-without-pipe...).

    I've written a detailed comment about this before here (https://news.ycombinator.com/item?id=37843946#37845431) but for a much more comprehensive explanation by an engineer from Nintendo read the initial proposal for the VK_EXT_shader_object extension: https://github.com/KhronosGroup/Vulkan-Docs/blob/main/propos...).

    There's also Casey Muratori's mail to the Vulkan advisory on 2015 that basically predicts this whole clusterfuck would happen: https://github.com/cmuratori/misc/blob/main/vulkan_dynamic_s...

  • Vulkan 1.3.273 spec update
    1 project | /r/vulkan | 8 Dec 2023
  • [Roadmap Feedback] Function Pointers with some limitations
    1 project | /r/vulkan | 7 Dec 2023
  • New Vulkan Documentation Website
    10 projects | news.ycombinator.com | 11 Oct 2023
    Apple -> MoltenVK is an emulation layer and doesn't give you as much control as using Metal directly.

    Nintendo and Sony prefer their own APIs, NVN and LibGNM, and AIUI Vulkan is a second-class API on those platforms which does not offer as much power, it is widely understood studios use NVN and LibGNM to get access to the real hardware on those platforms.

    Windows/AMD/NVidia/Intel -> HW manufacturers tend to prototype and release new features with D3D first and then 'backport' them to Vulkan after a while. DirectX 12 for example had mesh shaders for over 2 years before Vulkan got a vendor neutral extension for them[0]

    Android and Linux are the only platform where Vulkan is a first-class citizen.

    You could maybe argue Nvidia treats Vulkan as a first-class citizen because they tend to have vendor-specific Vulkan extensions for the latest features available before anyone else. But otherwise, no, Vulkan is not a first-class API anywhere except Linux and Android.

    Graphics API wars are alive and well.

    [0] https://github.com/KhronosGroup/Vulkan-Docs/issues/1423

  • Vulkan 1.3.267 spec update
    1 project | /r/vulkan | 7 Oct 2023
  • Vulkan 1.3.266 spec update
    1 project | /r/vulkan | 1 Oct 2023
  • Vulkan 1.3.262 spec update
    1 project | /r/vulkan | 27 Aug 2023
  • Vulkan 1.3.260 spec update
    1 project | /r/vulkan | 30 Jul 2023
  • Vulkan 1.3.257 spec update
    1 project | /r/vulkan | 7 Jul 2023
  • Vulkan 1.3.256 spec update
    1 project | /r/vulkan | 30 Jun 2023

sokol

Posts with mentions or reviews of sokol. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-06.
  • STB: Single-file public domain libraries for C/C++
    4 projects | news.ycombinator.com | 6 Jan 2024
  • Container2wasm: Convert Containers to WASM Blobs
    16 projects | news.ycombinator.com | 3 Jan 2024
    I'm using Dear ImGui for my cross-platform code (which includes running in browsers):

    - https://floooh.github.io/visual6502remix/

    - https://floooh.github.io/tiny8bit/c64-ui.html

    - (start these samples by clicking on the little "UI" icon) https://floooh.github.io/sokol-html5/

    Platform abstraction is handled through the sokol headers: https://github.com/floooh/sokol

  • New Vulkan Documentation Website
    10 projects | news.ycombinator.com | 11 Oct 2023
    I wonder if using your library (https://github.com/floooh/sokol) instead of OpenGL will alleviate some of these issues for newcomers! There's already a sokol port of the learnopengl.com code (https://github.com/GeertArien/learnopengl-examples), so it shouldn't be too hard to match between the tutorial articles and these.
  • Meta Releases Intermediate Graphics Library
    12 projects | news.ycombinator.com | 7 Jul 2023
    If you're looking for something like this, Sokol is a much simpler alternative:

    https://github.com/floooh/sokol

    It doesn't support vulkan though, but if that's important to you you're probably much better off just using vulkan directly since it's supported on all the major platforms.

  • Why glibc 2.34 removed libpthread
    3 projects | news.ycombinator.com | 2 Jul 2023
    All I can do is give you a couple of Github ticket links where users of my libraries stumbled over the issue (and with different symptoms):

    - https://github.com/floooh/sokol/issues/376

    - https://github.com/floooh/sokol/issues/404

    - https://github.com/floooh/cimgui-sokol-starterkit/issues/6

    We then added a dummy call to a no-op pthread function, so that users can better figure out that they need to use -pthread because now they get a linker error instead of a runtime crash or hang. This has since reduced the 'support overhead' quite a bit:

    - https://github.com/floooh/sokol/pull/456

  • File for Divorce from LLVM
    9 projects | news.ycombinator.com | 29 Jun 2023
    My stuff for instance:

    https://github.com/floooh/sokol

    ...inspired by:

    https://github.com/nothings/stb

    But it's not so much about the build system, but requiring a separate C/C++ compiler toolchain (Rust needs this, Zig currently does not - unless the proposal is implemented).

  • Minimal cross-platform standalone C headers
    1 project | news.ycombinator.com | 12 Jun 2023
  • How can i play .wav file with C ?
    1 project | /r/C_Programming | 1 Jun 2023
    I have never personally used it but I'm pretty sure sokol has an audio library that might be what you are after.
  • Website with Godot?
    3 projects | /r/godot | 11 May 2023
    And I asked floooh for similar thoughts on making a website with sokol here: https://github.com/floooh/sokol/issues/825
  • I want to talk about WebGPU
    15 projects | news.ycombinator.com | 3 May 2023
    It's not Rust and TS, instead C and JS, but Emscripten has a very nice way of integrating C/C++ and JS (you can just embed snippets of Javascript inside C/C++ source files), e.g. starting at this line, there's a couple of embedded Javascript functions which can be called like C functions directly from the "C side":

    https://github.com/floooh/sokol/blob/4535a3b4be59eb912e77e04...

What are some alternatives?

When comparing Vulkan-Docs and sokol you can also consider the following projects:

wgsl-cheat-sheet - Cheat sheet for WGSL syntax for developers coming from GLSL.

bgfx - Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.

vkd3d-proton - Fork of VKD3D. Development branches for Proton's Direct3D 12 implementation.

raylib - A simple and easy-to-use library to enjoy videogames programming

webgpu-wgsl-hello-triangle - An example of how to render a triangle with WebGPU using WebGPU Shading Language - the "Hello world!" of computer graphics.

tinyrenderer - A brief computer graphics / rendering course

Vulkan-Headers - Vulkan header files and API registry

LearnOpenGL - Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com

WASI - WebAssembly System Interface

v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io

Vulkan - Examples and demos for the new Vulkan API

nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.