Kyjor / JulGame.jl

JulGame is a 2D game engine based on the Julia programming language with the help of SDL2.
https://docs.kyjor.io/JulGame.jl
The Unlicense
107 stars 3 forks source link

Use JuliaWGPU ecosystem for GPU support #48

Open VarLad opened 8 months ago

VarLad commented 8 months ago

It provides the most widely compatible vs powerful backend for writing GPU shaders at the moment. I'll try looking into this at some point.

Kyjor commented 8 months ago

Admittedly, I am not knowledgeable enough to even know what this could do/how it can integrate here. I would love more information about this.

VarLad commented 8 months ago

@Kyjor Sorry for the late reply. Think of WebGPU as an OpenGL replacement for writing GPU stuff. Its not as verbose as Vulkan, and is well supported by web browsers as well.

I was trying to recommend it as a replacement for OpenGL for your:

The plan for 3d will be to use OpenGL.

As a bonus, WebGPU compiles to Vulkan on Linux, Metal on MacOS, DirectX11/12 on Windows and is supported directly in the browser. You can get the best performance for all platforms with one API.

There's some effort to write good Julia bindings for WebGPU over in: https://github.com/JuliaWGPU/ You can read more about WebGPU itself here: https://www.w3.org/TR/webgpu/ https://developer.mozilla.org/en-US/docs/Web/API/WebGPU_API

Kyjor commented 8 months ago

That sounds very promising! I don't think I'll have the bandwidth for 3d at all this year if things go the way I think. A lot of this year will be spent refining the editor tools in the engine. But that's definitely interesting, and I would be open to any contributions to make that happen sooner than expected! 😄