aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/gpurenderpassencoder.rs
Commit message (Collapse)AuthorAgeFilesLines
* Move script gpu files into webgpu folder (#34415)atbrakhi2024-11-281-250/+0
| | | Signed-off-by: atbrakhi <atbrakhi@igalia.com>
* Generate a trait abstracting over all known DOM interfaces (#34357)Josh Matthews2024-11-241-1/+1
| | | | | | | | | | | | | | | | | * script: Generate trait for all DOM interfaces and parameterize generated Methods traits over it. Signed-off-by: Josh Matthews <josh@joshmatthews.net> * script: Update trait implementations with new generic type. Signed-off-by: Josh Matthews <josh@joshmatthews.net> * Formatting. Signed-off-by: Josh Matthews <josh@joshmatthews.net> --------- Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Transform convert_* functions in gpuconvert.rs to From/TryFrom ↵Taym Haddadi2024-09-041-2/+1
| | | | | implementations (#33302) Signed-off-by: Taym <haddadi.taym@gmail.com>
* webgpu: Clean up `GPUCommandEncoders` and add some validation (#33223)Samson2024-08-301-22/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * TextureUsages::from_bits_retain Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Fixup CreateBindGroupLayout Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * GPUExtent3D checking and converting Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Cleanup GPUCommandEncoders and some TODOs Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * validate gpuorigin3d Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * validate GPUColor Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * set good expect Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* webgpu: Update wgpu and revamp RenderPass (#32665)Samson2024-07-041-131/+117
| | | | | | | | | | | | | | | | | | | | | * Update wgpu and revamp RenderPass * Set good expectations * Set one bad expectation * send_render_command * small fixups * docs * doc * Put RenderPass inside PassState * Use Pass enum for ComputePass too * fix docs
* webgpu: Update wgpu and revamp computepass (#32575)Samson2024-06-281-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Do not wait on drop, but rather wake poller thread * Update wgpu and render stuff * Set some good expectations * Update wgpu again * handle IPC error as warning * More good expectations * Some more expectations CTS does not match the spec: https://github.com/gpuweb/cts/issues/3806 * This expectations are due to other changes in servo also happening on main * Explain error_command_encoders and remove RefCell around it * fixup * store validness of passes * More good expectations * More docs * this assert is wrong * This is even more right per CTS/spec Only Command encoder state errors are allowed here, but wgpu does not exposes them. * More good expectations * One bad expectation * Fix my english
* webgpu: Move errorscopes to WGPU thread (#32304)Samson2024-05-221-7/+4
| | | | | | | | | | | | | | | | | | | | | * Prepare errorscopes logic in wgpu_thread * remove scope_id from ipc * new GPUErrors per spec * remove cotent timeline error_scope * fixup poperrorscope types * device_scope -> gpu_error and nice errors * Handle errors detection more elegantly * good expectations * new expectations * Make error_scope.errors Vec as per spec
* webgpu: Refactor webgpu crate (#32255)Samson2024-05-081-1/+1
| | | | | | | * wgpu(_core) -> wgc * Refactor webgpu crate split lib.rs into multiple modules
* webgpu: Update to wgpu 0.20 (#32173)Samson2024-05-081-17/+8
| | | | | | | | | | | * Update wgpu to 0.20 * good expectations * Throw TypeError in configure on unsupported format instead of panic * Expect * `into_command_buffer_id`,`into_command_encoder_id`
* rustdoc: Fix many rustdoc errors (#31147)Martin Robinson2024-01-221-16/+16
| | | | This fixes many rustdoc errors that occur due to raw URLs in rustdoc comments as well as unescaped Rust code that should be in backticks.
* Codegen support multiple interfaces in single webidl file & WebGPU single ↵Samson2023-09-301-3/+4
| | | | | | | | | webidl (#30448) * Codegen support multiple interfaces in single webidl file * Merge GPU*.webidl into WebGPU.webidl * Update gpu files to use WebGPUBinding module file
* Strict import formatting (grouping and granularity) (#30325)Samson2023-09-111-8/+6
| | | | | * strict imports formatting * Reformat all imports
* Upgrade whole webgpu stack (#29795)Samson2023-08-201-11/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Allow noidl files in script/dom/webidls * Upgrade wgpu to 0.16 and refresh whole webgpu implementation * Update WebGPU test expectations * misc * MutNullableDom -> DomRefCell<Option<Dom for GPUTexture * Direct use of GPUTextureDescriptor * Remove config from GPUCanvasContext * misc * finally blue color * gpubuffer "handle" error * GPU object have non-null label * gpu limits and info * use buffer_size * fix warnings * Cleanup * device destroy * fallback adapter * mach update-webgpu write webgpu commit hash in file * Mising deps in CI for webgpu tests * Updated expectations * Fixups * early reject * DomRefCell<Option<Dom -> MutNullableDom for GPUTexture
* No tracing of nop traceable fields (#29926)Samson2023-08-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add `no_trace` option to JSTraceable derive * NoTrace wrapper * Port some types to no_trace schematics * Fixing my unsafe mistakes (not tracing traceables) * Add docs & safety guards for no_trace Safety guards (trait shenanigans) guarantees safety usage of `no_trace` * Port canvas_traits to no_trace * Port servo_media to no_trace * Port net_traits to no_trace * Port style to no_trace * Port webgpu to no_trace * Port script_traits to no_trace * Port canvas_traits, devtools_traits, embedder_traits, profile_traits to no_trace * unrooted_must_root lint in seperate file * Add trace_in_no_trace_lint as script_plugin * Composable types in must_not_have_traceable * Introduced HashMapTracedValues wrapper * `HashMap<NoTrace<K>,V>`->`HashMapTracedValues<K,V>` * Port rest of servo's types to no_trace * Port html5ever, euclid, mime and http to no_trace * Port remaining externals to no_trace * Port webxr and Arc<Mutex<_>> * Fix spelling in notrace doc
* defer encoding errors to finish()Kunal Mohan2020-08-221-2/+1
|
* Record errors in GPUCommandEncoder.BeginPass() and EncoderPass.endPass()Kunal Mohan2020-08-071-40/+39
|
* Change ErrorScopeId type to NonZeroU64Kunal Mohan2020-08-031-6/+8
| | | | And extract it from WebGPURequest
* Report errors from void returning operationsKunal Mohan2020-08-011-0/+2
|
* Implement GPURenderBundleEncoder and GPURenderBundleKunal Mohan2020-07-241-8/+37
|
* Update GPUObjectBase webidl and cleanup valid flagsKunal Mohan2020-07-201-4/+4
|
* Implement GPUBuffer.mapAsync and update wgpu-coreKunal Mohan2020-06-271-102/+76
|
* Update wgpu-core and wgpu-typesKunal Mohan2020-06-191-3/+8
|
* Update wgpu-core and wgpu-typesKunal Mohan2020-06-041-10/+8
|
* Implement GPURenderPassEncoderKunal Mohan2020-06-041-0/+275
Add webidls for GPURenderPassEncoder and GPURenderEncoderBase and implement relevant methods.