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

render hardware interface (GL 4.5, DX12, VK, MTL) #19

Open
ddiakopoulos opened this issue Apr 10, 2018 · 3 comments
Open

render hardware interface (GL 4.5, DX12, VK, MTL) #19

ddiakopoulos opened this issue Apr 10, 2018 · 3 comments
Assignees
Labels
next-gen Feature on an indefinite timeline
Milestone

Comments

@ddiakopoulos
Copy link
Owner

ddiakopoulos commented Apr 10, 2018

Polymer is presently uses OpenGL 4.5 features across the codebase. The eventual goal will be to replace all GL with a rendering abstraction capable of targeting multiple graphics backends. A reasonable target might be GL, DX12, and Vulkan. For macOS, it should be possible to use MoltenVK to bring Metal2 support with minimal effort.

glsl => spir-v => api shader compiler (includes, defines, optimization, reflection)

Inspiration
https://github.com/NVIDIAGameWorks/Falcor
https://github.com/sgorsten/workbench

@ddiakopoulos ddiakopoulos added this to the September milestone Apr 10, 2018
@ddiakopoulos ddiakopoulos self-assigned this Apr 10, 2018
@ddiakopoulos ddiakopoulos changed the title render interface abstraction / code-side (GL 4.5, ES3, DX12, VK) render interface abstraction / code-side (GL 4.5, DX12, VK, MTL) May 28, 2018
@ddiakopoulos ddiakopoulos changed the title render interface abstraction / code-side (GL 4.5, DX12, VK, MTL) render hardware interface (GL 4.5, DX12, VK, MTL) Jun 3, 2018
@ddiakopoulos ddiakopoulos added the next-gen Feature on an indefinite timeline label Jun 8, 2018
@bkaradzic
Copy link

Or just use bgfx? https://bkaradzic.github.io/bgfx/overview.html

@ddiakopoulos
Copy link
Owner Author

@bkaradzic of course! :) We're big fans at Adobe, clearly.

Last time I looked closely at Vulkan/spir-v support it was still in development on your end. I need to take a closer look now. There's so much great tooling for that ecosystem.

@bkaradzic
Copy link

Noticed here bgfx in comment here:

* [ ] profile begin/end (like bgfx)

Last time I looked closely at Vulkan/spir-v support it was still in development on your end. I need to take a closer look now.

VK renderer is not done yet, but SPIRV tooling is.

Whatever feature bgfx lacks it will have it faster than new renderer will have all features bgfx already has. Also allows you to focus on stuff that's unique for your project and your project does well, and I get more surface for improvement and testing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
next-gen Feature on an indefinite timeline
Projects
None yet
Development

No branches or pull requests

2 participants