383 Commits

Author SHA1 Message Date
teoxoy
3547138716 remove PrettyError 2024-07-02 18:06:19 +02:00
teoxoy
df7a6defa8 don't print the scope twice
The scope is already printed by the Display impl of those errors.
2024-07-02 18:06:19 +02:00
teoxoy
9ec0f45efd move the BGL compatibility check in the binder 2024-07-02 18:06:19 +02:00
teoxoy
a4bb5dff2b rename error variants that contain IDs 2024-07-02 18:06:19 +02:00
teoxoy
c3ebfde302 remove Resource trait 2024-07-02 18:06:19 +02:00
teoxoy
ae7da8f669 introduce Labeled trait 2024-07-02 18:06:19 +02:00
teoxoy
66777cc80d remove PassErrorScope::PassEncoder and id arg of PassErrorScope::Pass 2024-07-02 18:06:19 +02:00
teoxoy
d26aef554e use .error_ident() for log::trace! in render_pass_end 2024-07-02 18:06:19 +02:00
teoxoy
fc6fe76fce trace only render_pass_end_with_unresolved_commands 2024-07-02 18:06:19 +02:00
Andreas Reich
0a76c0fa84
Renderpass take resource ownership (#5884)
* share timestamp write struct

* Make name of set_push_constants methods consistently plural

* remove lifetime bounds of resources passed into render pass

* first render pass resource ownership test

* introduce dynrenderpass & immediately create ArcCommands and take ownership of resources passed on pass creation

* Use of dynrenderpass in deno

* Separate active occlusion & pipeline statitics query

* resolve render/compute command is now behind `replay` feature

* add vertex & index buffer to ownership test

* test for pipeline statistics query

* add occlusion query set to pass resource test

* add tests for resource ownership of render pass query timestamps

* RenderPass can now be made 'static just like ComputePass. Add respective test

* Extend encoder_operations_fail_while_pass_alive test to also check encoder locking errors with render passes

* improve changelog entry on lifetime bounds
2024-07-01 18:36:24 +02:00
teoxoy
92c8cf415c remove bind group id from set bind group scope
and make sure that we use `ResourceErrorIdent` in all relevant inner errors
2024-06-27 10:20:11 +02:00
teoxoy
a2c60cea4f remove render pipeline id from set render pipeline scope
and make sure that we use `ResourceErrorIdent` in all relevant inner errors
2024-06-27 10:20:11 +02:00
teoxoy
400372ff57 remove buffer id from set index/vertex buffer scopes
all relevant inner errors already print the label of the buffers
2024-06-27 10:20:11 +02:00
teoxoy
287d8ee414 move pipeline ident to appropriate errors 2024-06-27 10:20:11 +02:00
teoxoy
1e9844af29 extract execute_bundle from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
3c389b9057 resolve occlusion query set prior to render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
f7160e71ec extract write_timestamp from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
02f91167d9 extract insert_debug_marker from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
10cf23b511 extract pop_debug_group from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
4edebc6444 extract push_debug_group from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
c42c02e801 extract multi_draw_indirect_count from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
df08509306 extract multi_draw_indirect from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
e92fac087b extract draw_indexed from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
1226589f07 extract draw from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
a79ac34b15 extract set_scissor from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
b295a4578c extract set_push_constant from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
63e55cea56 extract set_viewport from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
5c941bf1f0 extract set_stencil_reference from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
49800c30de extract set_blend_constant from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
6cb18ed072 extract set_vertex_buffer from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
ae65b708fa extract set_index_buffer from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
36e5381531 extract set_pipeline from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
bc683fae3a extract set_bind_group from render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
cbe4b67367 put all state in State 2024-06-27 10:20:11 +02:00
teoxoy
8ee9df9eb3 move same device check and tracker insertion inside validate_and_begin_pipeline_statistics_query 2024-06-27 10:20:11 +02:00
teoxoy
9b4bb8b594 remove CommandBuffer.limits 2024-06-27 10:20:11 +02:00
teoxoy
3eb387f413 simplify IndexState 2024-06-27 10:20:11 +02:00
teoxoy
fb60aa86c3 use .error_ident() for api_log!s in render_pass_end_impl 2024-06-27 10:20:11 +02:00
teoxoy
5f78485f30 pass Label to ResourceInfo::new 2024-06-25 11:14:41 +02:00
teoxoy
06da3e88d0 remove IDs from QueryResetMap 2024-06-25 11:14:41 +02:00
Andreas Reich
b4c7987aa7
Separate renderpass arc resolve & renderpass consume on end (#5794) 2024-06-25 09:37:29 +02:00
teoxoy
ef2da1a6d7 rename UsageConflict to ResourceUsageCompatibilityError 2024-06-20 16:34:17 +02:00
teoxoy
aaec1c37b9 take resource lookup out of BufferUsageScope.merge_single 2024-06-20 16:34:17 +02:00
teoxoy
b0d2517bf4 change BindGroup.raw to BindGroup.try_raw 2024-06-20 16:34:17 +02:00
teoxoy
08f5eb82cd introduce TextureView.try_raw 2024-06-20 16:34:17 +02:00
teoxoy
7bd9195aa2 take resource lookup out of StatelessTracker.add_single 2024-06-20 16:34:17 +02:00
teoxoy
a024afe182 consolidate destroyed texture/buffer errors and separate them from invalid ID errors 2024-06-20 16:34:17 +02:00
teoxoy
862f19524f make check_texture_usage a texture method 2024-06-20 16:34:17 +02:00
teoxoy
87382d7133 make check_buffer_usage a buffer method 2024-06-20 16:34:17 +02:00
teoxoy
43177d78d6 replace uses of Id.backend() with A::VARIANT 2024-06-20 16:34:17 +02:00