mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-16 08:27:05 +00:00
Descriptorize ShaderModule
Change-Id: Ic79d00380f583485de0fb05bd47b1f869919ebe6
This commit is contained in:
committed by
Corentin Wallez
parent
3ccde9ce72
commit
df6710358b
@@ -295,15 +295,13 @@ TEST_F(WireTests, ValueArrayArgument) {
|
||||
// Test that the wire is able to send C strings
|
||||
TEST_F(WireTests, CStringArgument) {
|
||||
// Create shader module
|
||||
dawnShaderModuleBuilder shaderModuleBuilder = dawnDeviceCreateShaderModuleBuilder(device);
|
||||
dawnShaderModule shaderModule = dawnShaderModuleBuilderGetResult(shaderModuleBuilder);
|
||||
|
||||
dawnShaderModuleBuilder apiShaderModuleBuilder = api.GetNewShaderModuleBuilder();
|
||||
EXPECT_CALL(api, DeviceCreateShaderModuleBuilder(apiDevice))
|
||||
.WillOnce(Return(apiShaderModuleBuilder));
|
||||
dawnShaderModuleDescriptor descriptor;
|
||||
descriptor.nextInChain = nullptr;
|
||||
descriptor.codeSize = 0;
|
||||
dawnShaderModule shaderModule = dawnDeviceCreateShaderModule(device, &descriptor);
|
||||
|
||||
dawnShaderModule apiShaderModule = api.GetNewShaderModule();
|
||||
EXPECT_CALL(api, ShaderModuleBuilderGetResult(apiShaderModuleBuilder))
|
||||
EXPECT_CALL(api, DeviceCreateShaderModule(apiDevice, _))
|
||||
.WillOnce(Return(apiShaderModule));
|
||||
|
||||
// Create pipeline
|
||||
|
||||
@@ -25,19 +25,14 @@ class InputStateTest : public ValidationTest {
|
||||
dawn::RenderPipeline CreatePipeline(bool success, const dawn::InputState& inputState, std::string vertexSource) {
|
||||
DummyRenderPass renderpassData = CreateDummyRenderPass();
|
||||
|
||||
dawn::ShaderModuleBuilder vsModuleBuilder = AssertWillBeSuccess(device.CreateShaderModuleBuilder());
|
||||
utils::FillShaderModuleBuilder(vsModuleBuilder, dawn::ShaderStage::Vertex, vertexSource.c_str());
|
||||
dawn::ShaderModule vsModule = vsModuleBuilder.GetResult();
|
||||
|
||||
dawn::ShaderModuleBuilder fsModuleBuilder = AssertWillBeSuccess(device.CreateShaderModuleBuilder());
|
||||
utils::FillShaderModuleBuilder(fsModuleBuilder, dawn::ShaderStage::Fragment, R"(
|
||||
dawn::ShaderModule vsModule = utils::CreateShaderModule(device, dawn::ShaderStage::Vertex, vertexSource.c_str());
|
||||
dawn::ShaderModule fsModule = utils::CreateShaderModule(device, dawn::ShaderStage::Fragment, R"(
|
||||
#version 450
|
||||
layout(location = 0) out vec4 fragColor;
|
||||
void main() {
|
||||
fragColor = vec4(1.0, 0.0, 0.0, 1.0);
|
||||
}
|
||||
)");
|
||||
dawn::ShaderModule fsModule = fsModuleBuilder.GetResult();
|
||||
|
||||
dawn::RenderPipelineBuilder builder;
|
||||
if (success) {
|
||||
|
||||
@@ -27,14 +27,12 @@ class PushConstantTest : public ValidationTest {
|
||||
uint32_t constants[kMaxPushConstants] = {0};
|
||||
|
||||
void TestCreateShaderModule(bool success, std::string vertexSource) {
|
||||
dawn::ShaderModuleBuilder builder;
|
||||
dawn::ShaderModule module;
|
||||
if (success) {
|
||||
builder = AssertWillBeSuccess(device.CreateShaderModuleBuilder());
|
||||
module = utils::CreateShaderModule(device, dawn::ShaderStage::Vertex, vertexSource.c_str());
|
||||
} else {
|
||||
builder = AssertWillBeError(device.CreateShaderModuleBuilder());
|
||||
ASSERT_DEVICE_ERROR(module = utils::CreateShaderModule(device, dawn::ShaderStage::Vertex, vertexSource.c_str()));
|
||||
}
|
||||
utils::FillShaderModuleBuilder(builder, dawn::ShaderStage::Vertex, vertexSource.c_str());
|
||||
builder.GetResult();
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user