Commit Graph

384 Commits

Author SHA1 Message Date
Rua
0096c75670
#1950 changelog 2022-08-11 09:50:01 +02:00
Okko Hakola
062b5e2f96
Ios fix (#1950)
* Fix iOS, use similar approach for metal layer as wgpu

* Use correct return type

* Handle ios resizing

* Add changelog notes

* Fix typo

* Update raw-window-handle

* Ensure mac changes correspond master version
2022-08-11 09:49:29 +02:00
Rua
d4e760caa7
#1949 changelog 2022-08-08 19:27:10 +02:00
Austin Johnson
e7ef60c9f8
#1947 Changelog Update 2022-08-07 21:38:11 -05:00
Rua
b11d7e0461
#1946 changelog 2022-08-07 19:27:52 +02:00
Austin Johnson
72dcbc1a28
#1945 Changelog Update 2022-08-07 05:54:41 -05:00
Rua
b0668f5a31
#1943 changelog 2022-08-07 12:48:13 +02:00
Okko Hakola
ac32c625cd
Better defaults for vulkano config (#1942)
* Better defaults for vulkano config

* Update changelog
2022-08-06 14:08:51 +02:00
Rua
e80058e63c
#1939 changelog 2022-08-01 11:08:42 +02:00
Rua
847ab583f7
#1936 changelog 2022-07-31 11:55:50 +02:00
Austin Johnson
f74cd9f7bd
#1933 Changelog Update
https://github.com/vulkano-rs/vulkano/pull/1933
2022-07-30 01:58:47 -05:00
Austin Johnson
dab8c7ef0e
#1932 Changelog Update
https://github.com/vulkano-rs/vulkano/pull/1932
2022-07-30 01:53:58 -05:00
Austin Johnson
6a8ee8d75f
Release 0.30 (#1929) 2022-07-20 03:50:41 -05:00
Rua
6d9744cf94
#1927 changelog 2022-07-18 15:12:51 +02:00
Rua
50c02e49ff
#1924 changelog 2022-07-18 14:36:21 +02:00
Okko Hakola
5e298d6bb7
Allow setting present mode in vulkano util's window renderer (#1922)
* Allow swapchain recreation with new present mode in utils

* Add doc text

* Add to changelog
2022-07-13 12:25:32 +02:00
Okko Hakola
18f68337a5
Vulkano util proposal (#1918)
* Init vulkano util library

* Add window & renderer structs

* Update fractal to use vulkano utils

* Add general purpose image view generation to storage image

* Add some missing functionality

* Fix game of life

* Rename error

* Fix tests

* Update documentation texts

* Modify license comment

* Add to changelog

* Improve docs

* Allow option to wait on the future

* Update doc text

* Add filter fn

* Modify queue selection

* Fix import error

* Remove non working tests

* Rename start and finish frame to acquire and present

* Allow pub creation of window renderer

* Ensure config members are pub and it has send + sync

* Remove send syncs
2022-06-24 17:27:33 +02:00
Austin Johnson
3ae9ec0f70
#1911 Changelog Update 2022-06-06 13:33:26 -05:00
Austin Johnson
bd53e74150
#1910 Changelog Update 2022-06-05 17:46:12 -05:00
Austin Johnson
f5f1b39008
#1908 Changelog Update 2022-06-05 17:37:47 -05:00
Austin Johnson
3d1d135c54
#1905 Changelog Update 2022-05-31 11:53:53 -05:00
Rua
de8e95075b
#1904 changelog 2022-05-29 19:28:37 +02:00
Austin Johnson
2fcfcadb9e
#1903 Changelog update 2022-05-29 11:55:28 -05:00
Austin Johnson
cf9f8d7968
#1902 Changelog update 2022-05-29 11:53:40 -05:00
Rua
eec4463ab2
#1893 changelog 2022-05-09 14:25:51 +02:00
Rua
ed69075488
#1889 changelog 2022-05-02 13:48:19 +02:00
Rua
211e4a4c16
#1888 changelog 2022-05-02 13:32:06 +02:00
Rua
a49d534843
#1886 changelog 2022-04-29 18:07:17 +02:00
Austin Johnson
ac3e431168
#1884 Changelog Update
https://github.com/vulkano-rs/vulkano/pull/1884
2022-04-23 20:16:26 -05:00
Austin Johnson
1c71883cd4
#1880 Changelog Update
https://github.com/vulkano-rs/vulkano/pull/1880
2022-04-23 19:42:25 -05:00
Rua
7b74752caa
#1873 changelog 2022-04-17 17:53:47 +02:00
Austin Johnson
5d6c61d965
#1875 #1878 Changelog updates
https://github.com/vulkano-rs/vulkano/pull/1875
https://github.com/vulkano-rs/vulkano/pull/1878
2022-04-16 07:54:05 -05:00
Rua
741a5060c2
#1868 changelog 2022-04-05 17:40:23 +02:00
Ilya Lakhin
ca007758b8 #1866 Changelog update 2022-03-28 14:29:58 +07:00
Rua
5b73d46f6d
#1862 changelog 2022-03-22 17:24:04 +01:00
Ilya Lakhin
266832223f #1859 Changelog update 2022-03-19 02:28:36 +07:00
Rua
7082c1440f
#1860 changelog 2022-03-18 17:42:20 +01:00
Rua
de1147589e
Release 0.29 (#1856) 2022-03-11 23:20:11 +07:00
Rua
b03c204aeb
#1855 changelog update 2022-03-10 20:12:05 +01:00
Ilya Lakhin
5d20cc4c1d #1853 Changelog update 2022-03-07 02:36:04 +07:00
Rua
6061fb738a
#1852 changelog 2022-02-28 09:40:58 +01:00
Rua
cd4fd1fad6
#1851 changelog 2022-02-27 22:21:15 +01:00
Rua
b0b9df4937
#1847 changelog 2022-02-27 08:50:40 +01:00
Austin Johnson
e11128758b
#1844 Changelog update
https://github.com/vulkano-rs/vulkano/pull/1844
2022-02-27 00:18:57 -06:00
Austin Johnson
9abe092615
#1843 Changelog update
https://github.com/vulkano-rs/vulkano/pull/1843
2022-02-26 06:19:19 -06:00
Austin Johnson
4c1672c253
#1842 Changelog update
https://github.com/vulkano-rs/vulkano/pull/1842
2022-02-26 02:46:57 -06:00
Austin Johnson
f2637ef16e
#1841 Changelog update
https://github.com/vulkano-rs/vulkano/pull/1841
2022-02-26 02:42:17 -06:00
Austin Johnson
01cdcc3946
#1840 Changelog update
https://github.com/vulkano-rs/vulkano/pull/1840
2022-02-25 17:53:02 -06:00
Austin Johnson
a4c9f16d40
#1839 Changelog update
https://github.com/vulkano-rs/vulkano/pull/1839
2022-02-25 17:50:34 -06:00
Austin Johnson
f6dfd16a6a
#1838 Changelog update
https://github.com/vulkano-rs/vulkano/pull/1838
2022-02-25 17:07:56 -06:00
Austin Johnson
951a6d5f31
#1836 Changelog update
https://github.com/vulkano-rs/vulkano/pull/1836
2022-02-25 16:58:14 -06:00
Austin Johnson
704796b0f3
#1834 Changelog Update
https://github.com/vulkano-rs/vulkano/pull/1834
2022-02-25 16:52:49 -06:00
Rua
faf0850ef8
#1832 changelog update 2022-02-20 10:56:43 +01:00
Austin Johnson
662c93af33
Changelog Update for #1828
https://github.com/vulkano-rs/vulkano/pull/1828
2022-02-19 18:14:21 -06:00
Austin Johnson
0eeaaf4b95
Changelog Update for #1827
https://github.com/vulkano-rs/vulkano/pull/1827
2022-02-19 17:46:56 -06:00
Rua
3ad03f8593
Update CHANGELOG.md 2022-02-14 11:38:33 +01:00
Rua
9094b9bc78
Move changes again 2022-02-14 11:38:24 +01:00
Ilya Lakhin
96d499c2b7 #1815 Changelog update 2022-02-14 17:36:55 +07:00
Rua
9144143e87
Put new changes in the right place 2022-02-14 10:42:15 +01:00
Ilya Lakhin
2bc0ea43d0 #1814 changelog update 2022-02-14 16:33:15 +07:00
Rua
33aa520706
#1824 Changelog update 2022-02-13 11:38:44 +01:00
Rua
acaa8c9be6
#1823 Changelog update 2022-02-10 22:42:25 +01:00
Rua
f19ba2d0ed
#1820 Changelog update 2022-02-09 13:11:13 +01:00
Rua
9f1ef520b5
#1822 Changelog update 2022-02-09 12:29:30 +01:00
Rua
24c0e749a5
#1821 Changelog update 2022-02-09 11:01:17 +01:00
Rua
0a45d84bba
#1817 Changelog update 2022-02-06 10:06:27 +01:00
Rua
2862f14f52
Update CHANGELOG.md 2022-02-02 13:53:59 +01:00
Rua
e7acf2aa9b
Release Vulkano 0.28 (#1810)
* Release Vulkano 0.28

* resolve unused ImageCreateFlags import on windows build

Co-authored-by: Austin Johnson <me@austinj.work>
2022-02-02 05:43:34 -06:00
Lucas Kent
9291ddc73d
Add changelog for vk-sys (#1114) 2018-11-15 23:33:17 +11:00
mitchmindtree
b88a982aac Expose CopyImageError and DrawIndexedIndirectError (#1112)
I noticed that these two were missing a pub export while reading through
the docs.
2018-11-14 22:01:06 +11:00
Lucas Kent
52a91d8910
Release vulkano 0.11 (#1086) 2018-11-08 13:19:42 +11:00
Lucas Kent
d507cf4555
* Upgrade to winit 0.18 (#1105)
*   Setup macOS travis CI.
2018-11-08 12:12:20 +11:00
Lucas Kent
64d67b5d0d
Fix and enforce line endings + stray whitespace (#1099) 2018-11-01 14:45:30 +11:00
Jonathan Steyfkens
7189c7fa84 Impl DescriptorSetCollection for vec (#1094) 2018-10-28 18:47:20 +11:00
Lucas Kent
c57289f536
refine shaders proc macro api (#1091)
macro renamed from `vulkano_shader!` to `shader!`
leave it up to the user to put it in a module
2018-10-28 10:10:29 +11:00
Lucas Kent
494a0c30c8
vulkano-shaders - proc macros 2.0 (#1062)
* vulkano_shaders_derive exposes a proc_macro instead of a proc_macro_derive
* move vulkano_shader out of vulkano_shaders_derive and deprecate vulkano_shaders_derive
* Update documentation
* Move vulkano_shader! to root of mod, so it works with rust 1.30
2018-10-26 11:15:33 +11:00
Jonathan Steyfkens
37de51eeef Remove the layout prefix of descriptions related to render pass creation (#1069) 2018-10-07 22:06:13 +11:00
Lucas Kent
50920f868b
Export features and device extensions from the device module instead of the instance module (#1015) 2018-10-06 17:11:57 +10:00
Lucas Kent
d779829cbd
vulkano-shaders cleanup (#1058)
Use syn to construct ast instead of raw strings
Move spirv searching methods from lib.rs into its own module
Improve formatting
2018-10-05 17:00:02 +10:00
Lucas Kent
b6c4d84e61
Removed mir support (#1060) 2018-10-03 07:44:48 +10:00
Lucas Kent
a42800e0ed
remove build_glsl_shaders (#1047) 2018-09-29 15:08:17 +10:00
Eric Culp
7fea44b4da Reject spirv arrays that have incorrect stride in rust (#1050)
SPIR-V allows the array stride and size of a type to differ, but rust defines them to be the same. Thus
certain types when represented in rust will have the wrong layout. E.g. an array of vec3 can have an array
stride of 16 in SPIR-V, but an array of [f32;3] in rust would have a stride of 12. Thus using one for the
other would cause corruption.

This suggests a workaround by using a wrapping struct or upgrading the size of the type to one where the size
is the array stride.

I considered generating the wrapping struct for the user, but that seems very confusing for the user. We could
generate wrapping structs for all vec and mat types in arrays, but that would be a large API change.

See #298.
2018-09-29 14:43:09 +10:00
Jakub Hlusička
d931bfdad0 Made AttributeInfo derive Copy, Clone and Debug (#1043) 2018-09-21 00:25:12 +10:00
Nicholas Lordello
b507034df7 Use shaderc instead of glsl-to-spirv for shader compilation (#947)
* Use shaderc instead of glsl-to-spirv for shader compilation
* added some setup notes
2018-09-21 00:24:24 +10:00
Jakub Hlusička
e3bfe4270c Add a reinterpret function to BufferSlice (#1038)
Add a `reinterpret` function to `BufferSlice`
2018-09-17 07:44:36 +10:00
franckv
686c02440c Fix instance_count when using draw_index with instance buffers (#1033) 2018-09-02 00:57:03 +10:00
Dave Gilbert
40e0bbf77e PersistentDescriptorSetError: Expand missing usage errors (#1021)
Expand MissingUsage into MissingBufferUsage and MissingImageUsage
each with an enum so that the usage that is missing is obvious
in the error, e.g.:

thread 'main' panicked at 'add curimage: MissingImageUsage(Storage)'

Signed-off-by: Dr. David Alan Gilbert <dave@treblig.org>
2018-08-27 07:10:36 +10:00
Lucas Kent
e21bd19bad
Publish 0.10.0 (#1013) 2018-08-12 18:42:17 +10:00
Gabriel Majeri
d80d5a6791 Fix Instance example (#872) 2018-08-11 16:48:03 +10:00
Lucas Kent
44e8207a27 Upgrade dependencies (#1012) 2018-08-10 14:50:38 +02:00
Andrew Hickman
b0832072fc Avoid allocating a DynamicState every frame (#1008)
* Avoid allocating a DynamicState every frame

* Don't mutate the DynamicState

* Undo DynamicState::dynamic_state doc change
2018-08-04 14:38:33 +02:00
Andrew Hickman
1d521d35d2 Don't force the surface to take ownership of the window (#991)
* Don't force the surface to take ownership of the window

* Update changelog
2018-07-28 15:14:37 +02:00
Lucas Kent
71d90e562a Upgrade deps + fix warnings in examples (#982)
* Upgrade dependencies

* Fix warnings in examples
2018-06-30 19:15:33 +02:00
Branan Riley
44530af81c Update winit to 0.13.1 (#953) 2018-06-05 12:58:59 +02:00
Branan Riley
d4004e1770 Allow subpass dependencies on VK_SUBPASS_EXTERNAL (#951)
This updates the asserts in `RenderPass` creation to allow
`VK_SUBPASS_EXTERNAL` as a special value in addition to any value less
than the total number of subpasses. This enables custom unsafe
implementations of `RenderPassDesc` to define their external dependencies.
2018-06-05 12:21:13 +02:00
Nicholas Lordello
37fcd507d0 Use libvulkan.dylib instead of MoltenVK by default on macOS (#948) 2018-04-19 09:48:33 +02:00
Pierre Krieger
5e73ce96a1
Publish 0.9.0 (#936) 2018-03-14 17:57:22 +01:00
Gabriel Majeri
77c76b77ed Update dependencies (#903)
* Update dependencies

* Update winit to 0.11

* Update CHANGELOG.md
2018-03-13 12:34:30 +01:00
Pierre Krieger
de19ef2e14
Publish 0.8.0 (#934) 2018-03-11 20:18:08 +01:00
Branan Riley
e9104208c4 Allow Surface to reference an external window object (#848)
* Allow Surface to reference an external window object

This makes the Surface struct generic across a Window
type, so that a surface can own (or reference, if W is
an Arc) an external window object.

This also updates vulkano-win to take advantage of this.
There is no longer a dedicated Window struct in vulkano-win.
Instead, the Surface is simply passed ownership of the
winit::Window.

This fixes #844

* Update examples for new surface API

* Update Changelog

* Remove unnecessary send/sync bounds

* Update swapchain docs for new Surface behavior
2018-02-13 14:29:36 +01:00
Pierre Krieger
aa6ce2f977
Yank version 0.7.3 (#918) 2018-02-13 12:12:08 +01:00
Pierre Krieger
2519bc915a
Publish 0.7.3 (#916)
* Publish 0.7.3

* Also publish glsl-to-spirv 0.1.4
2018-02-10 19:17:41 +01:00
Bram Buurlage
057507f7c2 Fixed issue #857 / swapchain resize causes panic (#908)
* Fixed issue #857

* Update CHANGELOG.md
2018-01-09 08:47:19 +01:00
Benjamin Saunders
52fedcf77f Simplify constructing pipelines that use dynamic buffers (#894)
* Simplify constructing pipelines that use dynamic buffers

* Simplify PipelineLayoutDescTweaks API
2017-12-14 10:26:02 +01:00
Benjamin Saunders
70013d2678 Add object name setters (#895) 2017-12-13 09:50:08 +01:00
cbbowen
bc01c79992 Expose vkCmdCopyImage (#888)
* Expose vkCmdCopyImage.

* Add copy_image to changelog
2017-11-29 22:10:43 +01:00
jansol
0ae08dceec Fix linking against MoltenVK (#880)
Starting from version 0.19.0 MoltenVK depends on IOSurface.framework
2017-11-17 12:41:02 +01:00
Branan Riley
a3a4e89778 Do not try to hardlink glslangValidator (#870)
Previously, it was possible for the hardlinked glslangValidator
to become truncated when the glsl-to-spirv crate was rebuilt. The
file would be successfully hardlinked the first time, but on
subsequent builds the hardlink attempt would fail becasue the target
already exists. This would cause the build script to fall back to
a copy, which truncates when source and dest are the same file.

This removes the hardlinking entirely, meaning that we always just
copy our built glslangValidator to where we want it. While it would
be possible to try to make the hardlinking/copying logic idempotent,
the complexity (and potential fragility to similar bugs in the
future) doesn't seem worth it to avoid one copy.

This fixes #95
2017-10-24 07:51:50 +02:00
AustinJ235
36d74eab9f Clear value validation for AutoCommandBufferBuilder::begin_render_pass() (#869)
* Clear value validation for AutoCommandBufferBuilder::begin_render_pass()

* Add changelog entry and TODO comment

* Add changelog entry
2017-10-18 19:22:23 +02:00
AustinJ235
c7d77e5d8c Allow depth/stencil images to be used with AutoCommandBufferBuilder::copy_image_to_buffer() (#868)
* Allow depth/stencil images to be used with AutoCommandBufferBuilder::copy_image_to_buffer()

* Corrected the copy_image_to_buffer() change
2017-10-16 08:20:02 +02:00
tomaka
c60265c67b Changed ShaderInterfaceMismatchError to be more verbose (#862)
* Changed `ShaderInterfaceMismatchError` to be more verbose

* Add entry to changelog
2017-10-11 19:43:25 +02:00
tomaka
c9b35bc9e2 Publish 0.7.2 (#861) 2017-10-09 14:46:41 +02:00
tomaka
82225bb3ad Added GraphicsPipelineBuilder::with_pipeline_layout (#859) 2017-10-08 17:38:58 +02:00
Benjamin Saunders
3e56a917ab Minimal command buffer debug marker support (#847)
* Minimal command buffer debug marker support

* Suppress debug marker use when the extension isn't loaded

* Update CHANGELOG

* Revert "Suppress debug marker use when the extension isn't loaded"

This reverts commit 116ea5573bfbb34956f7f180659d570fc42d33e5.

* Document required extension for debug markers

* Document debug marker safety issues
2017-10-08 17:38:51 +02:00
tomaka
b438ee919c Directly build a vkPipelineInputAssemblyStateCreateInfo in the gfx pipeline builder (#855) 2017-10-08 10:17:32 +02:00
tomaka
3b10fe87bb Changed GraphicsPipelineBuilder to default to a buffer-less vertex … (#856)
* Changed `GraphicsPipelineBuilder` to default to a buffer-less vertex input

* Fix compilation
2017-10-08 09:54:16 +02:00
tomaka
ae5cf711a0 Check the min_texel_buffer_offset_alignment limit in buffer views (#846) 2017-10-07 16:11:05 +02:00
Fabio Krapohl
14ff3db022 impl_vertex accept generic structs (#849)
* fixed macro for vertex

* Update CHANGELOG.md
2017-10-07 11:18:11 +02:00
tomaka
8c05eb6453 Publish 0.7.1 (#837) 2017-09-28 14:05:20 +02:00
tomaka
93cbe33265 Some work on correct support for multisampling (#835)
* Some work on correct support for multisampling

* Note that Multisample is deprecated
2017-09-28 13:23:53 +02:00
tomaka
e8e48daadb Fix the render pass macros when it comes to resolving attachments (#833)
* Fix trhe render pass macros when it comes to resolving attachments

* Fix single_pass_renderpass
2017-09-26 10:29:34 +02:00
Pyry Kontio
ddb66a5513 Fixed the layer scaling issue on macOS. (#830)
* Fixed the layer scaling issue on macOS. Changed the triangle example to use the surface extents instead of window dimensions, as that seems to be a more robust source of correct information.

* Updated changelog. Fixed other examples' window extent problem.
2017-09-26 10:29:26 +02:00
Icy Defiance
430cabfe90 Fixed le() and ge() for DescriptorsCount (#832)
This also fixes a potential memory leak when allocating descriptor sets
2017-09-23 20:21:14 +02:00
tomaka
089d0879f7 Publish 0.7.0 (#829)
* Publish 0.7.0

* Fix dependencies versions
2017-09-21 13:27:10 +02:00
tomaka
bf583c7ef3 is_superset_of now returns a Result (#828) 2017-09-21 10:35:59 +02:00
tomaka
be9e6dc103 Add RuntimePipelineDesc (#827)
* Add RuntimePipelineDesc

* Minor changelog fix
2017-09-20 09:47:43 +02:00
tomaka
88743a6361 Check image layout in try_gpu_lock (#816)
* [WIP] Check image layout in try_gpu_lock

* Finish implementation

* Add entry in CHANGELOG

* Fix wrong unlock with error recovery

* Improve CommandBufferExecError::AccessError to provide a hint

* Fix AttachmentImage wrong layout report
2017-09-14 16:29:11 +02:00
Benjamin Saunders
24496cc725 Bufferless vertex definition (#819)
* Bufferless vertex definition

* Define `BufferlessVertices` to enable bufferless instanced drawing

* Cleanup
2017-09-13 19:29:53 +02:00
John-John Tedro
de25bb2906 Provide 32-bit word constructor for ShaderModule (#818)
This provides the alternative constructor `ShaderModule::from_words(..)`, which uses `&[u32]` for the SPIR-V code.

`ShaderModule` currently uses an argument of type `&[u8]`, which causes interoperability issues with libraries like [shaderc][shaderc] and [rspirv][rspirv].

This is spec-compliant since the byte-code of the shader module is defined as `[..] a series of 32-bit words in host endianness.`

[shaderc]: https://docs.rs/shaderc/0.2.0/shaderc/struct.CompilationArtifact.html
[rspirv]: https://docs.rs/rspirv/0.4.0/rspirv/binary/trait.Assemble.html#tymethod.assemble
2017-09-11 12:37:48 +02:00
Christian Sdunek
fa6d56de76 Fix layer count check in swapchain constructor (#817) 2017-09-10 13:02:53 +02:00
tomaka
9abc9e431d Simplify BufferAccess and ImageAccess (#811) 2017-09-09 09:11:58 +02:00
tomaka
bdf026a78b Propagate allocation errors to CpuBufferPool::next() and chunk() (#809)
* Propagate allocation errors to CpuBufferPool::next() and chunk()

* Add entry in CHANGELOG
2017-09-09 08:55:20 +02:00
tomaka
5ac98f53f1 Publish 0.6.2 (#806) 2017-09-06 15:47:46 +02:00
tomaka
e1854da9f9 Added a changelog (#805) 2017-09-06 14:36:06 +02:00