Commit Graph

198 Commits

Author SHA1 Message Date
Rua
862593abae
Some safety checks for AutoCommandBufferBuilder::execute_commands (#1431)
* Move SubpassContents to command_buffer module, use it as parameter type instead of bool, add RenderPassState internally

* Add some safety checks to execute_commands

* Move Kind and related types to top-level module, add CommandBuffer::kind trait method, keep Kind value in AutoCommandBuffer(Builder)

* Some minor code cleanup

* Documentation update
2020-11-10 11:01:13 -06:00
Trangar
737016c047
Ran rustfmt and added rustfmt checkbox to pull req template (#1367)
* Ran rustfmt, updated PULL_REQUEST_TEMPLATE.md  and added a rustfmt check to CI

* Disabled the travis rustfmt check
2020-06-04 13:47:34 -05:00
Rua
1f27ab3ea9
AutoCommandBufferBuilder takes &mut self instead of self (#1376)
* AutoCommandBufferBuilder takes &mut self instead of self

* Changelog message
2020-06-01 09:41:42 -05:00
Austin Johnson
a4591a20cf
update examples to use ImageUsage::color_attachment instead of caps.supported_usage_flags (#1373)
* add additional ImageUsage constructors

* update examples to use ImageUsage::color_attachment instead of caps.supported_usage_flags

* fix additional usage in multi-window example

* update ignore to not include mandelbrot.png and triangle.png

* update ignore to not include mandelbrot.png and triangle.png
2020-06-01 02:10:02 -05:00
Trangar
df493136cf
Added a .boxed() function to GpuFuture to reduce boilerplate code (#1362) 2020-05-12 18:05:09 -05:00
jeffw387
315f63abe5
new function to check image/device compatibility (#1339)
* new function to check image/device compatibility

* merged master to get rustfmt changes, format all
2020-05-09 19:36:20 -05:00
Ilya Lakhin
4f89414143
Dynamic Compute Shader local size (#1357)
* Exposing additional properties from the physical device

* dynamic-local-size example

* Changelog fix

* Extra whitespaces in changelog removed
2020-05-09 10:46:12 -05:00
jdnewman85
48109761a8
Add CpuBufferPool example (#1352)
* Use traingle example as template

* Remove triangle example comments

* Switch to CpuBufferPool chunks instead of CpuAccessibleBuffer for vertex data

* rustfmt

* Keep unwrap()s on same line
2020-05-08 17:26:34 -05:00
Austin Johnson
b245e6c4dc
Update winit, half, and smallvec; Release 0.18 (#1332)
update winit, half, and smallvec; release 0.18
2020-03-11 20:48:15 -05:00
simdimdim
8ef0beaddf
Update to winit 0.21 (#1321) 2020-02-05 23:31:02 -06:00
Austin Johnson
18189e0724
implement exclusive fullscreen (#1310)
* implement exclusive fullscreen

* fullscreen ext should be device ext

* add acquire/release

* require VK_KHR_get_surface_capabilities2

* fullscreen_exclusive is now an enum; explicit acquire/release methods added; FullscreenExclusiveError added to handle errors; FullscreenExclusiveLost varients added to acquire and present related errors

* add checks for double acquire/release; require AppControlled for acquire/release functions

* update examples and tests; resolve issue with try_gpu_lock() on SwapchainImage; update changelogs
2020-02-04 18:57:16 -06:00
José Miguel Sánchez García
c620aefd29
Add 's' to dimension in Swapchain::recreate_with_dimension (#1315) 2020-01-31 16:37:05 -06:00
Austin Johnson
dd7b202e80
export swapchain aquire suboptimal (#1311) 2020-01-29 01:44:28 -06:00
Austin Johnson
9977805518
Add host_cached field to all CpuAccessibleBuffer initializers to allow the user to perfer host cached memory. 2020-01-26 08:12:44 -06:00
Austin Johnson
56728c565f
build_vk_surface now takes EventLoopWindowTarget instead of EventLoop; added multi-window example (#1303) 2020-01-24 22:09:04 -06:00
Austin Johnson
b95c058f9a
upgrade winit to 0.20 and cocoa to 0.20 2020-01-23 01:37:12 -06:00
Rua
e09588bebf Decouple descriptor sets from pipeline (#1003)
* Decoupled descriptor sets from pipeline

* Fixed error in unit test

* Fixed more

* Forgot a file

* I think it works now. Don't mind me, I'm new

* Fix new example that got added

* add changelog entry

* remove unnecessary parentheses from previous merge
2019-11-24 03:07:29 -06:00
nickwilcox
b0fb255c02 Fix descriptor set codegen for SSBO after spirv update (#1275) 2019-11-17 11:20:07 -06:00
Antonino Siena
1b2a39d3b0 Added Swapchain functions (#1268)
* Derive PartialEq for DescriptorDesc and added examples

* Added an example

* Example improvements

* Formatting issue

* Added Swapchain::with_old_swapchain() and integrated ColorSpace into Swapchain::new()

* Updated Changelog

* More docs and small improvement

* Added Swapchain::surface
2019-11-05 04:03:45 -06:00
Austin Johnson
2e6868a0c0
Downgrade Winit back to 0.19; Release Vulkano 0.16 (#1267)
* fix after revert; release 0.16

* bump shaders version
2019-11-01 10:12:17 -05:00
Austin Johnson
db8f699c5c
update travis config to prevent timeouts (#1261) 2019-10-27 11:58:32 -05:00
Austin Johnson
b5d127bbf4
Update dependencies: lazy_static, half, syn, quote & proc-macro2 (#1252)
* Update dependencies: lazy_static, half, syn, quote & proc-macro2

* bump examples winit version
2019-10-24 04:09:08 -07:00
Austin Johnson
bb8c6cee36
update winit to alpha4; resolve warnings (#1249) 2019-10-24 00:46:40 -07:00
nickwilcox
901993b390 update shader include resolution to fix issues with windows (#1248) 2019-10-23 01:04:49 -07:00
theotherphil
ea8fed21f6 Fix OutOfHostMemory error in examples (#1246)
* Fix OutOfHostMemory error in examples

* Update changelog

* Add comment

* Point to summary issue
2019-10-20 14:27:33 -07:00
David Partouche
dc73b1f469 Implementing VK_EXT_debug_utils (#1237)
* Switching from VK_EXT_debug_report to VK_EXT_debug_utls
2019-10-20 15:26:07 -05:00
Antonino Siena
2bfed3db8b Support surface creation with winit >= 0.20 (#1239)
* Version change

* Allowed surface creation with winit >= 0.20

* Latest winit version

* Migrate to latest winit

* Migrated all examples to the latest winit version

* Version increment

* Formatting change

* Removed trailing white space

* Corrected method calls

* Missing _ in OSX methods

* Minor version change

* Minor version change
2019-10-18 14:24:20 -05:00
Mitchell
70139eae76 Adding dynamic stencil values to DynamicState (#1236)
* hooked up dynamic state to the synamic stencil values

* added validation, removed introduced whitespace

* comments

* updated changelog

* updated examples

* appeasing the CI
2019-10-18 10:23:05 -05:00
Hibiki KOMINAMI
1eadd98190 replaced immidiate dimensions value to dynamic (#1238) 2019-10-03 21:14:43 +10:00
nickwilcox
85be6295d0 Add indirect draw example (#1224)
* Add indirect draw example

* fix whitespace
2019-08-03 17:42:47 +02:00
Lucas Kent
fc6ac6fec1
Fix warnings on nightly (#1213) 2019-07-02 18:25:58 +10:00
Lucas Kent
f61193293f
rustc is now making use of the fact that derefencing a null pointer is UB. Remove all null dereferences (#1209) 2019-07-02 07:02:48 +10:00
mitchmindtree
3518268b7f Add an instancing.rs example. (#1163)
* Add an `instancing.rs` example.

This is a simple-as-possible example of how to do instancing with
vulkano. The example is a direct copy of the `triangle.rs` example but
removes the comments in favour of only explaining the differences
necessary for doing instancing. Rather than drawing one triangle in the
centre of the screen, the example draws 100 instances of the triangle in
a 10x10 grid and get slightly larger across each axis.

* Add missing word to InstanceData struct description
2019-03-15 14:05:07 +11:00
Lucas Kent
defa8f8f16
Update winit and crossbeam versions (#1177) 2019-03-12 19:34:03 +11:00
Lucas Kent
a3d503a5e5
Update example deps (#1155) 2019-01-19 18:23:45 +11:00
Lucas Kent
5d7e7ace62
Run CI on windows (#1148) 2019-01-05 15:12:38 +11:00
Lucas Kent
9a08414054
Upgrade vulkano-win and vulkano-shaders to rust 2018 (#1134)
* Upgrade vulkano-shaders to rust 2018
* Upgrade vulkano-win to rust 2018
2018-12-11 18:26:04 +11:00
Lucas Kent
34eeea6b52
Upgrade examples to rust 2018 (#1131) 2018-12-07 23:35:19 +11:00
Jakub Hlusička
a9704caea9 Feature shader include (#1116)
Implement support for the include directive in shader source files
2018-11-30 13:09:13 +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
Lucas Kent
3fe7fc4495
Move shaders back that were supposed to be defined in the middle of main() { } (#1097)
They were initially moved because rust currently doesnt support
function-like proc macros in a function, but now they are wrapped in a
mod anyway.
2018-10-28 18:29:41 +11:00
Lucas Kent
9d46e08cc7
Cleanup examples (#1096)
*   replaced `.expect()` that provided no useful information with `.unwrap()`
*   used `use` consistently (all types are `use`d all functions have the parent module `use`d)
*   other formatting consistencies
2018-10-28 14:02:29 +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
2153177210
Fix wayland resize issue (#1089)
Some drivers dont enforce a swapchain extent, so you need to check for
resize events from the os and then recreate the swapchain.
I took this opportunity to refactor the examples a bunch.
I want to do some more refactoring to make things consistent but I'll
leave that for a follow up PR.
2018-10-28 08:16:30 +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
Lucas Kent
24f93feffd
Fix window resize on deferred example (#1074) 2018-10-12 19:41:19 +11:00
Lucas Kent
4633c72bab
Add push constants example (#1072) 2018-10-11 11:42:56 +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