Commit Graph

3683 Commits

Author SHA1 Message Date
Rua
9220321e06
#2080 changelog 2022-11-06 08:56:20 +01:00
Scott Mansell
f2158e40e4
Allow waiting on SwapchainAcquireFuture (#2080) 2022-11-06 08:55:41 +01:00
Rua
0a15cf31c3
#2076 changelog 2022-11-05 08:52:03 +01:00
marc0246
fe01ddd5e3
CpuBufferPool revamp (#2076)
* `CpuBufferPool` revamp

* Fix oopsie

* Fix docs
2022-11-05 08:50:46 +01:00
Austin Johnson
c5c6bf0f09
#2073 Changelog 2022-11-05 00:02:32 -05:00
Rua
a984a925c4
Use actual integer bitflags for Vulkan bitflag types (#2073)
* Use actual integer bitflags for Vulkan bitflag types

* Fix doc tests

* Fix Fence and Semaphore on Win32 and Fuchsia

* Add macro for bitflags that have a corresponding enum

* Fix bug
2022-11-05 00:02:28 -05:00
marc0246
05746e8f75
Fix docs in the memory::allocator module (again) (#2077) 2022-11-03 16:42:17 +01:00
marc0246
4227629a4c
Abort on ID counter overflow (#2078) 2022-11-03 15:24:09 +01:00
Rua
99f5ec64c4
Update CHANGELOG.md 2022-11-01 07:59:58 +01:00
Rua
076bbf1062
#2074 changelog 2022-11-01 07:59:44 +01:00
vE5li
1d14f0132c
remove incorrect setting of exclusive flag (#2075) 2022-11-01 07:58:45 +01:00
Rua
1f1c2322b6
Release Vulkano 0.32.0 (#2061)
* Release Vulkano 0.32.0

* Update CHANGELOG.md

Co-authored-by: Austin Johnson <me@austinj.me>
2022-10-31 03:09:41 -05:00
marc0246
6b2d21e9f5
Fix StandardCommandBufferAllocator example docs (#2072) 2022-10-31 09:06:08 +01:00
marc0246
380e661c39
Use SmallVec for command buffer allocations (#2071) 2022-10-31 08:55:52 +01:00
marc0246
4f1452afc8
Add support for zero-sized command buffer pools (#2070) 2022-10-31 08:37:03 +01:00
marc0246
45f3eb9ac8
Implement allocator traits for Arcs (#2068) 2022-10-31 08:08:59 +01:00
marc0246
a5942a8d27
Add more usage info for allocators (#2069) 2022-10-31 08:00:55 +01:00
Rua
d1b35c0385
#2067 changelog 2022-10-31 07:59:33 +01:00
marc0246
ae2c8c3fda
Merge single layout descriptor pools and allocator (#2067) 2022-10-31 07:58:55 +01:00
Rua
753e8e1091
Now fully safe 2022-10-30 20:15:17 +01:00
marc0246
b1b396d003
Remove unneeded panic in GenericMemoryAllocator (#2066) 2022-10-30 19:30:55 +01:00
Rua
283cf9c67c
#2064 changelog 2022-10-30 19:00:14 +01:00
marc0246
11a9f83efe
Fix alignment for CpuAccessibleBuffer (#2064) 2022-10-30 18:59:44 +01:00
Rua
ffee3d8012
#2065 changelog 2022-10-30 18:40:04 +01:00
Andrei Stepanenko
22442a5e44
Update SwapchainCreateInfo image_extent doc (#2065)
Outdated mention of None
2022-10-30 18:39:21 +01:00
marc0246
3550dea3ed
Add support for the requires_dedicated_allocation flag to GenericMemoryAllocator (#2062)
* Add support for the requires dedicated flag

* Engrish
2022-10-30 18:32:39 +01:00
marc0246
143efcd440
Fix some docs in the memory::allocator module (#2063) 2022-10-30 18:31:03 +01:00
Austin Johnson
ca67fba38b
#2060 Changelog 2022-10-30 06:47:42 -05:00
Rua
76293baea8
Fix synchronization issue between command buffers (#2060) 2022-10-30 06:47:39 -05:00
Austin Johnson
22daa8c113
Fix unused import warnings on Windows (#2059)
* Fix unused import warnings on Windows

* Fix typo and fix warnings with tests
2022-10-30 11:27:58 +01:00
Rua
59a8c45563
Fix bug with surface_capabilities extension structs attached to the wrong parent struct (#2058) 2022-10-30 05:09:01 -05:00
Rua
bdcb79609e
Update render pass checks for new VUID (#2055) 2022-10-30 04:37:34 -05:00
Rua
bb971bc5c5
Remove redundant return 2022-10-30 08:10:32 +01:00
marc0246
bb495cceb1
Add validation for binding dedicated allocations (#2056) 2022-10-30 08:01:36 +01:00
marc0246
9c18a0cb23
Add missing validation to DeviceMemory (#2057) 2022-10-30 07:58:37 +01:00
Rua
f19c114759
#2051 changelog 2022-10-29 19:58:04 +02:00
Joe O'Connor
b8245dbdf3
Add async future for Fence Signal (#2051)
* Add async future for Fence Signal

* Add async future for Fence
2022-10-29 19:57:20 +02:00
Rua
015b4cda29
#2053 changelog 2022-10-29 19:34:49 +02:00
marc0246
d5d47d7757
Further improvements to command buffer allocation (#2053) 2022-10-29 19:34:07 +02:00
marc0246
118b5b289b
Add homegrown IDs for Vulkan objects (#2054) 2022-10-29 19:32:43 +02:00
Austin Johnson
c6e01446ac
#2050 Changelog 2022-10-29 05:51:59 -05:00
Rua
4b77ef0595
Add new safe Buffer and Image types containing bound memory (#2050)
* Add new safe `Buffer` and `Image` types containing bound memory

* Doc fixes

* Include sparse memory requirements in `ImageMemory`

* Properly support `subresource_layout`

* Add cache to `subresource_layout`
2022-10-29 05:50:45 -05:00
Rua
45deca7327
Fix #2047 (#2048) 2022-10-29 05:17:15 -05:00
Rua
39ec4e3da2
#2052 changelog 2022-10-28 17:51:23 +02:00
insertt
0b59b05544
Fix depth and stencil attachment check when building pipeline (#2052) 2022-10-28 17:50:48 +02:00
marc0246
8670f3d251
#1997 fixes (#2049)
* Fix big oopsies

* Fix docs

* Syntactical improvements

* Use more fitting names for some private types
2022-10-28 09:23:29 +02:00
marc0246
8a1c91f556
Make command buffer/descriptor set allocators Sync again (#2046)
* Make cmd buffer/desc set allocators `Sync` again

* Ingles
2022-10-27 20:59:47 +02:00
Rua
99aea525c0
#1997 changelog 2022-10-26 16:26:31 +02:00
marc0246
34b709547f
Memory allocation revamp (#1997)
* Add suballocators

* Add tests

* Retroactively abort `PoolAllocatorCreateInfo`

* Use const generic for `PoolAllocator`'s block size

* Move `new` and `try_into_region` to `Suballocator`

* Move `allocate_unchecked` to `Suballocator`

* Fix constructor visibility

* Move `free_size` to `Suballocator`

* Small fixes

* Merge `BumpAllocator` and `SyncBumpAllocator`

* Restrict `AllocParent::None` to tests

* Rewording

* Add dedicated allocations

* Add `Suballocator::cleanup`

* Make `free_size`s lock-free

* Add `Suballocator::largest_free_chunk`

* Add `ArrayVec`

* Remove useless `unsafe`

* Add `MemoryAllocator`

* Add `GenericMemoryAllocator`

* Small fixes

* Retroactively abort `largest_free_chunk`

* Small docs adjustments

* Rearrange

* Add `MemoryAlloc::mapped_ptr`

* Fix oopsie

* Add support for non-coherent mapped memory

* Add `DeviceOwned` subtrait to `Suballocator`

* Move granularities to suballocators, fix tests

* Add cache control

* Fix oopsie where alignment of 0 is possible

* Store `Arc<DeviceMemory>` in suballocators

* Add `MemoryAllocator::create_{buffer, image}`

* Remove `MemoryPool`

* Fix examples

* Remove `MemoryAlloc::{memory, memory_type_index}`

* Minor improvement to `AllocationCreationError`

* Add some example docs

* Add support for external memory

* Swicheroo

* Small fix

* Shorten sm names, cache atom size in suballocators

* Add config for allocation type to generic allocatr

* Engrish

* Fix a big oopsie

* Spliteroo

* Inglisch
2022-10-26 16:25:01 +02:00
Rua
f079c2bc08
#2043 #2044 additions 2022-10-24 16:53:57 +02:00