Commit Graph

2540 Commits

Author SHA1 Message Date
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
Benjamin Saunders
054e76e67d Fix unnecessary CString heap alloc when loading pointers (#853) 2017-10-07 08:53:15 +02:00
tomaka
626863d7c0 Run rustfmt (#843) 2017-10-03 14:39:55 +02:00
Benjamin Saunders
d845b15ff1 Add a method to execute an arbitrary secondary vk::CommandBuffer (#842) 2017-10-03 14:19:43 +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
67650e415d Another fix for the render pass macro with resolve (#834) 2017-09-26 12:11:15 +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
0f41adfe6f Add some documentation to FixedSizeDescriptorSetsPool (#826) 2017-09-20 09:47:37 +02:00
tomaka
bfa77ca45f Use ManuallyDrop in StandardCommandPoolAlloc (#824) 2017-09-19 08:43:12 +02:00
tomaka
db78c50218 Minor warning fix in tests (#825) 2017-09-17 15:18:06 +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
tomaka
bdcc06950e Add a "contributing" section to the README (#820) 2017-09-14 15:32:00 +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
e0d700a044 Remove the unused CommandBufferBuild trait (#813) 2017-09-07 19:33:12 +02:00
tomaka
df9d2f60db Remove some TODOs (#812) 2017-09-07 19:33:04 +02:00
tomaka
885f21c96a Fix warnings in the build (#814) 2017-09-07 19:32:57 +02:00
tomaka
c70f3efb6b Add some debug assertions for set_scissor (#810) 2017-09-07 16:52:41 +02:00
tomaka
9662f8b092 Run rustfmt on the code (#807)
* Run rustfmt on the code

* Fix compilation
2017-09-06 21:35:06 +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
tomaka
80e965aef5 Fix the StdDescriptorPool being destroyed too often (#801)
* Fix the StdDescriptorPool being destroyed too often

* Add a test
2017-09-06 09:40:50 +02:00
tomaka
dffb55ecfc Update crossbeam to 0.3 (#803) 2017-09-06 09:40:43 +02:00
tomaka
6d50ef2891 Improvements for the StandardCommandPool (#800)
* Fix the Arc<StandardCommandPool> being destroyed every time

* Simplify code for alloc

* Add test
2017-09-06 09:40:19 +02:00
tomaka
883d0cb94e Allow non-snake-case for specialization constants (#799) 2017-09-04 13:16:17 +02:00
tomaka
e2b63b8184 Correctly take image mipmaps into account (#797)
* Add mipmap_dimensions() and num_mipmaps()

* Correctly check mipmaps count in blit_image

* Use num_mipmaps() in UnsafeImage

* Use mipmap_dimensions() in check_copy_buffer_image()

* Documentation and rename to max_mipmaps()
2017-09-04 13:16:06 +02:00
tomaka
9f3f2dc000 Allow non_snake_case for auto-generated structs (#796) 2017-09-02 20:04:07 +02:00
Layl
3911761c0a Fixes blitting validation (#794)
* Fixes blitting validation

* Fix blitting format type validation (#793)
2017-08-31 17:24:37 +02:00
Layl
5270ac0029 Fixes check_blit_image (#792)
Fixes inverted checks and a check on the wrong structure in `check_blit_image`
2017-08-31 07:49:34 +02:00
tomaka
5167274709 Pass a Limits struct to check_desc_against_limits (#790) 2017-08-29 18:08:41 +02:00
Jeroen Bollen
3f98247403 Implement device::QueuesIter::device(&self). (#789)
* Implement `device::QueuesIter::device(&self)`.

This function allows one to retrieve the device the queues were generated for.

* Implement `device::DeviceOwned` for device queues.

Implement `device::DeviceOwned` for `device::QueuesIter` and `device::Queue`. This does not deprecate the function `device::Queue::device(&self)` as requested by @tomake, as this would have  effects all
throughout the codebase.
2017-08-29 18:08:31 +02:00
tomaka
ac4172b397 Check the descriptor sets compatibility when drawing (#788) 2017-08-28 20:31:26 +02:00
tomaka
bbba9ee4c9 Extract the Limits struct in its own module (#785)
* Extract the Limits struct in its own module

* Fix compilation
2017-08-28 20:31:18 +02:00
tomaka
9bf5e7f252 Remove the guide examples (#784) 2017-08-28 20:31:10 +02:00
tomaka
96163e1a93 Add a test for specialization constants in a compute pipeline (#782) 2017-08-28 11:39:54 +02:00
tomaka
6c81d8081a Make the Layout generated by vulkano-shaders entirely public (#787) 2017-08-28 11:39:40 +02:00
tomaka
9227c6ba8d Remove Option in UnsafeCommandPoolAllocIter (#786) 2017-08-28 11:39:30 +02:00