Commit Graph

25 Commits

Author SHA1 Message Date
daxpedda
b7f4006e46 Bump bitflags to v2 (#2358) 2023-06-01 15:40:47 +02:00
Arman Uguray
00be08e9f8 [msl-out] Replace per_stage_map with per_entry_point_map (#2237)
The existing `per_stage_map` field of MSL backend options specifies
resource binding maps that apply to all entry points of each stage type.
It is useful to have the ability to provide a separate binding index map
for each entry point, especially when the same shader module defines
multiple entry points of the same stage kind.

This patch replaces `per_stage_map` with a new `per_entry_point_map`
option where resources are keyed by the entry-point function name.
2023-02-22 18:15:39 +01:00
teoxoy
c7d02151f0 add support for zero-initializing workgroup memory 2023-01-25 18:07:48 +01:00
Ashley
e2d688088a Support for the OVR_multiview2 WebGL extension (#1933)
* Make some (currently hacky) changes to enable multiview in webgl

* Fix ViewIndex built in for this extension

* Run cargo fmt, fix tests

* Allow specifying if we're targetting webgl in the glsl version

* Document multiview2 extension

* fn embedded -> const fn embedded

* Fix tests

* Fix benches

* Add snapshot tests

* Revamp so that the glsl options have some multiview options. Also add tests

* Make clippy happier

* Go back to having is_webgl be part of Version

* Use wgsl as input for tests

* Rename Version::new_embedded to Version::new_gles, fix glsl validation

* Run cargo fmt

* Fix brand new clippy warnings
2022-06-30 17:58:47 +01:00
Connor Fitzgerald
f5d97cae84 Adjust MSL version invariant needs 2022-01-25 13:25:48 -05:00
Dzmitry Malyshau
aea427fa92 msl: add invariance if supported 2022-01-24 09:59:45 -05:00
João Capucho
81dc67402a glsl-out: push constants use anonymous uniforms
Previously this was done with UBOs but this posed some problems when
integrating with wgpu (see https://github.com/gfx-rs/wgpu/pull/2400)
2022-01-21 21:13:12 -05:00
João Capucho
91ca923553 glsl-out: Add support for push constant emulation 2022-01-16 19:32:51 -05:00
Dzmitry Malyshau
f4ba74544a Refactor snapshot test arguments to avoid checking for deserialize feature too often.
We can safely assume that deserialize is enabled for all output tests.
Supporting other modes of operation has low utility.

This change also adds an option to skip the explicit types for WGSL output.
2021-11-26 11:36:46 -05:00
Dzmitry Malyshau
52d74e91a4 spv-out: option to emit PointSize 2021-09-15 18:48:18 -04:00
Dzmitry Malyshau
a7ac13a61d hlsl: special constants for base vertex/index 2021-07-27 01:49:03 -04:00
Dzmitry Malyshau
16206f2eb2 hlsl-out: unlock globals.wgsl test, override skybox bindings 2021-07-18 02:21:01 -04:00
Dzmitry Malyshau
51fb9bb77a hlsl-out: remap bindings 2021-07-18 02:21:01 -04:00
Dzmitry Malyshau
cfbe83e384 glsl-out: adjust coordinate space 2021-06-28 15:01:39 -04:00
Dzmitry Malyshau
57b3256020 [glsl-out] binding location mapping 2021-06-27 01:09:53 -04:00
Dzmitry Malyshau
6c1832c8ee [spv-out] be smarter about deriving capabilities, auto derive them for tests 2021-05-19 02:01:25 -04:00
Lachlan Sneff
f6da21f8dd Unify back::msl push constants map and sizes buffer (#825)
* Unify back::msl push constants map and sizes buffer

* Fix clippy warning

* Actually remove PushConstantsMap

* Update snapshots
2021-05-03 21:51:44 -04:00
Ashley
285a855e19 Impl Hash for msl::Options (#716)
* Impl `Hash` for `msl::Options`

* Remove ordered float

* [msl] derive everything on Options manually

* [msl] switch from Arena to Vec for the options

* Fix the clippy error by allowing derive_hash_xor_eq

* Fix skybox test

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2021-04-16 14:11:26 -04:00
Dzmitry Malyshau
270feb3c0f [msl] map push constants to buffers 2021-04-13 01:31:57 -04:00
Dzmitry Malyshau
e06451777e [msl] address review comments, rename SubOptions to PipelineOptions, add more inlined states 2021-04-07 22:49:13 -04:00
Dzmitry Malyshau
499f2e3cbe [msl] add a snapshot test for inline sampler 2021-04-07 22:49:13 -04:00
Dzmitry Malyshau
7c11759041 Re-use the MSL types in snapshot code 2021-04-07 22:49:13 -04:00
Dzmitry Malyshau
410c242daf [spv-out] add a flag to adjust the coordinate space 2021-04-03 11:27:21 -04:00
Dzmitry Malyshau
61d711b58f Remove the Header from IR 2021-02-14 20:23:31 -05:00
Joshua Groves
31be7099f2 Move snapshot inputs and outputs around 2021-02-07 18:16:26 -05:00