Commit Graph

3619 Commits

Author SHA1 Message Date
Rua
cd3b9d25b3
Oops 2022-12-28 11:26:36 +01:00
Rua
d6a6ff383c
#2106 changelog 2022-12-28 11:26:10 +01:00
Nik Voss
dcc1b58fab
Refactor Vertex trait to allow user-defined formats (#2106)
* Refactor Vertex trait to not rely on ShaderInterfaceEntryType::to_format and instead rely on Format provided by VertexMember trait.

* Add test for impl_vertex macro, remove tuple implementations as they do not implement Pod, minor cleanups to impl_vertex macro.

* #[derive(Vertex)] proc-macro implementation with support for format and name attributes. Tests are implemented for both attributes and inferral matching impl_vertex macro

* Rename num_elements into num_locations to make purpose clear, add helper function to calculate num_components and check them properly in BufferDefinition's VertexDefinition implementation.

* Rename num_locations back to num_elements to make distinction to locations clear. Updated VertexDefinition implementation for BuffersDefinition to support double precision formats exceeding a single location.

* Add additional validation for vertex attributes with formats exceeding their location.

* Collect unnecessary, using iterator in loop to avoid unnecessary allocations.

* Use field type directly and avoid any form of unsafe blocks.

* Match shader scalar type directly in GraphicsPipelineBuilder

* Rename impl_vertex test to fit macro name

* Add VertexMember implementatinos for nalgebra and cgmath (incl matrices).

* Add missing copyright headers to new files in proc macro crate

* Document derive vertex with field-attribute options on the Vertex trait

* Add example for vertex derive approach.

* Do not publish internal macros crate as it is re-exported by vulkano itself

* Deprecate impl_vertex and VertexMember and update documentation for Vertex accordingly

* Make format field-level attribute mandatory for derive vertex

* Update all examples to derive Vertex trait instead of impl_vertex macro

* Fix doctests by adding missing imports and re-exporting crate self as vulkano to workaround limitations of distinguishing doctests in proc-macros
2022-12-28 11:23:36 +01:00
Austin Johnson
40fc712e65
#2107 Changelog 2022-12-21 07:51:32 -06:00
Rua
0b0c4662e9
Add more support for cgmath and nalgebra types (#2107) 2022-12-21 07:50:56 -06:00
Austin Johnson
dfdb90e9a6
Remove installation of python with Windows actions (#2109)
* Remove python3 install. Install ninja with pip.

* Run actions on all branches.

* Specify cargo jobs?

* undo last commit
2022-12-21 06:20:33 -06:00
marc0246
8ed82d246e
Optimize host pool allocator (#2112) 2022-12-20 21:51:03 +01:00
marc0246
31aa5d8316
#2110 fix (#2111) 2022-12-20 18:49:54 +01:00
marc0246
8a5dedf6a7
Replicate #2098 on master (#2110) 2022-12-20 17:55:41 +01:00
Rua
6eb526322b
Fix clippy warnings from Rust 1.66 (#2105) 2022-12-18 10:23:40 -06:00
Austin Johnson
9acc2fcda6
#2104 Changelog 2022-12-18 10:22:52 -06:00
Rua
58b6e69170
Fix #2094 (#2104)
* Fix #2094

* Simplify check slightly
2022-12-18 10:22:48 -06:00
Austin Johnson
4045684c17
#2103 Changelog 2022-12-16 04:40:51 -06:00
Rua
3aca5dc190
Fix #1643 (#2103)
* Fix #1643

* Remove old code that was incorrect anyway
2022-12-16 04:40:46 -06:00
Rua
79c39ecb06
Add synchronization tracking for render pass operations (#2101) 2022-12-13 07:46:48 -06:00
Rua
10d7349556
Add basic synchronization tracking to CommandBufferBuilder (#2099) 2022-12-07 04:06:06 -06:00
Austin Johnson
def369dced
0.32.3 Changelog 2022-12-07 03:43:55 -06:00
Austin Johnson
2e3f419d2c
0.32.2 Changelog 2022-12-06 02:31:29 -06:00
Austin Johnson
1f18531901
#2096 Changelog 2022-12-02 10:17:49 -06:00
Rua
4d95604e1a
Update Ash to 0.37.1 (#2096)
* Update Ash to 0.37.1

* typo

* Add support for new shader/pipeline stages and access flags

* Small change

* Fixes

* Use ^ for version
2022-12-02 10:17:45 -06:00
Austin Johnson
93b5164b73
Fix runtime_array example (#2095) 2022-12-01 11:56:11 +01:00
Rua
ebcea02c1e
Replace lazy_static with once_cell (#2093) 2022-11-20 19:25:25 -06:00
Austin Johnson
0aae60b010
#2091 Changelog 2022-11-20 04:20:43 -06:00
Rua
4e85ce5b81
Refactor reporting of resources used in command buffers (#2091) 2022-11-20 04:20:38 -06:00
Austin Johnson
89e1c56db4
#2089 Changelog 2022-11-19 04:48:34 -06:00
Rua
1e9374f99f
Add new CommandBufferBuilder, and *CommandBuffer types (#2089) 2022-11-19 04:48:28 -06:00
Rua
fcb726f499
#2090 changelog 2022-11-19 11:32:28 +01:00
Ilya Zlobintsev
f1b9596152
Implement IntoIterator for Features, DeviceExtensions and InstanceExtensions (#2090)
* Add as_arr functions to Features and DeviceExtensions

* make as_arr const

* unit tests for as_arr

* also add test for as_arr on InstanceExtensions

* make return str static

* use IntoIterator instead of as_arr
2022-11-19 11:32:03 +01:00
Rua
708c7799b1
Refactor transfer/image command buffer commands (#2087) 2022-11-15 02:15:46 -06:00
Austin Johnson
916c0ea43d
#2086 Changelog 2022-11-15 02:05:06 -06:00
Rua
9bc69940d0
Split sync module into multiple submodules, other changes to sync (#2086) 2022-11-15 02:05:03 -06:00
Okko Hakola
6de6050764
Remove allocator from window renderer inputs (#2085) 2022-11-12 16:10:40 +01:00
Austin Johnson
7e09f59345
#2081 Changelog 2022-11-09 03:35:55 -06:00
Rua
4ccfc925fa
Refactor DescriptorRequirements (#2081) 2022-11-09 03:35:50 -06:00
Austin Johnson
021540e6b6
0.32.1 Changelog 2022-11-09 02:14:06 -06:00
Okko Hakola
facee332ec
Fix black screen on some devices in interactive examples (#2082) 2022-11-07 08:48:25 +01:00
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