Corentin Wallez
c34aa3abe7
Vulkan: Make non-dispatchable handles always opaque
...
On 32 bit Vulkan typedefs these handles to uint64_t which breaks
function overload resolution. Replace the
VK_DEFINE_NON_DISPATCHABLE_HANDLE and VK_NULL_HANDLE defines to be
opaque C++ types with the same capabilities.
2017-12-12 12:31:20 -05:00
Corentin Wallez
00935daffc
Use shaderc_shared and don't build unnecessary targets
...
This should speed up compilation on Travis a little bit.
2017-12-12 01:02:35 -05:00
Corentin Wallez
b6fb5f3149
Roll shaderc
2017-12-12 01:02:35 -05:00
Corentin Wallez
ae7f113fe8
Only compile the used SPIRV-Cross backends
2017-12-12 01:02:35 -05:00
Corentin Wallez
b36b501f5e
Build the Vulkan backend on CI
2017-12-04 21:39:16 -05:00
Corentin Wallez
3cf6c9df0c
Travis: install pip manually on OSX
2017-12-04 14:14:38 -05:00
Corentin Wallez
e3b1f51c04
Add travis hook to check formatting
2017-11-28 16:18:39 -05:00
Corentin Wallez
23b27a27e2
Format: src/backend/vulkan
2017-11-28 16:18:39 -05:00
Corentin Wallez
c7807abf04
Format: src/backend/opengl
2017-11-28 16:18:39 -05:00
Corentin Wallez
1aa4d5604f
Format: src/backend/null
2017-11-28 16:18:39 -05:00
Corentin Wallez
f58d84d488
Format: src/backend/metal
2017-11-28 16:18:39 -05:00
Corentin Wallez
2d62a371ee
Format: src/backend/d3d12
2017-11-28 16:18:39 -05:00
Corentin Wallez
c1400f0d14
Format: src/backend
2017-11-28 16:18:39 -05:00
Corentin Wallez
9d01c6c26d
Format: src/{common, utils, wire}
2017-11-28 16:18:39 -05:00
Corentin Wallez
a351ce9618
Add .clang-format
2017-11-28 16:18:39 -05:00
Corentin Wallez
b981677848
Travis: use trusty distro
2017-11-28 11:26:08 -05:00
Corentin Wallez
42dbde1b65
Member rename: generator/templates
2017-11-23 17:04:10 -05:00
Corentin Wallez
d5d77af5b6
Member rename: src/tests
2017-11-23 17:04:10 -05:00
Corentin Wallez
ad6470466c
Member rename: src/{common/utils/wire}
2017-11-23 17:04:10 -05:00
Corentin Wallez
8d75e5b4ae
Member rename: src/backend/vulkan
2017-11-23 17:04:10 -05:00
Corentin Wallez
7ee1610f38
Member rename: src/backend/opengl
2017-11-23 17:04:10 -05:00
Corentin Wallez
b0c75a5b68
Member rename: src/backend/metal
2017-11-23 17:04:10 -05:00
Corentin Wallez
e00385af73
Member rename: src/backend/d3d12
2017-11-23 17:04:10 -05:00
Corentin Wallez
903c563b43
Member rename: src/backend/null
2017-11-23 17:04:10 -05:00
Corentin Wallez
fbecc28ac4
Member rename: src/backend
2017-11-23 17:04:10 -05:00
Corentin Wallez
b325f4d0af
Fix compilation of Vulkan backend on Windows
2017-11-23 17:04:10 -05:00
Corentin Wallez
98013d7866
Enable first tests on Vulkan!
2017-11-23 09:26:26 -05:00
Corentin Wallez
bdde209ed9
VulkanBinding: make a dummy Vulkan swapchain impl
2017-11-23 09:26:26 -05:00
Corentin Wallez
eee5171c39
Vulkan: Add uploader for BufferSetSubData
2017-11-23 09:26:26 -05:00
Corentin Wallez
a8ec80ba57
Vulkan: Add some simple command pool / buffer management
2017-11-23 09:26:26 -05:00
Corentin Wallez
9018236b38
Vulkan: Keep track of finished operations with fences
2017-11-23 09:26:26 -05:00
Corentin Wallez
315e9268bb
Vulkan: Start buffers, hack SetSubData and MapRead
2017-11-22 18:25:20 -05:00
Corentin Wallez
b8387a62a6
RefCounted: make copy constructor arg const
2017-11-22 18:25:20 -05:00
Corentin Wallez
0216233a83
Vulkan: Create device and load all entry points
2017-11-22 18:25:20 -05:00
Corentin Wallez
f40d8c545c
Fix warnings in IndexFormatTests
2017-11-21 17:34:16 -05:00
Corentin Wallez
33f7bfe322
OpenGL: Apply vertex/index buffers just before draw.
...
Previously we would modify the GL state as soon as we saw
SetIndex/VertexBuffers. This GL state is owned by the VAOs in the
InputState and was disappearing on a Pipeline change. Fix this by
applying the index / vertex buffers lazily.
2017-11-21 17:34:16 -05:00
Corentin Wallez
6d9a3b82c6
Vulkan: Create VkInstance and register debug report
2017-11-21 16:09:15 -05:00
Corentin Wallez
f2adf6d5bd
Vulkan: Load Vulkan library and gather global info
2017-11-21 16:09:15 -05:00
Corentin Wallez
a2d2cfe2f5
Import vulkan headers version 1.0.65
2017-11-21 16:09:15 -05:00
Corentin Wallez
86e1ca2230
Add a DynamicLib loading class
2017-11-21 16:09:15 -05:00
Corentin Wallez
2eb113d690
Noop d3d12_platform.h cleanup
2017-11-21 16:09:15 -05:00
Corentin Wallez
6225a72fb7
Add index format tests.
2017-11-20 09:59:03 -05:00
Corentin Wallez
a43b1566e6
Make MetalBackend require BGRA8 swapchain
2017-11-20 09:59:03 -05:00
Corentin Wallez
e862a33dac
Add TextureFormat::B8G8R8A8Unorm
2017-11-20 09:59:03 -05:00
Corentin Wallez
2e31e8f0bf
Make binding expose the preferred format
2017-11-20 09:59:03 -05:00
Corentin Wallez
405dcd636a
Make the index format part of the pipeline state.
2017-11-20 09:59:03 -05:00
Corentin Wallez
715ac712c6
Document a bug in glTFViewer
2017-11-20 09:59:03 -05:00
Corentin Wallez
ff57ccbcf1
OpenGL: Fix rendered textures being flipped.
...
This was because the clip space of OpenGL has an inverted Y compared to
other APIs. This commit:
- Updates SPIRV-Cross to the latest version
- Uses the new vertex.flip_vert_y option in ShaderModuleGL
- Enables tests that are now passing in GL.
2017-11-16 11:42:38 -05:00
Corentin Wallez
f280e87f36
Remove Blink templates from this repository.
...
The templates will live in the Chromium prototype. This also removes
the blink/ prefix from the Blink template filenames as this won't be
present in anymore.
2017-11-01 22:43:42 -04:00
Corentin Wallez
0d045029fa
Update Blink integration
...
This both makes changes to follow changes in Blink and adds stubs for
SetFooCallback methods
2017-11-01 15:28:38 -04:00