Limited availability
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The createQuerySet()
method of the GPUDevice
interface creates a GPUQuerySet
that can be used to record the results of queries on passes, such as occlusion or timestamp queries.
createQuerySet(descriptor)
Parameters
descriptor
An object containing the following properties:
count
A number specifying the number of queries to be managed by the resulting GPUQuerySet
.
label
Optional
A string providing a label that can be used to identify the object, for example in GPUError
messages or console warnings.
type
An enumerated value specifying the type of queries to be managed by the resulting GPUQuerySet
. Possible values are:
"occlusion"
Occlusion queries are available on render passes to query the number of fragment samples that pass all the per-fragment tests for a set of drawing commands (including scissor, sample mask, alpha to coverage, stencil, and depth tests). To run an occlusion query, an appropriate GPUQuerySet
must be provided as the value of the occlusionQuerySet
descriptor property when invoking GPUCommandEncoder.beginRenderPass()
to run a render pass.
"timestamp"
Timestamp queries allow applications to write timestamps to a GPUQuerySet
. To run a timestamp query, appropriate GPUQuerySet
s must be provided inside the value of the timestampWrites
descriptor property when invoking GPUCommandEncoder.beginRenderPass()
to run a render pass, or GPUCommandEncoder.beginComputePass()
to run a compute pass. Alternatively, you can run a single timestamp query at any time by invoking GPUCommandEncoder.writeTimeStamp()
with an appropriate GPUQuerySet
as a parameter.
Note: The timestamp-query
feature needs to be enabled to use timestamp queries.
A GPUQuerySet
object instance.
The following criteria must be met when calling createQuerySet()
, otherwise a GPUValidationError
is generated and an invalid GPUQuerySet
object is returned:
count
is less than or equal to 4096.The following snippet creates a GPUQuerySet
that holds 32 occlusion query results:
const querySet = device.createQuerySet({
type: "occlusion",
count: 32,
});
Specifications Browser compatibility See also
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4