Update samples to process events.
This CL updates the `dawn/sample` programs to call the
`dawn::native::InstanceProcessEvents` which allows things like shader
validation errors to be emitted.
Without this change the errors are never displayed.
Change-Id: I054bb4f7177c5d0c110e97409852143b2bef1e02
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/126760
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
diff --git a/src/dawn/samples/Animometer.cpp b/src/dawn/samples/Animometer.cpp
index 810abf7..9d870c9 100644
--- a/src/dawn/samples/Animometer.cpp
+++ b/src/dawn/samples/Animometer.cpp
@@ -186,6 +186,7 @@
timer->Start();
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
+ ProcessEvents();
frameCount++;
frame();
if (frameCount % 60 == 0) {
diff --git a/src/dawn/samples/CHelloTriangle.cpp b/src/dawn/samples/CHelloTriangle.cpp
index 68ec723..c3b6ab3 100644
--- a/src/dawn/samples/CHelloTriangle.cpp
+++ b/src/dawn/samples/CHelloTriangle.cpp
@@ -143,6 +143,7 @@
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
+ ProcessEvents();
frame();
utils::USleep(16000);
}
diff --git a/src/dawn/samples/ComputeBoids.cpp b/src/dawn/samples/ComputeBoids.cpp
index 86158e9..4cab8ab 100644
--- a/src/dawn/samples/ComputeBoids.cpp
+++ b/src/dawn/samples/ComputeBoids.cpp
@@ -323,6 +323,7 @@
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
+ ProcessEvents();
frame();
utils::USleep(16000);
}
diff --git a/src/dawn/samples/CppHelloTriangle.cpp b/src/dawn/samples/CppHelloTriangle.cpp
index 48e52c7..8f7299f 100644
--- a/src/dawn/samples/CppHelloTriangle.cpp
+++ b/src/dawn/samples/CppHelloTriangle.cpp
@@ -176,6 +176,7 @@
while (!ShouldQuit()) {
utils::ScopedAutoreleasePool pool;
+ ProcessEvents();
frame();
utils::USleep(16000);
}
diff --git a/src/dawn/samples/ManualSwapChainTest.cpp b/src/dawn/samples/ManualSwapChainTest.cpp
index 4d82e32..01c0c9f 100644
--- a/src/dawn/samples/ManualSwapChainTest.cpp
+++ b/src/dawn/samples/ManualSwapChainTest.cpp
@@ -339,6 +339,7 @@
while (windows.size() != 0) {
utils::ScopedAutoreleasePool pool;
glfwPollEvents();
+ wgpuInstanceProcessEvents(instance->Get());
for (auto it = windows.begin(); it != windows.end();) {
GLFWwindow* window = it->first;
diff --git a/src/dawn/samples/SampleUtils.cpp b/src/dawn/samples/SampleUtils.cpp
index f635813..0dc2eee 100644
--- a/src/dawn/samples/SampleUtils.cpp
+++ b/src/dawn/samples/SampleUtils.cpp
@@ -391,3 +391,7 @@
GLFWwindow* GetGLFWWindow() {
return window;
}
+
+void ProcessEvents() {
+ dawn::native::InstanceProcessEvents(instance->Get());
+}
diff --git a/src/dawn/samples/SampleUtils.h b/src/dawn/samples/SampleUtils.h
index 2ff351c..4776175 100644
--- a/src/dawn/samples/SampleUtils.h
+++ b/src/dawn/samples/SampleUtils.h
@@ -28,5 +28,6 @@
wgpu::TextureFormat GetPreferredSwapChainTextureFormat();
wgpu::SwapChain GetSwapChain();
wgpu::TextureView CreateDefaultDepthStencilView(const wgpu::Device& device);
+void ProcessEvents();
#endif // SRC_DAWN_SAMPLES_SAMPLEUTILS_H_