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

Consider switching to Veldrid for rendering #3033

Open
3 of 7 tasks
YoshiRulz opened this issue Dec 14, 2021 · 2 comments
Open
3 of 7 tasks

Consider switching to Veldrid for rendering #3033

YoshiRulz opened this issue Dec 14, 2021 · 2 comments
Labels
App: EmuHawk Relating to EmuHawk frontend Enhancement For feature requests or possible improvements Meta Relating to code organisation or to things that aren't code

Comments

@YoshiRulz
Copy link
Member

YoshiRulz commented Dec 14, 2021

Advantages over SlimDX + OpenTK current abstraction:

A proof-of-concept is available on branch veldrid-poc. Checklist for working scenarios on that branch:

  • Linux Wayland w/ OpenGL (unimplemented)
  • Linux Wayland w/ Vulkan (unimplemented)
  • Linux X11 w/ OpenGL (unimplemented)
  • Linux X11 w/ Vulkan
  • macOS w/ Metal (unimplemented) prerequisites: .NET Core and macOS port, but theoretically supported
  • macOS w/ Vulkan (unimplemented) ditto
  • Windows w/ D3D11
  • Windows w/ OpenGL (unimplemented)
  • Windows w/ Vulkan

gonna leave this here for .NET 6 / Avalonia
maybe Ryujinx' PRs 3901 and 3902 can help? it looks like they were using the same Veldrid helpers
edit: gdi those are probably lost forever thanks to Ryujinx being deleted

shader cross-compilation (no idea what this actually is beyond that, found it on a random HN thread): https://github.com/floooh/sokol-tools/blob/master/docs/sokol-shdc.md

@YoshiRulz YoshiRulz added App: EmuHawk Relating to EmuHawk frontend Meta Relating to code organisation or to things that aren't code Enhancement For feature requests or possible improvements labels Dec 14, 2021
@vadosnaprimer
Copy link
Contributor

vadosnaprimer commented Dec 15, 2021

I know nothing about this subject but is https://github.com/bkaradzic/bgfx (.NET bindings) worth considering as an option? It supports some cool shaders https://docs.mamedev.org/advanced/bgfx.html

@YoshiRulz
Copy link
Member Author

is https://github.com/bkaradzic/bgfx worth considering as an option?

I think it fits in the same part of the graphics stack, but it's not clear. In any case, I'd stick with a popular and "proven" library over one which says

it will probably run fine on Mac and Linux if Mono is installed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
App: EmuHawk Relating to EmuHawk frontend Enhancement For feature requests or possible improvements Meta Relating to code organisation or to things that aren't code
Projects
None yet
Development

No branches or pull requests

2 participants