Commit Graph

420 Commits

Author SHA1 Message Date
Bruce Mitchener
88463810dd Fix typos. 2019-06-03 14:31:17 +07:00
bors[bot]
2df6db5dd9 Merge #201
201: Add uniform buffer offset alignment constant r=kvark a=cloudhead

Fixes #158 

Also needs to be exposed in `wgpu-rs`.

Happy to change the var name to something different or shorter.

Co-authored-by: Alexis Sellier <alexis@monadic.xyz>
2019-06-01 18:57:08 +00:00
Alexis Sellier
6794333dba
Expose and validate buffer offset alignment 2019-06-01 20:25:12 +02:00
bors[bot]
803c607794 Merge #200
200: Fix Rendy memory selection r=kvark a=kvark

Fixes #199 

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-31 17:54:40 +00:00
Dzmitry Malyshau
97e630f320 Fix Rendy memory selection 2019-05-31 13:53:26 -04:00
bors[bot]
9276cd51c0 Merge #197
197: Rendy integration r=grovesNL a=kvark

Integrates with rendy-memory and rendy-descriptor.
~~Includes #195~~
Fixes #111 

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-31 11:30:33 +00:00
Dzmitry Malyshau
351432aae2 hook up rendy-memory 2019-05-30 13:34:43 -04:00
Dzmitry Malyshau
9c408f919c Hook up rendy-descriptor 2019-05-30 08:35:34 -04:00
bors[bot]
77457e408d Merge #195
195: Fix tracking and improve draw call validation r=grovesNL a=kvark

Fixes #196 

## Validation
Note: the most difficult bit is still missing - we need to know the maximum index in an index buffer. This is not meant to be done in this PR though, the logic is good enough on its own.

## Tracking
Implements a custom iterator with Drop.
Also, reset tracking of resources when a command buffer is done.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-30 03:52:21 +00:00
Dzmitry Malyshau
d01509e9a2 Fix Storage textures/buffers support 2019-05-29 23:50:29 -04:00
Dzmitry Malyshau
2614efba7c Protect mapped buffers from early destruction 2019-05-29 23:50:29 -04:00
Dzmitry Malyshau
cb6e1dba5a Force tracking side effects on drop 2019-05-29 23:50:27 -04:00
Dzmitry Malyshau
c0c2cdf31c Clear command buffer tracker 2019-05-29 23:49:29 -04:00
Dzmitry Malyshau
a6bc4420eb Don't early out on pipeline binding 2019-05-29 23:49:29 -04:00
Dzmitry Malyshau
9621fb3021 Validate vertex/instance/index buffer ranges 2019-05-29 23:49:27 -04:00
bors[bot]
ce4ef375c3 Merge #194
194: Fix compute pass barriers r=grovesNL a=kvark

Fixes #193 (supposedly)
@m4b would you be able to confirm?

Basic idea is that we treat commands inside a compute pass to follow the same rule as transfer commands. We could even go as far as alias `type ComputePassEncoderId = CommandEncoderId`, but I thought maybe we can still take advantage of a separate type. Currently it gets both the backend command buffer and the tracker from the primary encoder, only to return them back in place when the pass is done.

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-28 04:00:51 +00:00
bors[bot]
c204199dc2 Merge #192
192: add necessary windows lib files for vulkan, dx12, dx11 r=kvark a=Napokue

Introduce new argument BACKEND to specify the back-end framework in the hello_triangle_c CMake script. I will update the other examples, hello_remote_c & hello_compute_c (working on this one) in a future PR.

fix #188 

Co-authored-by: Timo de Kort <dekort.timo@gmail.com>
2019-05-27 14:41:11 +00:00
Dzmitry Malyshau
4446b81f3e Fix compute pass barriers 2019-05-26 23:55:23 -04:00
Timo de Kort
7bb528186f add DX11 support 2019-05-26 19:46:43 +02:00
Timo de Kort
9b0607973e resolve PR comments
- pass backends from the Makefile to the CMakeLists file
- add check to see if the BACKEND argument is set
- add dbghelp lib file
2019-05-26 18:23:19 +02:00
Timo de Kort
747defd01b add necessary windows lib files for vulkan/dx12
introduce new argument feature-native to specify the back-end framework
2019-05-25 18:42:59 +02:00
bors[bot]
17e555b257 Merge #191
191: Use required option for glfw3 r=kvark a=grovesNL

This is minor, but we should force glfw3 to be required for the native hello_triangle example.

Co-authored-by: Joshua Groves <josh@joshgroves.com>
2019-05-25 13:00:41 +00:00
Joshua Groves
328e53852a Use required option for glfw3 2019-05-24 23:30:28 -02:30
bors[bot]
925718ff6d Merge #183
183: Add gfx-backend-gl support r=kvark a=kyren

