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

Update the graphics stack to support rendering a clear screen. #25

Merged
merged 9 commits into from Sep 9, 2019

Conversation

@tannergooding
Copy link
Collaborator

commented Sep 9, 2019

The initial prototype was mirroring the lower level APIs of DirectX 12/Vulkan, but that had various issues due to cross library differences and due to the eventual plan to support higher level APIs like WebGL.

Instead, the graphics stack has been rewritten to expose an IGraphicsContext which currently just has BeginFrame, EndFrame, and PresentFrame functions. Other intermediate functions, like those for rendering triangles will also be exposed.

Users wanting more fine-tuned control can cast to the concrete provider type which exposes the low level interfaces, etc.

This also exposes a simple HelloWindow sample which renders a cornflower blue screeen for both D3D12 and Vulkan on Win32. It should hopefully also work for the X11 backend, but I havent tested it yet.

@tannergooding

This comment has been minimized.

Copy link
Collaborator Author

commented Sep 9, 2019

D3D12 on Win32:
image

Vulkan on Win32:
image

Noting there are some color differences due to the different color formats currently used. I'll need to fix that 😄

@tannergooding tannergooding merged commit a4665ad into terrafx:master Sep 9, 2019

9 checks passed

terrafx.terrafx-pr Build #20190909.1 succeeded
Details
terrafx.terrafx-pr (macos_debug_x64) macos_debug_x64 succeeded
Details
terrafx.terrafx-pr (macos_release_x64) macos_release_x64 succeeded
Details
terrafx.terrafx-pr (ubuntu_debug_x64) ubuntu_debug_x64 succeeded
Details
terrafx.terrafx-pr (ubuntu_release_x64) ubuntu_release_x64 succeeded
Details
terrafx.terrafx-pr (windows_debug_x64) windows_debug_x64 succeeded
Details
terrafx.terrafx-pr (windows_debug_x86) windows_debug_x86 succeeded
Details
terrafx.terrafx-pr (windows_release_x64) windows_release_x64 succeeded
Details
terrafx.terrafx-pr (windows_release_x86) windows_release_x86 succeeded
Details

@tannergooding tannergooding deleted the tannergooding:graphics branch Sep 9, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant
You can’t perform that action at this time.