diff --git a/examples/CppHelloTriangle.cpp b/examples/CppHelloTriangle.cpp index dc66746824..08fd4c54c3 100644 --- a/examples/CppHelloTriangle.cpp +++ b/examples/CppHelloTriangle.cpp @@ -106,7 +106,7 @@ void init() { wgpu::ShaderModule fsModule = utils::CreateShaderModuleFromWGSL(device, R"( [[builtin(frag_coord)]] var FragCoord : vec4; [[set(0), binding(0)]] var mySampler: sampler; - [[set(0), binding(1)]] var myTexture : texture_sampled_2d; + [[set(0), binding(1)]] var myTexture : texture_2d; [[location(0)]] var FragColor : vec4; [[stage(fragment)]] fn main() -> void { diff --git a/src/dawn_native/CopyTextureForBrowserHelper.cpp b/src/dawn_native/CopyTextureForBrowserHelper.cpp index 6bca1f1704..b8bc2a4a9d 100644 --- a/src/dawn_native/CopyTextureForBrowserHelper.cpp +++ b/src/dawn_native/CopyTextureForBrowserHelper.cpp @@ -58,7 +58,7 @@ namespace dawn_native { static const char sPassthrough2D4ChannelFrag[] = R"( [[binding(1), set(0)]] var mySampler: sampler; - [[binding(2), set(0)]] var myTexture: texture_sampled_2d; + [[binding(2), set(0)]] var myTexture: texture_2d; [[location(0)]] var v_texcoord : vec2; [[location(0)]] var rgbaColor : vec4; [[stage(fragment)]] fn main() -> void { diff --git a/src/tests/unittests/validation/BindGroupValidationTests.cpp b/src/tests/unittests/validation/BindGroupValidationTests.cpp index 8d34eadb8e..5b07aeb788 100644 --- a/src/tests/unittests/validation/BindGroupValidationTests.cpp +++ b/src/tests/unittests/validation/BindGroupValidationTests.cpp @@ -1772,11 +1772,11 @@ TEST_F(BindGroupLayoutCompatibilityTest, ROStorageInBGLWithRWStorageInShader) { TEST_F(BindGroupLayoutCompatibilityTest, TextureViewDimension) { constexpr char kTexture2DShaderFS[] = R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(fragment)]] fn main() -> void { })"; constexpr char kTexture2DShaderCS[] = R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(compute)]] fn main() -> void { })"; @@ -1809,11 +1809,11 @@ TEST_F(BindGroupLayoutCompatibilityTest, TextureViewDimension) { wgpu::TextureViewDimension::e2DArray}})})); constexpr char kTexture2DArrayShaderFS[] = R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d_array; + [[set(0), binding(0)]] var myTexture : texture_2d_array; [[stage(fragment)]] fn main() -> void { })"; constexpr char kTexture2DArrayShaderCS[] = R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d_array; + [[set(0), binding(0)]] var myTexture : texture_2d_array; [[stage(compute)]] fn main() -> void { })"; diff --git a/src/tests/unittests/validation/GetBindGroupLayoutValidationTests.cpp b/src/tests/unittests/validation/GetBindGroupLayoutValidationTests.cpp index 49376d69c1..64b5111cee 100644 --- a/src/tests/unittests/validation/GetBindGroupLayoutValidationTests.cpp +++ b/src/tests/unittests/validation/GetBindGroupLayoutValidationTests.cpp @@ -210,7 +210,7 @@ TEST_F(GetBindGroupLayoutTests, BindingType) { { binding.type = wgpu::BindingType::SampledTexture; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(fragment)]] fn main() -> void { })"); @@ -252,7 +252,7 @@ TEST_F(GetBindGroupLayoutTests, ViewDimension) { { binding.texture.viewDimension = wgpu::TextureViewDimension::e1D; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_1d; + [[set(0), binding(0)]] var myTexture : texture_1d; [[stage(fragment)]] fn main() -> void { })"); @@ -262,7 +262,7 @@ TEST_F(GetBindGroupLayoutTests, ViewDimension) { { binding.texture.viewDimension = wgpu::TextureViewDimension::e2D; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(fragment)]] fn main() -> void { })"); @@ -272,7 +272,7 @@ TEST_F(GetBindGroupLayoutTests, ViewDimension) { { binding.texture.viewDimension = wgpu::TextureViewDimension::e2DArray; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d_array; + [[set(0), binding(0)]] var myTexture : texture_2d_array; [[stage(fragment)]] fn main() -> void { })"); @@ -282,7 +282,7 @@ TEST_F(GetBindGroupLayoutTests, ViewDimension) { { binding.texture.viewDimension = wgpu::TextureViewDimension::e3D; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_3d; + [[set(0), binding(0)]] var myTexture : texture_3d; [[stage(fragment)]] fn main() -> void { })"); @@ -292,7 +292,7 @@ TEST_F(GetBindGroupLayoutTests, ViewDimension) { { binding.texture.viewDimension = wgpu::TextureViewDimension::Cube; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_cube; + [[set(0), binding(0)]] var myTexture : texture_cube; [[stage(fragment)]] fn main() -> void { })"); @@ -302,7 +302,7 @@ TEST_F(GetBindGroupLayoutTests, ViewDimension) { { binding.texture.viewDimension = wgpu::TextureViewDimension::CubeArray; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_cube_array; + [[set(0), binding(0)]] var myTexture : texture_cube_array; [[stage(fragment)]] fn main() -> void { })"); @@ -323,7 +323,7 @@ TEST_F(GetBindGroupLayoutTests, TextureComponentType) { { binding.texture.sampleType = wgpu::TextureSampleType::Float; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(fragment)]] fn main() -> void { })"); @@ -333,7 +333,7 @@ TEST_F(GetBindGroupLayoutTests, TextureComponentType) { { binding.texture.sampleType = wgpu::TextureSampleType::Sint; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(fragment)]] fn main() -> void { })"); @@ -343,7 +343,7 @@ TEST_F(GetBindGroupLayoutTests, TextureComponentType) { { binding.texture.sampleType = wgpu::TextureSampleType::Uint; wgpu::RenderPipeline pipeline = RenderPipelineFromFragmentShader(R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(fragment)]] fn main() -> void { })"); @@ -607,7 +607,7 @@ TEST_F(GetBindGroupLayoutTests, ConflictingBindingType) { // Test it is invalid to have conflicting binding texture multisampling in the shaders. TEST_F(GetBindGroupLayoutTests, ConflictingBindingTextureMultisampling) { wgpu::ShaderModule vsModule = utils::CreateShaderModuleFromWGSL(device, R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(vertex)]] fn main() -> void { })"); @@ -629,13 +629,13 @@ TEST_F(GetBindGroupLayoutTests, ConflictingBindingTextureMultisampling) { // Test it is invalid to have conflicting binding texture dimension in the shaders. TEST_F(GetBindGroupLayoutTests, ConflictingBindingViewDimension) { wgpu::ShaderModule vsModule = utils::CreateShaderModuleFromWGSL(device, R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(vertex)]] fn main() -> void { })"); wgpu::ShaderModule fsModule = utils::CreateShaderModuleFromWGSL(device, R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_3d; + [[set(0), binding(0)]] var myTexture : texture_3d; [[stage(fragment)]] fn main() -> void { })"); @@ -651,13 +651,13 @@ TEST_F(GetBindGroupLayoutTests, ConflictingBindingViewDimension) { // Test it is invalid to have conflicting binding texture component type in the shaders. TEST_F(GetBindGroupLayoutTests, ConflictingBindingTextureComponentType) { wgpu::ShaderModule vsModule = utils::CreateShaderModuleFromWGSL(device, R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(vertex)]] fn main() -> void { })"); wgpu::ShaderModule fsModule = utils::CreateShaderModuleFromWGSL(device, R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d; + [[set(0), binding(0)]] var myTexture : texture_2d; [[stage(fragment)]] fn main() -> void { })"); diff --git a/src/tests/unittests/validation/RenderPipelineValidationTests.cpp b/src/tests/unittests/validation/RenderPipelineValidationTests.cpp index f8dce0843b..aa3f7d577f 100644 --- a/src/tests/unittests/validation/RenderPipelineValidationTests.cpp +++ b/src/tests/unittests/validation/RenderPipelineValidationTests.cpp @@ -257,111 +257,102 @@ TEST_F(RenderPipelineValidationTest, SampleCountCompatibilityWithRenderPass) { // It is not allowed to use multisampled render pass and non-multisampled render pipeline. { - { - wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; - textureDescriptor.format = kColorFormat; - textureDescriptor.sampleCount = kMultisampledCount; - wgpu::Texture multisampledColorTexture = device.CreateTexture(&textureDescriptor); - utils::ComboRenderPassDescriptor renderPassDescriptor( - {multisampledColorTexture.CreateView()}); + wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; + textureDescriptor.format = kColorFormat; + textureDescriptor.sampleCount = kMultisampledCount; + wgpu::Texture multisampledColorTexture = device.CreateTexture(&textureDescriptor); + utils::ComboRenderPassDescriptor renderPassDescriptor( + {multisampledColorTexture.CreateView()}); - wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); - wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); - renderPass.SetPipeline(nonMultisampledPipeline); - renderPass.EndPass(); + wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); + wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); + renderPass.SetPipeline(nonMultisampledPipeline); + renderPass.EndPass(); - ASSERT_DEVICE_ERROR(encoder.Finish()); - } + ASSERT_DEVICE_ERROR(encoder.Finish()); + } - { - wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; - textureDescriptor.sampleCount = kMultisampledCount; - textureDescriptor.format = kDepthStencilFormat; - wgpu::Texture multisampledDepthStencilTexture = - device.CreateTexture(&textureDescriptor); - utils::ComboRenderPassDescriptor renderPassDescriptor( - {}, multisampledDepthStencilTexture.CreateView()); + { + wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; + textureDescriptor.sampleCount = kMultisampledCount; + textureDescriptor.format = kDepthStencilFormat; + wgpu::Texture multisampledDepthStencilTexture = device.CreateTexture(&textureDescriptor); + utils::ComboRenderPassDescriptor renderPassDescriptor( + {}, multisampledDepthStencilTexture.CreateView()); - wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); - wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); - renderPass.SetPipeline(nonMultisampledPipelineWithDepthStencilOnly); - renderPass.EndPass(); + wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); + wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); + renderPass.SetPipeline(nonMultisampledPipelineWithDepthStencilOnly); + renderPass.EndPass(); - ASSERT_DEVICE_ERROR(encoder.Finish()); - } + ASSERT_DEVICE_ERROR(encoder.Finish()); } // It is allowed to use multisampled render pass and multisampled render pipeline. { - { - wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; - textureDescriptor.format = kColorFormat; - textureDescriptor.sampleCount = kMultisampledCount; - wgpu::Texture multisampledColorTexture = device.CreateTexture(&textureDescriptor); - utils::ComboRenderPassDescriptor renderPassDescriptor( - {multisampledColorTexture.CreateView()}); + wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; + textureDescriptor.format = kColorFormat; + textureDescriptor.sampleCount = kMultisampledCount; + wgpu::Texture multisampledColorTexture = device.CreateTexture(&textureDescriptor); + utils::ComboRenderPassDescriptor renderPassDescriptor( + {multisampledColorTexture.CreateView()}); - wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); - wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); - renderPass.SetPipeline(multisampledPipeline); - renderPass.EndPass(); + wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); + wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); + renderPass.SetPipeline(multisampledPipeline); + renderPass.EndPass(); - encoder.Finish(); - } + encoder.Finish(); + } - { - wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; - textureDescriptor.sampleCount = kMultisampledCount; - textureDescriptor.format = kDepthStencilFormat; - wgpu::Texture multisampledDepthStencilTexture = - device.CreateTexture(&textureDescriptor); - utils::ComboRenderPassDescriptor renderPassDescriptor( - {}, multisampledDepthStencilTexture.CreateView()); + { + wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; + textureDescriptor.sampleCount = kMultisampledCount; + textureDescriptor.format = kDepthStencilFormat; + wgpu::Texture multisampledDepthStencilTexture = device.CreateTexture(&textureDescriptor); + utils::ComboRenderPassDescriptor renderPassDescriptor( + {}, multisampledDepthStencilTexture.CreateView()); - wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); - wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); - renderPass.SetPipeline(multisampledPipelineWithDepthStencilOnly); - renderPass.EndPass(); + wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); + wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); + renderPass.SetPipeline(multisampledPipelineWithDepthStencilOnly); + renderPass.EndPass(); - encoder.Finish(); - } + encoder.Finish(); } // It is not allowed to use non-multisampled render pass and multisampled render pipeline. { - { - wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; - textureDescriptor.format = kColorFormat; - textureDescriptor.sampleCount = 1; - wgpu::Texture nonMultisampledColorTexture = device.CreateTexture(&textureDescriptor); - utils::ComboRenderPassDescriptor nonMultisampledRenderPassDescriptor( - {nonMultisampledColorTexture.CreateView()}); + wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; + textureDescriptor.format = kColorFormat; + textureDescriptor.sampleCount = 1; + wgpu::Texture nonMultisampledColorTexture = device.CreateTexture(&textureDescriptor); + utils::ComboRenderPassDescriptor nonMultisampledRenderPassDescriptor( + {nonMultisampledColorTexture.CreateView()}); - wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); - wgpu::RenderPassEncoder renderPass = - encoder.BeginRenderPass(&nonMultisampledRenderPassDescriptor); - renderPass.SetPipeline(multisampledPipeline); - renderPass.EndPass(); + wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); + wgpu::RenderPassEncoder renderPass = + encoder.BeginRenderPass(&nonMultisampledRenderPassDescriptor); + renderPass.SetPipeline(multisampledPipeline); + renderPass.EndPass(); - ASSERT_DEVICE_ERROR(encoder.Finish()); - } + ASSERT_DEVICE_ERROR(encoder.Finish()); + } - { - wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; - textureDescriptor.sampleCount = 1; - textureDescriptor.format = kDepthStencilFormat; - wgpu::Texture multisampledDepthStencilTexture = - device.CreateTexture(&textureDescriptor); - utils::ComboRenderPassDescriptor renderPassDescriptor( - {}, multisampledDepthStencilTexture.CreateView()); + { + wgpu::TextureDescriptor textureDescriptor = baseTextureDescriptor; + textureDescriptor.sampleCount = 1; + textureDescriptor.format = kDepthStencilFormat; + wgpu::Texture multisampledDepthStencilTexture = device.CreateTexture(&textureDescriptor); + utils::ComboRenderPassDescriptor renderPassDescriptor( + {}, multisampledDepthStencilTexture.CreateView()); - wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); - wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); - renderPass.SetPipeline(multisampledPipelineWithDepthStencilOnly); - renderPass.EndPass(); + wgpu::CommandEncoder encoder = device.CreateCommandEncoder(); + wgpu::RenderPassEncoder renderPass = encoder.BeginRenderPass(&renderPassDescriptor); + renderPass.SetPipeline(multisampledPipelineWithDepthStencilOnly); + renderPass.EndPass(); - ASSERT_DEVICE_ERROR(encoder.Finish()); - } + ASSERT_DEVICE_ERROR(encoder.Finish()); } } @@ -406,7 +397,7 @@ TEST_F(RenderPipelineValidationTest, TextureComponentTypeCompatibility) { std::ostringstream stream; stream << R"( - [[set(0), binding(0)]] var myTexture : texture_sampled_2d<)" + [[set(0), binding(0)]] var myTexture : texture_2d<)" << kScalarTypes[i] << R"(>; [[stage(fragment)]] fn main() -> void { @@ -431,12 +422,12 @@ TEST_F(RenderPipelineValidationTest, TextureComponentTypeCompatibility) { TEST_F(RenderPipelineValidationTest, TextureViewDimensionCompatibility) { constexpr uint32_t kNumTextureViewDimensions = 6u; std::array kTextureKeywords = {{ - "texture_sampled_1d", - "texture_sampled_2d", - "texture_sampled_2d_array", - "texture_sampled_cube", - "texture_sampled_cube_array", - "texture_sampled_3d", + "texture_1d", + "texture_2d", + "texture_2d_array", + "texture_cube", + "texture_cube_array", + "texture_3d", }}; std::array kTextureViewDimensions = {{ @@ -529,22 +520,15 @@ TEST_F(RenderPipelineValidationTest, StripIndexFormatRequired) { constexpr uint32_t kNumListType = 3u; constexpr uint32_t kNumIndexFormat = 3u; - std::array kStripTopologyTypes = {{ - wgpu::PrimitiveTopology::LineStrip, - wgpu::PrimitiveTopology::TriangleStrip - }}; + std::array kStripTopologyTypes = { + {wgpu::PrimitiveTopology::LineStrip, wgpu::PrimitiveTopology::TriangleStrip}}; - std::array kListTopologyTypes = {{ - wgpu::PrimitiveTopology::PointList, - wgpu::PrimitiveTopology::LineList, - wgpu::PrimitiveTopology::TriangleList - }}; + std::array kListTopologyTypes = { + {wgpu::PrimitiveTopology::PointList, wgpu::PrimitiveTopology::LineList, + wgpu::PrimitiveTopology::TriangleList}}; - std::array kIndexFormatTypes = {{ - wgpu::IndexFormat::Undefined, - wgpu::IndexFormat::Uint16, - wgpu::IndexFormat::Uint32 - }}; + std::array kIndexFormatTypes = { + {wgpu::IndexFormat::Undefined, wgpu::IndexFormat::Uint16, wgpu::IndexFormat::Uint32}}; for (wgpu::PrimitiveTopology primitiveTopology : kStripTopologyTypes) { for (wgpu::IndexFormat indexFormat : kIndexFormatTypes) {