mirror of
https://github.com/denoland/deno.git
synced 2024-12-31 11:34:15 -05:00
fix(ext/webgpu): use correct IDL key name (#15278)
This commit is contained in:
parent
bc4ee59246
commit
864af52a1b
4 changed files with 28 additions and 17 deletions
|
@ -323,7 +323,13 @@
|
|||
);
|
||||
}
|
||||
}
|
||||
const requiredLimits = descriptor.requiredLimits;
|
||||
let requiredLimits = descriptor.requiredLimits;
|
||||
if (requiredLimits) {
|
||||
requiredLimits = {
|
||||
...this[_adapter].limits[_limits],
|
||||
...requiredLimits,
|
||||
};
|
||||
}
|
||||
// TODO(lucacasonato): validate requiredLimits
|
||||
|
||||
const { rid, features, limits } = await core.opAsync(
|
||||
|
|
|
@ -151,7 +151,7 @@
|
|||
// DICTIONARY: GPUDeviceDescriptor
|
||||
const dictMembersGPUDeviceDescriptor = [
|
||||
{
|
||||
key: "nonGuaranteedFeatures",
|
||||
key: "requiredFeatures",
|
||||
converter: webidl.createSequenceConverter(
|
||||
webidl.converters["GPUFeatureName"],
|
||||
),
|
||||
|
@ -160,14 +160,11 @@
|
|||
},
|
||||
},
|
||||
{
|
||||
key: "nonGuaranteedLimits",
|
||||
key: "requiredLimits",
|
||||
converter: webidl.createRecordConverter(
|
||||
webidl.converters["DOMString"],
|
||||
webidl.converters["GPUSize32"],
|
||||
),
|
||||
get defaultValue() {
|
||||
return {};
|
||||
},
|
||||
},
|
||||
];
|
||||
webidl.converters["GPUDeviceDescriptor"] = webidl.createDictionaryConverter(
|
||||
|
|
|
@ -68,12 +68,12 @@ pub struct GpuRenderPassColorAttachment {
|
|||
pub struct GpuRenderPassDepthStencilAttachment {
|
||||
view: ResourceId,
|
||||
depth_clear_value: f32,
|
||||
depth_load_op: wgpu_core::command::LoadOp,
|
||||
depth_store_op: wgpu_core::command::StoreOp,
|
||||
depth_load_op: Option<wgpu_core::command::LoadOp>,
|
||||
depth_store_op: Option<wgpu_core::command::StoreOp>,
|
||||
depth_read_only: bool,
|
||||
stencil_clear_value: u32,
|
||||
stencil_load_op: wgpu_core::command::LoadOp,
|
||||
stencil_store_op: wgpu_core::command::StoreOp,
|
||||
stencil_load_op: Option<wgpu_core::command::LoadOp>,
|
||||
stencil_store_op: Option<wgpu_core::command::StoreOp>,
|
||||
stencil_read_only: bool,
|
||||
}
|
||||
|
||||
|
@ -138,14 +138,22 @@ pub fn op_webgpu_command_encoder_begin_render_pass(
|
|||
Some(wgpu_core::command::RenderPassDepthStencilAttachment {
|
||||
view: texture_view_resource.0,
|
||||
depth: wgpu_core::command::PassChannel {
|
||||
load_op: attachment.depth_load_op,
|
||||
store_op: attachment.depth_store_op,
|
||||
load_op: attachment
|
||||
.depth_load_op
|
||||
.unwrap_or(wgpu_core::command::LoadOp::Load),
|
||||
store_op: attachment
|
||||
.depth_store_op
|
||||
.unwrap_or(wgpu_core::command::StoreOp::Store),
|
||||
clear_value: attachment.depth_clear_value,
|
||||
read_only: attachment.depth_read_only,
|
||||
},
|
||||
stencil: wgpu_core::command::PassChannel {
|
||||
load_op: attachment.stencil_load_op,
|
||||
store_op: attachment.stencil_store_op,
|
||||
load_op: attachment
|
||||
.stencil_load_op
|
||||
.unwrap_or(wgpu_core::command::LoadOp::Load),
|
||||
store_op: attachment
|
||||
.stencil_store_op
|
||||
.unwrap_or(wgpu_core::command::StoreOp::Store),
|
||||
clear_value: attachment.stencil_clear_value,
|
||||
read_only: attachment.stencil_read_only,
|
||||
},
|
||||
|
|
|
@ -408,7 +408,7 @@ pub async fn op_webgpu_request_device(
|
|||
state: Rc<RefCell<OpState>>,
|
||||
adapter_rid: ResourceId,
|
||||
label: Option<String>,
|
||||
required_features: Option<GpuRequiredFeatures>,
|
||||
required_features: GpuRequiredFeatures,
|
||||
required_limits: Option<wgpu_types::Limits>,
|
||||
) -> Result<GpuAdapterDevice, AnyError> {
|
||||
let mut state = state.borrow_mut();
|
||||
|
@ -419,8 +419,8 @@ pub async fn op_webgpu_request_device(
|
|||
|
||||
let descriptor = wgpu_types::DeviceDescriptor {
|
||||
label: label.map(Cow::from),
|
||||
features: required_features.map(Into::into).unwrap_or_default(),
|
||||
limits: required_limits.map(Into::into).unwrap_or_default(),
|
||||
features: required_features.into(),
|
||||
limits: required_limits.unwrap_or_default(),
|
||||
};
|
||||
|
||||
let (device, maybe_err) = gfx_select!(adapter => instance.adapter_request_device(
|
||||
|
|
Loading…
Reference in a new issue