-
Notifications
You must be signed in to change notification settings - Fork 2
Unrestricted constant buffers #138
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
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…that we get better error messages when MakeShared calls are incorrect. Also adding tests
…hing derived from Object can now only be created using Object::New. Thiis forces all objects derived from Object to be publicly derived and to be owned by a SharedPtr to ensure that shared_from_this never causes issues
…at best especially the tests for WaitOnCPU
…f getting a shared_from_this pointer of the same type as the derived type.
…y moving the creation of the GPUDevice to a persistance fixture. One consequence to this is that we no longer have to wait on the GPU for the GPU fence to be hit. I don't know why caching the GPUDevice results in this behaviour. But the change in behaviour is the same for both hardware and WARP devices.
…r CommandQueue that has a timeout. This is because it is clear that the time between a wait ending and the next action on a queue occuring is indeterminate so we need to wait.
…found by clang 20...
… heaps and descriptors
More issues with tuples implemented as an aggregate. Very annoying
Make a type alias for Expected<T, Error>
… to using ExpectedError over ErrorTypeAndDescription.
…oken to streamline shader creation
Also making CommandEngine expected friendly so that if errors are returned during commandlist creation, we can respond correctly
…gher abstraction than Shader. Shader should never have depended on it
…xt. Not quite done yet
… is full hooked up. This should fix the previous failure
…RingBuffer was broken (pushing back on to a default constructed ring buffer could never be resized through push_back)
… Also removing a lot of unnecessary code
… handle tuples implemented as an aggregate
Test Results 130 files + 11 130 suites +11 38s ⏱️ -1s Results for commit 99f6cc3. ± Comparison against base commit 447807e. This pull request removes 19 and adds 236 tests. Note that renamed tests count towards both.♻️ This comment has been updated with latest results. |
…dbolt.org/z/Pc9PsGnsq, does not compile until 14.41. I think it is due to using deducing this in a lambda...
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The main feature of this PR is that we now have no restrictions on what goes into a constant buffer, as we now don't just rely on pushing root signature constants.
However, to support this, a huge refactor was done, which should make it easy to support arbitrary resources being bound (in a bindless fashion) later.