Commit graph

378 commits

Author SHA1 Message Date
Benjamin Saunders b9702a2e14 DeviceV1_0::destroy_event 2018-12-05 22:42:05 -08:00
Maik Klein 911f7545b9 Fix imports for win and mac 2018-12-04 21:55:51 +01:00
Maik Klein ab7f960ae8 Remove all vendor tags from the fns 2018-12-04 21:25:42 +01:00
Maik Klein fad6f51aae Move extensions into vendor specific modules 2018-12-04 21:25:42 +01:00
Zakor Gyula fa830166fc Add get_pipeline_cache_data 2018-12-04 16:37:09 +01:00
Benjamin Saunders c0b7d91faf Don't generate extension traits for inextensible structs 2018-11-30 18:13:54 -08:00
Benjamin Saunders fc1625e81c Fix extension trait implementations, tweak naming
These were being implemented for the trait object of the extension
struct's own extension trait, instead of the extension struct itself.
2018-11-30 18:12:16 -08:00
Maik Klein bcaa563c5b Bump version 2018-11-22 22:11:22 +01:00
Matus Talcik 1be701f853 Builder: next pattern 2018-11-22 21:54:05 +01:00
Maik Klein f905308c24 Add NvMeshShader 2018-11-22 20:48:38 +01:00
Maik Klein 24f6fdb781 Bump version 2018-11-22 19:17:18 +01:00
Maik Klein 382923d643 Regenerate vk.rs 2018-11-22 16:15:14 +01:00
msiglreith 86e273b71a Public export function pointers 2018-11-21 19:11:13 +01:00
Matus Talcik b71dc58efb Initial support for rustfmt 2018-11-17 19:05:28 +01:00
Maik Klein 515f52fab9 Bump version 2018-11-16 18:45:54 +01:00
Maik Klein 9adbac7c8d Reformat vk 2018-11-16 18:41:36 +01:00
msiglreith e75bb61635 Update vk.rs 2018-11-16 18:41:36 +01:00
Maik Klein 058e4284f6
Merge pull request #151 from gwihlidal/mac_fixes
Fix macOS instance loading - use libvulkan.dylib instead of libMoltenVK.dylib so that loader is not bypassed
2018-11-16 18:23:02 +01:00
Graham Wihlidal 2efa1e4f74 Fix macOS instance loading - need to load through libvulkan.dylib, not libMoltenVK.dylib. Otherwise loading fails since the validation layers and debug report extensions can't be found (the loader is bypassed in this case, similar to directly linking against an IHV driver). Resolves #149 2018-11-16 18:00:40 +01:00
Matus Talcik 8a82125788 Builder pattern: Bool32 -> bool. Edge cases added 2018-11-12 23:22:16 +01:00
Maik Klein 9037202c0f Bump version to 0.25.0 2018-11-12 14:54:19 +01:00
Maik Klein 8373f43e23 Port EntryCustom 2018-11-12 13:24:33 +01:00
Maik Klein 69f3644362 Merge branch 'generator' 2018-11-12 13:10:52 +01:00
Maik Klein 3544018bfd Remove unused unsafe blocks 2018-11-12 11:25:47 +01:00
Maik Klein 03411ffbe0 Merge branch 'fix-getters' of https://github.com/Ralith/ash into Ralith-fix-getters 2018-11-12 11:24:33 +01:00
Maik Klein 52fe1c9714
Merge pull request #132 from Ralith/error-handling
Expose suboptimal results from swapchain operations
2018-11-11 14:55:20 +01:00
Maik Klein 30e6c5dee7 Regenerate vk.rs 2018-11-11 14:48:57 +01:00
Maik Klein a55cb9bd0c Merge branch 'flatten' of https://github.com/Ralith/ash into Ralith-flatten 2018-11-11 14:47:51 +01:00
Maik Klein 3f9a28af7e Regenerate vk.rs 2018-11-11 14:38:32 +01:00
Maik Klein 6beeb16a4e Merge branch 'flags-api' of https://github.com/Ralith/ash into Ralith-flags-api 2018-11-11 14:37:26 +01:00
Maik Klein 373ed42402 Remove unused versioning 2018-11-11 10:48:58 +01:00
Maik Klein 03665e5555 Remove FunctionPointers from Entry/Device/Instance 2018-11-11 10:48:58 +01:00
Maik Klein 1f8941351d Regenerate vk.rs 2018-11-04 09:46:14 +01:00
Maik Klein b9c5f56084 Remove device error 2018-11-04 09:38:39 +01:00
Maik Klein adf571c95c Initialize function pointers to a panicking function if it couldn't be
loaded
2018-11-03 23:37:20 +01:00
Matus Talcik ae3a17e807 regenerate vk.rs 2018-10-29 14:24:46 +01:00
Matus Talcik deb83f4b2e fix *const in some setters 2018-10-26 15:49:12 +02:00
Matus Talcik 8951ea021f rebase 2018-10-24 00:20:54 +02:00
Matus Talcik 4072cc39e8 Fix filtering of _count member fields 2018-10-24 00:20:03 +02:00
Matus Talcik 358220cb85 Filter out _count members in builder pattern 2018-10-24 00:19:34 +02:00
Matus Talcik 0c70322d22 Implementation of setters 2018-10-24 00:19:06 +02:00
Maik Klein 5e2f231cf2 wl_* types are not pointers 2018-10-23 15:50:47 +02:00
Benjamin Saunders cd394db60f Wrap function pointers in Option since they might be null 2018-10-08 17:34:40 -07:00
Maik Klein ef40f130a1
Merge pull request #131 from Ralith/unsafety
Add missing unsafe qualifiers
2018-10-08 11:01:53 +02:00
Maik Klein c2baf4f1f2
Merge pull request #129 from Ralith/array-debug
Fix nonsense Debug impl on non-char static arrays
2018-10-08 10:59:12 +02:00
Benjamin Saunders dd6f4f678c Fix Vulkan 1.1 getters 2018-10-07 20:28:41 -07:00
Benjamin Saunders ffa09c5fd9 Expose suboptimal results from swapchain operations 2018-10-07 12:14:59 -07:00
Benjamin Saunders 445c72fa26 Add missing unsafe qualifiers 2018-10-07 11:12:03 -07:00
Benjamin Saunders d4789768a6 Fix nonsense Debug impl on non-char static arrays 2018-10-07 10:17:48 -07:00
Maik Klein 33dc8bff8f Remove the mir sufrace extension because it has been deprecated 2018-10-02 15:24:29 +02:00
Benjamin Saunders d78afd87dd Flatten vk.rs module structure and use f32 2018-09-29 11:21:56 -07:00
Benjamin Saunders aa171d405a More traits for dispatchable handles 2018-09-16 12:18:10 -07:00
Benjamin Saunders 0446b59873 More consistent names in flags API
Improves consistency with other newtypes and with bitflags.
2018-09-16 12:08:14 -07:00
Maik Klein f679197d0f
Merge pull request #114 from GabrielMajeri/fix-version-macros
Use Rust integral types
2018-08-29 09:36:15 +02:00
Gabriel Majeri fd5d89f2b6 Remove libc usage 2018-08-28 20:01:16 +03:00
Maik Klein 025f353f9a
Merge pull request #111 from GabrielMajeri/fix-getters
Fix instance getters to support extensions
2018-08-28 18:11:23 +02:00
Gabriel Majeri b722b0f3a9 Map all integer types to Rust types 2018-08-25 14:09:44 +03:00
Gabriel Majeri 0c26422215 Separate getters for vectors into two functions
One is safe, used to determine how many structures will be returned.
The other is unsafe, and takes in a mutable reference to an array
of structure chains.
2018-08-25 11:53:15 +03:00
Gabriel Majeri 0786d71b39 Fix Vulkan version macros 2018-08-25 10:51:57 +03:00
Brian Merchant a10935eaf7 bug fixes for VK_EXT_debug_utils wrapper 2018-08-24 15:11:19 +02:00
Gabriel Majeri 53161660ef Fix instance getters to support extensions
This commit allows the user to pass in a chain of structures
to be filled in by the Vulkan driver.
2018-08-23 10:22:06 +03:00
Maik Klein 898e9791b7
Merge pull request #110 from MatusT/generator
Default trait: set pointers to std::ptr::null()/null_mut()
2018-08-23 07:18:21 +02:00
Maik Klein 9edecfd476
Merge pull request #108 from GabrielMajeri/entry-1.1
Make `enumerate_instance_version` an `Entry` function
2018-08-23 07:13:08 +02:00
Maik Klein b84596fb9a
Merge pull request #102 from Ralith/fix-flags-display
More robust Display for flags types
2018-08-23 07:08:32 +02:00
Matus Talcik 7e505347f4 Default trait: set pointers to std::ptr::null()/null_mut() instead of zeroed 2018-08-22 22:53:17 +02:00
Gabriel Majeri c4d92d410b Make enumerate_instance_version safe 2018-08-22 10:51:05 +03:00
Gabriel Majeri ce6820f923 Add traits and FP loading for Entry 1.1 2018-08-22 10:49:41 +03:00
Gabriel Majeri 67ea40b30c Regenerate vk.rs 2018-08-22 10:33:58 +03:00
Gabriel Majeri 15839ddc4e Move enumerate_instance_version to Entry
Also adds `EntryV1_1` trait

