Commit graph

113 commits

Author SHA1 Message Date
Marijn Suijten 06b4f8ef35
Vulkan 1.2.175: Provisional Video Extensions (#417)
* generator: Add edegecases for broken Video extension enum variants

* Replace deprecated `make_version()` with `make_api_version()`

* generator: Use the same predicate for push_next and its traits

Some structs turn out to be root structs when their name is not in the
`root_structs` set, even when they themselves extend another struct.
This was already taken care of for `push_next` which is emitted in this
situation, but the trait referenced by `push_next`'s `T` bound is still
relying on the `extends` field to not exist in `vk.xml` at all, leading
to it not being generated despite `push_next` needing it.

Fixes: 215511f ("Implement ExtendXXX for multiple root create infos if
there are more than 1")

* Update Vulkan-Headers to 12.175

* generator: Generate low-level structs with bindgen (for vk_video)
2021-06-06 11:00:29 +02:00
Rua f5e7cfe896
Impl trait functions directly on EntryCustom/Instance/Device (#412)
* Implement EntryV1_x, InstanceV1_x, DeviceV1_x functions directly
2021-04-30 17:13:23 +02:00
Steve Wooster cb2d94c3c7 Only scan memory_type_count memory types in examples
The example code originally checked all 32 memory types even if the
instance returned fewer memory types.
2020-10-29 12:17:08 -07:00
Steve Wooster 61476184e0
Simplify example memory selection (#329)
According to specs for Device Memory (section 10.2), memory types are
topologically sorted by their property flags so the two-pass memory
type selection is unnecessary.

Co-authored-by: Steve Wooster <s.f.m.wooster@gmail.com>
2020-10-19 12:11:57 +02:00
Steve Wooster 5d5fc57746 Simplify example surface format selection
According to specs for vkGetPhysicalDeviceSurfaceFormatsKHR(), at least
one surface format must be returned, and returned formats must not be
VK_FORMAT_UNDEFINED.
2020-10-14 16:58:55 -07:00
Sebastian Aaltonen 64d1705730
Optimized example fences. Waited immediately. Now waits before reuse (next frame) (#327)
* Optimized example fences. Waited immediately. Now waits before reuse (next frame).

* rust fmt + clippy warning silenced

* Add comments for record_submit_commandbuffer

Co-authored-by: Sebastian Aaltonen <sebastian.aaltonen@unity3d.com>
Co-authored-by: Maik Klein <maikklein@googlemail.com>
2020-10-03 00:08:42 +02:00
Adrien Bennadji df504f8121 Update example to use ash-window 2020-09-04 14:05:16 -07:00
zedrian ac4d046d4b
Added VK_EXT_tooling_info extension support (#310)
* Added `VK_EXT_tooling_info` extension support.

* Formatting applied.

* cargo-clippy suggestions satisfied.

* cargo-clippy suggestions satisfied.
2020-07-02 12:10:05 +02:00
Maik Klein 4d6bb3949d
Fix clippy lints for 1.43 (#298) 2020-05-10 13:42:07 +02:00
Brian Merchant 93238e093b Use DebugUtils instead of DebugReport in example. 2020-04-29 12:20:54 -07:00
Friz64 da5de66ba4
Switch to VK_LAYER_KHRONOS_validation (#290) 2020-04-19 19:12:43 +02:00
Maik Klein c32f0dd739 Clippy lints for 1.42 2020-03-15 00:55:26 +01:00
Jonathan Plotner c105d2842c fix build errors for examples on osx (#260) 2020-01-26 09:29:52 +01:00
Maik Klein 855068323d
Address all the clippy lints (#233)
* Fix literals in vk.rs

* Address all the other clippy lints in ash

* Module level clippy lint

* More lints

* Make hashmaps generic for clippy

* Remove unused macro import
2019-10-20 17:18:40 +02:00
Benjamin Saunders 4e8090f0bb Replace version macros with const fns 2019-10-05 11:16:35 -07:00
Aaron Loucks bd69ab969c Replace mem::uninitialized with mem::zeroed
Fixes #214
2019-05-25 15:13:17 -04:00
Mac O'Brien 9139ebfd95 Formatting pass 2019-05-18 16:09:12 -05:00
Mac O'Brien 90d7218bda Return VkResult from get_physical_device_surface_support
Fixes #185
2019-05-18 15:56:26 -05:00
Maik Klein 4c1c8aa648 Remove mut 2019-03-04 10:16:56 +01:00
Maik Klein 04dbf20371 Transform the ptr chain sample into a test case 2019-03-04 09:56:53 +01:00
Maik Klein 3de2ca9a22 Implement ExtendsXXX for all builders as well 2019-02-28 10:59:46 +01:00
Maik Klein 4f7ca180f6 Implement push_next 2019-02-28 10:59:46 +01:00
Maik Klein c46a41e1d2 Replace ExtensionChain with a simple iterator 2019-02-28 10:59:46 +01:00
Maik Klein 6d72bb547d Implement extension chaining 2019-02-28 10:59:46 +01:00
Maik Klein 813e6a836e Reformat 2018-12-09 22:24:11 +01:00
Maik Klein 0b68c25801 Address validation error 2018-12-09 22:13:08 +01:00
colin f0251c157a inlining slices when on Device methods 2018-12-09 14:33:21 -06:00
colin 5422a8032d again, added use std::ptr; to lib.rs 2018-12-09 13:52:03 -06:00
colin 9fcd93b7b2 rust fmt 2018-12-09 13:41:23 -06:00
colin 752fc1f1ee missed some premature .build() calls! 2018-12-09 13:35:48 -06:00
colin ca651f07cb rustfmt 2018-12-09 08:01:13 -06:00
colin bb54ae4c5a refactored to use util::read_spv 2018-12-09 08:00:55 -06:00
colin 59dfc6e216 Merge branch 'master' into issue-142 2018-12-09 07:47:29 -06:00
Benjamin Saunders 06b9599e16 Update to latest rustfmt 2018-12-08 15:42:13 -08:00
colin 31880de8ab refactored examples 2018-12-07 13:00:27 -06:00
colin 962f1ba830 reformatting via rust fmt 2018-12-07 12:52:52 -06:00
colin cc21817445 attempt to detect endianness in bytes_to_u32_vec 2018-12-07 12:38:20 -06:00
colin 8c2424c836 refactored examples/src/lib.rs to use builders 2018-12-07 12:38:20 -06:00
colin cf60417ecc added bytes_to_u32_vec function using byteorder crate 2018-12-07 12:35:06 -06:00
colin 6f4259ee36 Merge branch 'master' of https://github.com/MaikKlein/ash into issue-142 2018-12-07 12:26:21 -06:00
colin 4858f4bceb fixed logic error in bytes_to_u32_vec 2018-12-06 13:40:25 -06:00
colin 2bb85a8d50 fixed logic bug in bytes_to_u32_vec 2018-12-06 13:38:44 -06:00
colin 046989ad75 reformatted with fmt 2018-12-06 13:18:37 -06:00
colin 2855192145 added std::ptr back in import to satisfy build checks 2018-12-06 12:58:31 -06:00
colin bac3a5bc21 using builders and Defaults in texture example 2018-12-06 08:58:12 -06: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
Matus Talcik b71dc58efb Initial support for rustfmt 2018-11-17 19:05:28 +01:00
Graham Wihlidal 6fa7d193ed Compile fixes for macOS 2018-11-16 13:39:14 +01:00