Commit graph

196 commits

Author SHA1 Message Date
Dzmitry Malyshau 9ca30078d5 Query support 2018-08-23 08:12:28 -04:00
Dzmitry Malyshau 87f8175324 Surface image usage queries.
Fixed image usage flag conversion.
Added push constants limits.
2018-08-19 17:14:55 -04:00
Dzmitry Malyshau 119669fe48 gfx-rs update for the swapchain configuration 2018-08-16 00:11:24 -04:00
Joshua Groves 2bb319b052 Log gfx errors 2018-08-14 20:30:33 -06:00
Dzmitry Malyshau b92c063844 gfx update and GFX_METAL_STITCHING environment option 2018-08-09 12:32:36 -04:00
Dzmitry Malyshau 6342f02540 Pipeline cache support 2018-08-07 16:02:03 -04:00
Dzmitry Malyshau 96c6fcd78a Update gfx-rs and use GFX_METAL_RECORDING environment 2018-08-03 21:31:41 -04:00
Dzmitry Malyshau 7d0c4d2a9d pre-allocate space for local descriptor set handles 2018-07-25 21:46:07 -04:00
Dzmitry Malyshau f46c6db6f8 Descriptor iterator 2018-07-25 21:24:04 -04:00
Dzmitry Malyshau 36da0e452a Makefile update 2018-07-24 10:14:54 -04:00
Dzmitry Malyshau 7a6d6ba3bf Update gfx-rs with new descriptor allocation changes 2018-07-24 09:33:10 -04:00
msiglreith aa851f19b3 Handle unused depth stencil subpass attachments 2018-07-20 23:12:30 +02:00
Dzmitry Malyshau c7ce3f50c7 Depenencies update 2018-07-18 18:09:32 -04:00
Dzmitry Malyshau 7e2ba90232 Depth bias dynamic state, using iterator for updating descriptor sets 2018-07-12 23:09:26 -04:00
Dzmitry Malyshau 2aec56a099 Robust descriptor release, safe handle access, more iterator usage 2018-07-11 17:47:05 -04:00
Felix Kaaman b19dbb8936 add maxColorAttachments to device limit conversion 2018-07-11 10:30:30 +03:00
Dzmitry Malyshau f8b35fba0f Revert changes if got an error during descriptor set allocation 2018-07-03 21:02:09 -04:00
Dzmitry Malyshau 2db11c607e Expose VK_KHR_maintenance1 2018-06-30 23:20:31 -04:00
Dzmitry Malyshau 2cf691a17a Handle sanitation and gfx-hal update 2018-06-30 22:34:45 -04:00
msiglreith d77d9609a6 fix overly conservative function pointer retrieval 2018-06-25 18:10:41 +02:00
Dzmitry Malyshau 1e3541c8a4 Fix descriptor set leak 2018-06-24 22:54:31 -04:00
Joshua Groves 7f63f09cb3 Exclusive end range 2018-06-23 21:56:47 -06:00
Joshua Groves 15dee8af02 Update gfx 2018-06-23 21:56:36 -06:00
Felix Kaaman 8e62c189f3 Add dx11 2018-06-22 15:00:34 +03:00
Joshua Groves 07657f783b Ensure requested features are supported 2018-06-17 22:43:50 -06:00
Joshua Groves 6f76d2c7c6 Ensure instance and device extensions exist 2018-06-17 22:08:53 -06:00
Joshua Groves 4c2b2f13e5 Check API version 2018-06-17 21:06:08 -06:00
Joshua Groves 52bfd5d3ca Check enabled extensions 2018-06-17 20:29:45 -06:00
Joshua Groves 321cc54f81 Check for None in gfxGet{Instance|Device}ProcAddr 2018-06-17 16:17:06 -06:00
Joshua Groves 967cd9b445 Add present mode querying 2018-06-17 12:41:59 -06:00
Joshua Groves 3e716b08ad Map present modes 2018-06-15 18:45:05 -06:00
Dzmitry Malyshau 868ef92f07 Query pools and swapchains 2018-06-12 08:02:50 -07:00
bors[bot] 2a03ef2acd Merge #96
96: Transmute enum values r=kvark a=grovesNL

Transmutes enum values instead of matching, also adds mapping for stencil op and logic op.

Depends on gfx-rs/gfx#2132

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2018-06-09 15:50:03 +00:00
Joshua Groves 9a158ce87f Implement dynamic stencil masks 2018-06-09 08:24:34 -06:00
Joshua Groves 694474f46c Transmute enum values 2018-06-09 08:19:40 -06:00
Dzmitry Malyshau 149e91a827 Cull flags, dynamic states, and dynamic buffers 2018-06-06 13:51:04 -04:00
bors[bot] 0012de8dfe Merge #92
92: macOS surface changes and more r=kvark a=grovesNL



Co-authored-by: Joshua Groves <josh@joshgroves.com>
2018-06-06 03:00:38 +00:00
Joshua Groves cbcfdf58dd Add macOS surface 2018-06-05 20:54:11 -06:00
Dzmitry Malyshau f89c417b89 Compute PSO creation refactor 2018-06-05 13:42:34 -04:00
Dzmitry Malyshau 6e0ce965bf Cleaner destruction of events and query pools 2018-06-05 12:59:17 -04:00
msiglreith 6bbf7ec7fc Implement vkFreeDescriptorSets 2018-06-03 14:13:31 +02:00
Dzmitry Malyshau 0e1385f1d5 Deny sparse resources, update gfx-rs 2018-06-01 11:41:08 -04:00
msiglreith 2b2c33eb51 Update dependencies and add CI test for renderdoc 2018-05-31 23:30:02 +02:00
msiglreith 78fd0a9141 Add support for renderdoc capturing (dx12 only) 2018-05-31 23:29:19 +02:00
Dzmitry Malyshau 6be4456bb2 Immutable samplers support 2018-05-30 21:29:03 -04:00
Joshua Groves fda64901de Implement set_depth_bias 2018-05-29 12:22:45 -06:00
Dzmitry Malyshau b4b1cac73d Indirect draws, get image footprint, makefile improvements 2018-05-28 23:56:24 -04:00
Joshua Groves 23ecf809b4 Implement set_line_width 2018-05-24 07:03:12 -06:00
bors[bot] f0da9debeb Merge #83
83: Remove tiling assert r=kvark a=grovesNL

As far as I can tell, we shouldn't need this assert anymore because we already perform the mapping immediately below.

Unless there is another reason it needs to stay (maybe validating against image format queries?), let's remove it because it causes other unrelated tests to fail.

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2018-05-24 11:11:34 +00:00
bors[bot] 1da17c2050 Merge #80
80: Map compute specialization constants r=kvark a=grovesNL

Shares code between graphics/compute pipelines setup to map compute specialization constants

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2018-05-24 11:02:25 +00:00
Joshua Groves bec9906f86 Remove tiling assert 2018-05-23 23:03:59 -06:00
Joshua Groves 6c63a53061 Map compute specialization constants 2018-05-23 22:12:08 -06:00
Joshua Groves 4dbb1afb91 Add layers to clear attachments 2018-05-23 19:29:58 -06:00
Dzmitry Malyshau 08352676da Gfx update, depth bounds and blend constants 2018-05-17 11:50:51 -04:00
Joshua Groves e81fb10b8e Use rasterizer discard 2018-05-16 22:34:02 -06:00
AIOOB d0478d8571 Implement resolve_image 2018-05-14 21:49:48 +01:00
AIOOB 00d3085901 Store mip_levels and array_layers for images 2018-05-14 19:02:06 +01:00
Dzmitry Malyshau 52dcdd097b Clear image update 2018-05-12 21:20:40 -04:00
Joshua Groves 0f2d89f7d7 Update gfx 2018-05-12 01:04:30 -06:00
bors[bot] d06c813fe4 Merge #70
70: Add dispatch, update gitignore and Makefile r=kvark a=grovesNL

- Implement dispatch
- Exclude subdirectory build directories and VSCode workspace settings
- Update Makefile to run CTS from the directory containing deqp - this fixes relative paths

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2018-05-04 01:31:08 +00:00
msiglreith cc78b7fcbe Update gfx version and expose framebuffer sample limits 2018-05-02 16:59:44 +02:00
msiglreith 545f3bb0f0 Multisampling support 2018-05-02 16:20:08 +02:00
msiglreith cc049bbb7c Fix flush and invalidate ranges 2018-05-02 16:19:33 +02:00
Joshua Groves 90e972fcab Implement dispatch 2018-05-01 20:48:07 -06:00
Joshua Groves 0929c46334 Fix some null handles 2018-05-01 13:10:53 -06:00
Dzmitry Malyshau e73b22c0d0 Warnings, compute pipelines, limits 2018-04-27 09:51:55 -04:00
Dzmitry Malyshau 9c1c1b7851 Debug Handle tracker 2018-04-27 09:49:57 -04:00
bors[bot] 9ae74be774 Merge #65
65: Fill out more sampler properties r=kvark a=msiglreith

Fixes texture mapping and HDR sample

Co-authored-by: msiglreith <m.siglreith@gmail.com>
2018-04-23 16:38:04 +00:00
msiglreith bd5575200f Fill out more sampler properties 2018-04-23 15:04:17 +02:00
bors[bot] c5a0fbd81d Merge #64
64: Depth bias and dependency bump r=kvark a=msiglreith

Will update the dx12 vulkan sample coverage accordingly, should move a few samples to the 'Working' state then.

Co-authored-by: msiglreith <m.siglreith@gmail.com>
2018-04-23 12:31:33 +00:00
bors[bot] 9402e06ae7 Merge #63
63: Implement specialization constants and image copy r=kvark a=msiglreith



Co-authored-by: msiglreith <m.siglreith@gmail.com>
2018-04-23 02:44:04 +00:00
msiglreith acfbf29a4d Implement depth bias 2018-04-22 14:35:48 +02:00
bors[bot] 7f4c30c98e Merge #61
61: Add getDeviceProcAddr to device level functions r=msiglreith a=AIOOB



Co-authored-by: AIOOB <jack@rickard.plus.com>
2018-04-22 10:57:21 +00:00
msiglreith 65126188f5 Implement specialization constants and image copy 2018-04-22 12:50:56 +02:00
msiglreith ba863e8c8e Properly expose supported device features 2018-04-20 14:55:50 +02:00
AIOOB 356111693b
Add getDeviceProcAddr to device level functions 2018-04-20 00:16:56 +01:00
Dzmitry Malyshau 84f49750f8 clear_attachments and execute_commands 2018-04-18 21:19:42 -04:00
Dzmitry Malyshau b91cf67f0c Make unboxing safer 2018-04-18 19:11:32 -04:00
Dzmitry Malyshau 4005f014bd Release physical devices properly 2018-04-18 18:37:14 -04:00
Dzmitry Malyshau 0c619fcd62 Keep a list of allocated command buffes for proper destruction of the pool 2018-04-18 15:30:07 -04:00
msiglreith e43939453d Implement push constant command 2018-04-18 19:51:31 +02:00
msiglreith 6102540750 Add support for blending, buffer copy and indexed drawing 2018-04-17 23:12:02 +02:00
Dzmitry Malyshau 870c435b39 gfx update to c0ba2019c613432d74e2f13d95a398b220c9c9c4 2018-04-17 15:28:59 -04:00
msiglreith 3d5fd5ccad Handle WHOLE_SIZE for memory mapping 2018-04-17 19:37:15 +02:00
msiglreith 1d299a4949 Expose CreateWin32SurfaceKHR and device extensions 2018-04-17 19:29:10 +02:00
AIOOB 4aece2d525 Implement ResetFences and GetFenceStatus 2018-04-12 17:14:19 +01:00
bors[bot] a90e36710b Merge #53
53: Device leak fix, Cargo lock r=msiglreith a=kvark

The motivation behind including the lock is: no rust library is going to link to us anyway, so this crate is the head of the dependency graph, and doing a single `cargo update` is simpler for updates than figuring out the revision ids manually.

Co-authored-by: Dzmitry Malyshau <kvark@mozilla.com>
2018-04-12 13:27:52 +00:00
Dzmitry Malyshau 670de5f155 Unified unboxing 2018-04-12 09:24:47 -04:00
Dzmitry Malyshau cfe1f11ad3 Update gfx-rs, Linux numbers, properly release device references 2018-04-11 21:32:58 -04:00
Dzmitry Malyshau 64faf13e00 Include Cargo.lock instead of fixed revisions 2018-04-11 21:32:31 -04:00
grovesNL 2b2cb6fefd Return VK_INCOMPLETE for partial physical device enumeration 2018-04-09 23:23:58 -06:00
Dzmitry Malyshau 396ea0d6f0 OSX CTS results update 2018-04-09 08:33:31 -04:00
Dzmitry Malyshau 531275e648 First CTS results on OSX 2018-04-06 10:42:38 -04:00
Dzmitry Malyshau 7fed8abd57 Update gfx with image_format_properties 2018-04-04 14:23:46 -04:00
Dzmitry Malyshau 973025673c Update gfx with destroy_buffer_view impl 2018-04-02 21:58:44 -04:00
Dzmitry Malyshau 1bc260fb25 Limited support for dynamic states 2018-04-01 21:45:59 -04:00
msiglreith 8d75459a84 Fix physical device enumeration and add dummy features
Vulkan loader expects that EnumeratePhysicalDevices will return the same handles on each call. Caching them on startup
2018-03-29 15:47:03 +02:00
Dzmitry Malyshau 7a544eb46f Update gfx with image kind changes 2018-03-27 13:38:49 -04:00
msiglreith 7817b77c0b Fix dispatchable handles 2018-03-14 22:38:02 +01:00
Dzmitry Malyshau 127312e84e Update for latest HAL changes in descriptor writes 2018-03-02 10:52:21 -05:00