# Conflicts:
#	ash/src/version.rs
2018-08-22 10:24:50 +03:00
Maik Klein 3e812896ff
Merge pull request #107 from GabrielMajeri/export-v1_1
Export Vulkan 1.1 traits
2018-08-22 09:16:58 +02:00
Gabriel Majeri 22cce9be30 Export the Vk 1.1 traits 2018-08-22 10:06:03 +03:00
Benjamin Saunders a0424596a5 More robust Display for flags types
Fixes strange behavior if a Vulkan flags constant setting multiple bits
is defined prior to that which sets only one of those bits.
2018-08-21 21:16:08 -07:00
Benjamin Saunders b1451747b5 Expose cmd_copy_query_pool_results 2018-08-21 21:14:10 -07:00
Gabriel Majeri b5651ed351 Export the DebugUtils extension 2018-08-21 16:04:57 +03:00
Benjamin Saunders d5666554fc Expose conversions between enums and raw values 2018-08-20 23:56:33 -07:00
Maik Klein e546fbbb5d [Fix] BitPos can be negative 2018-08-20 09:55:41 +02:00
Maik Klein 8521f01488 Switch to manual_derives 2018-08-20 07:32:30 +02:00
Benjamin Saunders 6738c4c01c impl Display for constants 2018-08-19 20:13:02 -07:00
Maik Klein c4e4ab8fc2 Temporary implement Hash and PartialEq for certain types that only
contain primtive types
2018-08-19 10:10:11 +02:00
Benjamin Saunders e65a24ddcd Wrap VK_EXT_debug_utils 2018-08-04 13:49:16 -07:00
Benjamin Saunders 6e54dd346e Introduce Handle trait 2018-08-04 12:22:09 -07:00
Tim 92d0541170 Change type of TRUE and FALSE to Bool32 2018-08-03 15:39:25 +02:00
Maik Klein 4797c12c89
Merge pull request #90 from Cyres/repr-transparent
Use repr(transparent) where possible and apply rustfmt to those files
2018-08-03 15:14:09 +02:00
Tim cda39148e9 Mark some more functions as unsafe 2018-08-03 12:51:03 +02:00
Tim 59d49b2159 Apply rustfmt 2018-08-03 12:37:28 +02:00
Tim 2256c431be Use repr(transparent) where possible and apply rustfmt to those files 2018-08-03 12:34:14 +02:00
Tim 623c26c9bc Add functions for DeviceV1_1 2018-08-03 12:22:51 +02:00
Tim eeb17a07a1 Merge remote-tracking branch 'origin/generator' into generator 2018-08-03 11:55:27 +02:00
Maik Klein e3526b467c Remove unused enumflags dependencies 2018-08-01 18:46:02 +02:00
Tim e230d6ae81 Add functions for Instance 2018-08-01 16:51:43 +02:00
Maik Klein c0e98cdf78 New signature for enumerate_instance_version 2018-08-01 09:50:24 +02:00
Maik Klein a6d5a124df Rename constants in the example and inside static arrays 2018-08-01 09:22:28 +02:00
Maik Klein 33a0eee190 Remove "VK" from constants 2018-08-01 09:12:39 +02:00
Maik Klein 666e5628ac Remove vendor ext from vendor constant variants 2018-08-01 08:51:50 +02:00
Maik Klein 197b06b0d8 Fix: Some *const pointers should have been *mut pointers 2018-07-31 14:17:24 +02:00
Maik Klein 2921a03638 Fix repeating name in constants 2018-07-31 13:44:22 +02:00
Maik Klein 56bf57acf5 Fix *const *const ptr 2018-07-31 13:30:35 +02:00
Maik Klein 60915eacb2 Add initial support for 1.1 2018-07-31 08:04:07 +02:00
Maik Klein 6563754e32 Add new changes to vk.rs 2018-07-30 20:25:54 +02:00
Maik Klein 773c64cde1 Implement automatic derive for Debug 2018-07-30 12:50:51 +02:00
Maik Klein 3cacb4a00a Add support for extension constants 2018-07-29 22:39:45 +02:00
Hal Gentz 9dad1ca64e
Adds support for using custom ways to load the vulkan dynamic libraries.
Signed-off-by: Hal Gentz <zegentzy@protonmail.com>
2018-07-20 01:44:19 -06:00
Maik Klein f65c62dbaa Implement Error for the new Result 2018-07-09 09:24:18 +02:00
Maik Klein 325246c026 Rename Result::Success to Result::SUCCESS 2018-07-09 09:23:21 +02:00
Maik Klein fb13cc402e Add extension structure type constants to StructureType 2018-07-07 14:49:17 +02:00
Maik Klein e6e8bbd91b Successfully replace the old vk.rs file 2018-07-07 12:54:31 +02:00
Maik Klein ad24467c95 Rename the extension functionm pointers 2018-07-07 12:13:23 +02:00
Gray Olson 606a0dce8c use libmoltenvk on ios 2018-07-06 21:48:54 -07:00
Gray Olson 594a476fdb use libvulkan instead of moltenvk and make examples work on macos 2018-07-06 21:45:52 -07:00
Maik Klein 9f14e404d7 Impl cexpr 2018-06-24 12:09:37 +02:00
Maik Klein 886d0f0c96 Use constants for bitflags 2018-06-05 17:46:57 +02:00
Maik Klein dc378d7b9f Move from vkxml to vk-parse 2018-06-05 17:46:57 +02:00
Maik Klein bfed51f8d3 Save 2018-06-05 17:46:32 +02:00
Maik Klein eb70d0e899 cargo fmt 2018-06-05 17:46:32 +02:00
Joshua Groves c38dc07e4d Add more dynamic states 2018-05-24 12:46:08 -06:00
Dzmitry Malyshau 678ccc99c3 Expose get_image_subresource_layout 2018-05-23 19:08:51 -04:00
Joshua Groves 389ddd94f5 Bump version to 0.24.1 2018-05-18 12:56:50 -06:00
Joshua Groves a118b58020 Expose cmd_set_line_width 2018-05-18 12:56:43 -06:00
Maik Klein af0142dce9 Bump version to "0.24.0" 2018-05-09 15:41:08 +02:00
Jo Bates ea0a54b993 Expose cmd_set_depth_bounds 2018-05-05 14:40:12 -05:00
Audrey Baxter 2ce101acbc Fixed incorrect bitshifts in vk_version_major and vk_version_minor 2018-04-17 01:31:47 -04:00
Maik Klein be763d2518 Bump version to 0.23.0 2018-04-12 11:09:51 +02:00
Eidolon 26394b1d3c Add first_scissor to cmd_set_scissor 2018-04-11 21:30:30 -05:00
Maik Klein c7fecbf25e Bump version to 0.22.2 2018-04-03 23:46:24 +02:00
Maik Klein 8b68fed8dc Use VkResult 2018-04-03 23:45:59 +02:00
Dzmitry Malyshau 806fe2b1af Expose get_physical_device_image_format_properties 2018-04-03 08:59:13 -04:00
Maik Klein be8e11efc0 Bump version to 0.22.1 2018-04-01 10:56:43 +02:00
Kim Christensen 901a45449b Implement destroy buffer view 2018-03-30 23:28:09 +02:00
Maik Klein 30e77503af Add get_query_pool_results 2018-03-08 21:13:47 +01:00
Maik Klein 3300057d75 Add query results 2018-03-07 22:39:54 +01:00
Maik Klein 86052f581c Fix incorrect version bump 2018-03-06 10:39:58 +01:00
Dzmitry Malyshau 522445d079 Entry LIB_PATH 2018-02-16 11:33:45 -05:00
Maik Klein 485ba8b9d5 Bump major version 2018-02-15 19:49:18 +01:00
Maik Klein 1b612cb1bf Use union for ClearValue 2018-02-15 19:48:49 +01:00
Maik Klein 40ead80681 Bump minor version 2018-02-15 19:45:59 +01:00
Maik Klein 54512d2026 Reformat device.rs 2018-02-15 19:43:29 +01:00
Maik Klein c9f0236ad9 Add cmd_blit_image 2018-02-15 19:43:29 +01:00
Benjamin Saunders 39b41a4a47 Fix typo in util::Align documentation 2018-02-09 19:04:11 -08:00
Maik Klein a9dd6df8fe
Merge pull request #43 from kvark/entry
Nicer Entry implementation
2018-01-31 19:48:49 +01:00
Maik Klein 6165375ccc Fix incorrect version 2018-01-31 15:30:27 +01:00
Maik Klein 537a0f6e81 Bump version 2018-01-31 11:04:40 +01:00
Dzmitry Malyshau c81039a0c9 Nicer Entry implementation 2018-01-30 13:39:40 -05:00
Maik Klein 688112ccd7
Merge pull request #42 from farnoy/master
Add DebugMarker extension
2018-01-20 19:16:04 +01:00
Maik Klein c975a73cc0 Add first_viewport fo cmd_set_viewport 2017-12-22 14:29:05 +01:00
Maik Klein b62faef166
Merge pull request #40 from msiglreith/push_const
Fix push constant size (length of bytes instead of DWORDs)
2017-12-18 18:15:09 +01:00
msiglreith 1df7d5149a Switch to u8 slices for push constant (fixes passed length) 2017-12-18 18:02:24 +01:00
Jakub Okoński e77fdf574c Add DebugMarker Markers functionality 2017-12-17 16:52:43 +01:00
Jakub Okoński cd2ae99707 Add DebugMarker extension 2017-12-17 09:09:37 +01:00
Maik Klein 65e1a7689d Update docs for Align 2017-12-12 12:09:47 +01:00
Maik Klein f07af40a6c Bump version 2017-11-23 14:10:34 +01:00
msiglreith 244b7f1cdd Add query related functions 2017-11-23 14:04:56 +01:00
Maik Klein 2c7ba0df28 Bump version 2017-11-04 07:59:55 +01:00
AlphaModder b9b57a24df Add cmd_push_constants to Device. 2017-11-03 23:13:06 -07:00
Maik Klein 37a1cab53c Bump version 2017-10-14 12:19:22 +02:00
Maik Klein fe16c135f3 Merge pull request #36 from davll/moltenvk
Add MoltenVK support on macOS/iOS
2017-10-14 12:13:47 +02:00
David Lin 63c859a462 remove moltenvk feature 2017-10-14 13:43:02 +08:00
David Lin 85c3054fbb add extension wrapper 2017-10-14 12:12:05 +08:00
David Lin a38820fe67 add native types 2017-10-14 12:06:01 +08:00
David Lin 5371c96108 initial work 2017-10-14 11:44:15 +08:00
David Lin 67bf825aad initial work 2017-10-14 11:31:57 +08:00
Dzmitry Malyshau b84a7f58e2 Added CreateBufferView 2017-10-11 21:07:16 -04:00
Maik Klein b61f5df599 reformat 2017-10-02 14:28:29 +02:00
Maik Klein a73b52012b Make create_instance unsafe 2017-10-02 14:28:09 +02:00
Maik Klein d7c9c1489b Bump version 2017-09-30 03:01:15 +02:00
msiglreith 6a34e8d55b Add Copy derives for a few more structs 2017-09-29 20:41:09 +02:00
msiglreith 6afe7ed1b1 Add cmd_clear_attachments wrapper for device 2017-09-29 20:35:08 +02:00
Thomas Koehler 544870ab24 Added (invalidate|flush)_mapped_memory_ranges 2017-09-14 17:23:00 +02:00
Dzmitry Malyshau 991a114018 Added cmd_fill_buffer and cmd_update_buffer 2017-09-06 10:06:25 -04:00
Maik Klein e208c247af Bump version 2017-09-05 23:37:07 +02:00
Maik Klein 5b146d8085 add copy_image_to_buffer 2017-09-05 23:35:08 +02:00
Maik Klein 54bdc204d2 bump version 2017-08-19 18:48:22 +02:00
msiglreith 5b43266338 Add image resolve command 2017-08-11 15:57:55 +02:00
msiglreith a8081bc21d Add depth stencil image clearing command 2017-08-11 14:12:25 +02:00
msiglreith 6d6267693e Add commands for indirect draw/dispatch, next subpass and setting ref values 2017-08-06 18:57:59 +02:00
Maik Klein 090ee89e1d Bump version 2017-07-09 09:15:29 +02:00
Maik Klein 18fe1f7916 Remove AlignByteSlice 2017-07-08 10:25:47 +02:00
Maik Klein c559e4d731 Use c_void instead of () 2017-07-08 10:24:42 +02:00
Maik Klein 5875de85ce Switch to libc 2017-07-08 09:40:38 +02:00
Maik Klein b100cc55a7 Bump version 2017-07-06 18:10:43 +02:00
Maik Klein e8b726a483 Reformat project with the new rustfmt 2017-07-06 18:00:05 +02:00
Maik Klein f32988a0c6 Add reset_descriptor_pool + reformat file 2017-07-06 17:58:05 +02:00
Maik Klein 9c1698e2f1 [Fix] Incorrect copying from slice 2017-06-18 13:52:21 +02:00
Maik Klein d22e1b1fe3 Align now uses "copy_from_slice" for C aligned slices 2017-06-16 13:18:18 +02:00
Maik Klein cdc2fa94d9 Add asset to check for aligned size 2017-06-11 20:38:03 +02:00
Maik Klein 1d4e2946c9 bump version 2017-06-11 17:52:12 +02:00
Maik Klein 90d67c29c9 Switch util::* to DeviceSize 2017-06-11 17:49:38 +02:00
Maik Klein 0f8ac7ecff bump version 2017-06-11 15:07:26 +02:00
Maik Klein 0b8f554dd9 use correct padding 2017-06-11 14:59:12 +02:00
Maik Klein f56d72bda6 Mark alignment structs as unsafe 2017-06-05 10:56:42 +02:00
Maik Klein 9c6e236d6a Add Error trait for DeviceError 2017-06-05 10:56:03 +02:00
Maik Klein 39140519da Add error trait for InstanceError 2017-06-05 10:53:54 +02:00
Maik Klein 9939be179c Add Error trait to vk::Result 2017-06-05 10:53:04 +02:00
Maik Klein dc202bb6b6 Add util functions for alignment 2017-06-03 23:36:07 +02:00
Maik Klein a9bb2e2b99 map_memory returns a void ptr 2017-06-03 23:35:36 +02:00
Itai f0b29696cb Add create_pipeline_cache and destroy_pipeline_cache 2017-05-14 13:16:12 +03:00
Maik Klein 9807a782f4 Bump version 2017-04-30 15:43:48 +02:00
Maik Klein 39e79db05a Add cmd_execute 2017-04-30 15:43:14 +02:00
Maik Klein 2ab5495367 0.15.7 2017-04-29 16:07:26 +02:00
Maik Klein e0bd5fd60f bump version 2017-04-29 15:38:06 +02:00
msiglreith 0b7f81205c Add create_compute_pipelines to device 2017-04-28 16:10:13 +02:00