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

Prepare for multiple render backends #50

Draft
wants to merge 6 commits into
base: master
Choose a base branch
from
Draft

Conversation

Shinmera
Copy link
Member

@Shinmera Shinmera commented Jul 8, 2023

This PR prepares Trial for multiple render backends (Vulkan, Metal, DirectX, whatever). The work of this PR won't actually implement any other backends or ensure that they would work, but instead simply focuses on moving all of the references to the gl and %gl packages are moved out of core and into resources and a single file instead.

Anything else should call functions that interact with the context or a resource, instead. That should allow creating graphics library specific resource mixins and context mixins, paving the way for other backends.

The main goal is to create a cleaner separation and present a cleaner interface for users to depend upon. Ideally users would not ever call any GL specific functions on their own at all.

Raw GLSL will remain, with the intention being that future backends will have to implement a GLSL transpiler to whatever code format they require. This may need extra changes for more metadata depending on the needs of the target language, but for now we'll omit that problem.

@Shinmera Shinmera force-pushed the master branch 7 times, most recently from df3056e to 470214e Compare September 4, 2023 06:03
@Shinmera Shinmera force-pushed the master branch 6 times, most recently from 1be38da to afb0476 Compare September 12, 2023 07:44
@Shinmera Shinmera force-pushed the master branch 3 times, most recently from 4f867f5 to 3fbd53d Compare October 12, 2023 09:19
@Shinmera Shinmera force-pushed the master branch 3 times, most recently from 86f03fa to 391bc2f Compare November 13, 2023 12:12
@Shinmera Shinmera force-pushed the master branch 2 times, most recently from abcb908 to b102af3 Compare November 21, 2023 10:44
@Shinmera Shinmera force-pushed the master branch 2 times, most recently from 4034ea8 to bec5f8a Compare November 28, 2023 22:47
@Shinmera Shinmera force-pushed the master branch 3 times, most recently from c391794 to 0da5927 Compare February 19, 2024 14:06
@Shinmera Shinmera force-pushed the master branch 4 times, most recently from 9a6395b to ec1092d Compare March 1, 2024 10:52
@Shinmera Shinmera force-pushed the master branch 3 times, most recently from fc79f56 to cf6f722 Compare April 5, 2024 16:06
@Shinmera Shinmera force-pushed the master branch 4 times, most recently from 91a40bf to c0fb2d2 Compare August 19, 2024 20:57
@Shinmera Shinmera force-pushed the master branch 3 times, most recently from e6d8bfc to a8d853f Compare August 24, 2024 12:22
@Shinmera Shinmera force-pushed the master branch 2 times, most recently from 339197b to 1264753 Compare November 8, 2024 22:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant