On Wednesday, 5 July 2023 at 22:27:46 UTC, Andrew wrote:
So, I've gotten the itch to have a go at game development in D,
after doing a bit of it in Java last year. I've previously used
LWJGL, which is a java wrapper for OpenGL, OpenAL, GLFW, and
some other useful libs.
The problem is, apparently OpenGL is deprecated for apple
devices, so I don't really want to use that unless there are no
decent alternatives.
So far, the most promising I've seen is
[bindbc-bgfx](https://code.dlang.org/packages/bindbc-bgfx), but
it's been a pain to set up due to having to build the bgfx
codebase, which requires a specific version of glibc that my
distro (Linux Mint) doesn't offer yet.
Are there any other recommendations for cross-platform
rendering libraries? Of course I could use a pre-made game
engine like Unity or Godot, but for me, most of the fun is in
making the engine.
Depends what you really want to do
If you need something that provides you an API to render things
directly without doing raw GPU commands, then RayLib is
excellent, you can still build your engine around it, it act like
a framework a la libGDX/XNA/MonoGame
- https://github.com/schveiguy/raylib-d
If you want to create your own engine from scratch, then Vulkan
(works on mobile/linux/windows and macOS via moltenvk)
Or you can use WebGPU, despite its name it's crossplatform,
targets Web via wasm (with LDC, requires some extra work tho),
Windows, Linux, macOS, mobiles
- https://github.com/gecko0307/bindbc-wgpu