Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use JuliaWGPU ecosystem for GPU support #48

Open
VarLad opened this issue Jan 22, 2024 · 6 comments
Open

Use JuliaWGPU ecosystem for GPU support #48

VarLad opened this issue Jan 22, 2024 · 6 comments
Labels
enhancement New feature or request

Comments

@VarLad
Copy link

VarLad commented Jan 22, 2024

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 Kyjor added the enhancement New feature or request label Jan 22, 2024
@Kyjor
Copy link
Owner

Kyjor commented Jan 22, 2024

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
Copy link
Author

VarLad commented Jan 31, 2024

@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
Copy link
Owner

Kyjor commented Jan 31, 2024

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! 😄

@Kyjor
Copy link
Owner

Kyjor commented Jan 30, 2025

Update: This year I plan on learning some 3d, and make the engine more agnostic to different rendering backends. Not sure if I'll get to WebGPU this year though, but I should make it feasible!

@VarLad
Copy link
Author

VarLad commented Jan 30, 2025

@Kyjor Hey! Thanks for messaging! Does it make sense to try and wrap Sokol in Julia as a library?
I have been trying to compile this for BinaryBuilder and then wrap it but running into some issues.
Its already used for a game engine, and its massively cross platform and quite easy to use :)

@Kyjor
Copy link
Owner

Kyjor commented Jan 30, 2025

@VarLad I'd at least like to play around with it! If I architect things right, it should be possible to use it in JulGame!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants