Commit Graph
9323 Commits
Author SHA1 Message Date
baldurk 9cc8ce6c3b Add generated code based on SPIR-V json grammar
* This includes both our own enums and per-opcode helper structs for decoding
2019-08-16 17:38:34 +01:00
baldurk e03f0c08e4 Add ConstIter for read-only SPIR-V processing 2019-08-16 16:12:01 +01:00
baldurk 3b00566ace Move GLSL reflection tests to common place for SPIR-V to use 2019-08-16 16:12:01 +01:00
baldurk 98c8178c11 Don't ignore output arrays from geometry shaders 2019-08-16 16:12:01 +01:00
baldurk 45b4159648 Set invalid input attribute mappings to -1 in SPIR-V reflection 2019-08-16 16:12:01 +01:00
baldurk 0122448091 Sort cbuffer variables by offset when reflecting SPIR-V
* Struct member declarations don't have to be in offset order, so we need to re-
  sort ourselves
2019-08-16 16:12:01 +01:00
baldurk 3ae359e3d0 Handle reflecting atomic counters in SPIR-V, for GL's SPIR-V 2019-08-16 16:12:01 +01:00
baldurk ee590dc09c For array input/outputs from geometry shader, don't reflect all elements 2019-08-16 16:12:01 +01:00
baldurk 512c1076ec Fix issue with builtin inputs/outputs in SPIR-V reflection 2019-08-16 16:12:01 +01:00
baldurk 67fc665bf1 Fix indirection for looking up SSBOs for member patching 2019-08-16 16:12:01 +01:00
baldurk 9d9aa49330 Store parent-relative byte offset in UBOs from GLSL reflection 2019-08-16 16:12:01 +01:00
baldurk 8ec76b1e44 Assign subsequent regIndex locations for matrix/arrays in GL reflection 2019-08-16 16:12:00 +01:00
baldurk 1552182d0a Sort GLSL reflected signature parameters with builtins first 2019-08-16 16:12:00 +01:00
baldurk a03538db4b Check gl_CullDistance with the other fixed-function GLSL vertex outputs 2019-08-16 16:12:00 +01:00
baldurk c9c920187d Add constant for push constant bind set 2019-08-16 16:12:00 +01:00
baldurk 01da5295a4 Sort ShaderConstant first by byteOffset, which is relative to its parent 2019-08-16 16:12:00 +01:00
baldurk d506b9efab Implement OpAtomicLoad for SPIR-V disassembly 2019-08-16 16:12:00 +01:00
baldurk 08a1ce2e76 Add support for VK_EXT_metal_surface and prefer it to MVK_macos_surface 2019-08-16 16:11:53 +01:00
baldurk 37242fd97e Fix assert on min/max swapchain image count 2019-08-16 10:25:41 +01:00
baldurk 9a0035d178 Print supported instance extensions as well as device extensions 2019-08-16 10:24:14 +01:00
baldurk ef269e2b92 Add support for VK_EXT_line_rasterization 2019-08-15 18:27:39 +01:00
baldurk 56aa5b16be Move VulkanRenderState initialisers to be in-line 2019-08-15 17:30:16 +01:00
baldurk 7bd13f5508 Handle extension pipeline structs when reconstructing pipeline info 2019-08-15 17:29:44 +01:00
baldurk f80964d84c Remove redundant manually maintained list of enabled vulkan extensions 2019-08-15 16:21:34 +01:00
baldurk b403c32b87 Fix viewport overlay when using -ve viewport height on KHR_maintenance1 2019-08-15 14:56:22 +01:00
baldurk 0522a636ad Add support for VK_KHR_pipeline_executable_properties 2019-08-15 13:05:06 +01:00
baldurk 715c18b591 Update valgrind suppressions for python 3.7 2019-08-15 13:04:58 +01:00
baldurk 6755fd96cb Update assert - we handle up to 8 swapchain images 2019-08-15 12:00:46 +01:00
baldurk a2c341966a Don't print about libGL last-second load during replay 2019-08-15 12:00:37 +01:00
baldurk 97afbf88c8 Fix documented return value of GetShaderReflection. Closes #1497 2019-08-15 08:30:34 +01:00
baldurk 3fe356af7d Add support for VK_EXT_subgroup_size_control 2019-08-14 18:26:28 +01:00
baldurk 9589d2d893 Add support for VK_KHR_imageless_framebuffer 2019-08-14 18:21:20 +01:00
baldurk 211d1b694f Make VK_Indirect less sensitive to event IDs changing 2019-08-14 14:35:14 +01:00
baldurk 272f993138 If a test already isn't available, don't overwrite that error 2019-08-14 14:15:52 +01:00
baldurk bb8172cfff Identify swiftshader in vulkan driver info 2019-08-14 14:15:52 +01:00
baldurk 29647ee391 Handle vulkan physical devices that don't have LINE polygon mode 2019-08-14 14:15:52 +01:00
baldurk d7c1007092 Don't enable primitive restart unless we're drawing a strip topology 2019-08-14 14:15:51 +01:00
baldurk 0c4c710170 Don't re-check fences within the same expire pass
* If we check a fence each time it's referenced, we risk getting a different
  answer the second time we check and expiring it too early.
2019-08-14 14:15:51 +01:00
baldurk 24107ce4ce Don't require depthClamp in vulkan tests unnecessarily 2019-08-14 11:03:58 +01:00
baldurk 7c1d4189cc Don't try to create pipelines with sample rate shading if not supported 2019-08-14 11:00:41 +01:00
baldurk 3a304862f4 Unwrap serialised info passed to vkCreateDescriptorUpdateTemplate 2019-08-14 10:59:52 +01:00
Aliya Pazylbekova 97c3186e34 Vk Pixel history: Add occlusion query test
Create a pipeline for doing occlusion queries
2019-08-13 20:30:42 +01:00
Waffle fa18367109 Updated documentation with unpackData fix
Updated example documentation to match the already accepted "Fixed Incorrect Tuple Usage in unpackData" fix.
2019-08-13 10:33:34 +01:00
baldurk 6b3dc39b68 Handle GL_RGBA2 texture format as if it were GL_RGBA8 2019-08-12 20:47:31 +01:00
baldurk ff4a152df7 When evaluating SPIR-V bindpoint mapping, set unused entries to -1 2019-08-12 20:45:29 +01:00
baldurk 1fc9f36114 Add support for VK_EXT_index_type_uint8 2019-08-12 17:53:23 +01:00
baldurk 2245957e38 Fix referencing of program pipeline bound programs in renderstate 2019-08-12 17:53:22 +01:00
baldurk 93a546ab4b Remove extra dos newlines from scintilla editor. Closes #1493 2019-08-12 17:53:22 +01:00
baldurk 53fdd792b7 Update vulkan headers to 1.1.119 2019-08-12 17:53:22 +01:00
baldurk 61de35bfc6 Pass through primitive restart state when rendering meshes 2019-08-12 17:53:22 +01:00