Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(+2)

Great news :). I can’t wait to test it all. In C, there’s raylib for 2D/3D. Have you considered using sokol_gfx or bgfx for this graphics API abstraction instead of WebGPU ?

(+1)

Raylib has definitely helped inspire me to get back into things! But AFAIK it's pretty much 'direct mode' only and primarily 2D, whereas I wanted to go for a more 3d oriented scene graph approach.

I do dig raylib's 'DrawModel' command and briefly considered using a more direct approach like that, but it can't handle multiple passes for things like transparency so the user would end up having to write their own 'scene' system anyway. Besides, as you say, there's already Raylib! It runs on a ridiculous number of languages too, mainly thanks to 3rd party support, there're probably Fortran and COBOL versions out there somewhere!

I've never heard of sokol_gfx (will do) but I did take a look at bgfx and although it's very nicely done and apparently works very well, I was after something a bit more modern, and Webgpu is (apparently) modelled on the way modern gpu's work while offering a high-ish level interface so I went with that. Also, the fact it's a google thing means they're gonna make sure it works well on as wide a range of hardware as possible. I've been following development quite closely, and the people writing it go to a huge amount of effort to make sure the stuff they're adding really will work everywhere.

 I actually think the use of 'native webgpu' drivers like dawn and gfx-rs (the rust version in firefox) could take off in a big way, as they turn behemoths like d3d12 and vulkan into a much more usable API: https://webgpu.rocks/reference/interface/gpudevice/#idl-gpudevice

(3 edits)

For Raylib, you’re right, it lets you do simple things, but not as simple as Blitz3D. The author drew a lot of inspiration from libraries like XNA/Monogame.

Using Dawn or gfx-rs/wgpu is a good choice for the long term, but there are a few drawbacks (tedious build system, no stable target for mobiles at the moment, still experimental for Android, etc.) but this will improve over time.

sokol_gfx is therefore easier to integrate and use. :)

In any case I will follow your work with enthusiasm.

EDIT: There will soon be a 3rd challenger implementing WebGPU in Zig language (mach-sysgpu). They also include an C API.