Also adds glutin-specific support methods to wgpu-native

Co-authored-by: kyren <kerriganw@gmail.com>
2019-05-24 18:58:09 +00:00
kyren
0fe94fc439 Only test building the gfx-backend-gl feature for now 2019-05-24 14:40:19 -04:00
bors[bot]
f6360326dd Merge #189
189: Fix typos. r=kvark a=waywardmonkeys



Co-authored-by: Bruce Mitchener <bruce.mitchener@gmail.com>
2019-05-24 14:17:36 +00:00
bors[bot]
4613275f74 Merge #190
190: Remove unused variable on Metal code path. r=kvark a=waywardmonkeys



Co-authored-by: Bruce Mitchener <bruce.mitchener@gmail.com>
2019-05-24 13:59:14 +00:00
Bruce Mitchener
1155479247 Fix typos. 2019-05-24 14:46:37 +07:00
Bruce Mitchener
b21a0c12af Remove unused variable on Metal code path. 2019-05-24 14:46:11 +07:00
bors[bot]
81b6f42941 Merge #186
186: Fix clear value filtering and integer support r=grovesNL a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-24 01:22:15 +00:00
bors[bot]
6d074b54e6 Merge #187
187: Change dynamic and vertex buffer offsets to u64 r=cormac-obrien a=kvark

This change makes offsets consistent across the board.

cc @cormac-obrien


Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-23 19:09:35 +00:00
Dzmitry Malyshau
2564332f3d Change dynamic and vertex buffer offsets to u64 2019-05-23 11:25:10 -04:00
Dzmitry Malyshau
9eddc296c3 Fix clear value filtering and integer support 2019-05-23 10:03:11 -04:00
bors[bot]
55fb05fe35 Merge #182
182: Update Makefile r=kvark a=Napokue

More Windows compliant and change "wgpu-bindings" directory to the newly named directory "ffi". Also added some variables.

Co-authored-by: Timo de Kort <tdk@quadira.com>
2019-05-22 19:39:58 +00:00
Timo de Kort
3f385a56dd update Makefile 2019-05-22 21:05:22 +02:00
kyren
af9aa78e3a Try to keep the API slightly closer to the standard API
by making InstanceId a type alias to SurfaceId
2019-05-21 17:40:41 -04:00
kyren
8680195c91 Add gfx-backend-gl support
Also adds glutin-specific support methods to wgpu-native
2019-05-19 15:10:52 -04:00
bors[bot]
5b6549febc Merge #179
179: Fix semaphore iteration on submit r=kvark a=kvark

Fixes #167 

It's a bit silly: we used to do important work in a generated iterator, but the implementation of dx12 isn't complete enough and doesn't use our iterator at all. It should be fixed on both sides.

Co-authored-by: Dzmitry Malyshau <dmalyshau@mozilla.com>
2019-05-17 05:36:15 +00:00
Dzmitry Malyshau
bd167f8fc5 Fix semaphore iteration on submit 2019-05-17 01:31:51 -04:00
bors[bot]
dd61d12203 Merge #178
178: Fix RenderPassColorAttachmentDescriptor r=kyren a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-16 05:46:12 +00:00
Dzmitry Malyshau
a9063ce3eb Fix RenderPassColorAttachmentDescriptor 2019-05-15 22:38:59 -07:00
bors[bot]
a056d2478a Merge #175
175: API update with naming, formats, and extra fields  r=grovesNL a=kvark



Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-15 07:31:42 +00:00
bors[bot]
8dc23d72be Merge #176
176: Fix command buffer and surface locking order r=grovesNL a=kvark

As with all the other locking problems, we just ensure that the locks are in the same order as the fields are in `Hub` structure. This is to be enforced at compile time with #66 
Fixes #174 

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2019-05-15 03:05:45 +00:00
Dzmitry Malyshau
1875523a6a Rust formatting pass 2019-05-14 13:00:00 -04:00
Dzmitry Malyshau
48e74e77d7 Add set_viewport 2019-05-14 12:57:03 -04:00
Dzmitry Malyshau
a6f3637c0c Debug labels 2019-05-14 12:49:10 -04:00
Dzmitry Malyshau
f024758e07 Track stencil reference 2019-05-14 11:58:10 -04:00
Dzmitry Malyshau
40ec1ac4c1 Fix command buffer and surface locking order 2019-05-14 11:13:08 -04:00
Dzmitry Malyshau
6a1dcb9565 API update with naming, formats, and extra fields 2019-05-14 10:31:25 -04:00
bors[bot]
75201773a7 Merge #165
165: Document how to run example in readme r=kvark a=rukai

This took me a while to figure out, I'm sure others would find it useful in the readme.

Co-authored-by: Rukai <rubickent@gmail.com>
2019-05-14 01:22:00 +00:00