diff options
| -rw-r--r-- | CMakeLists.txt | 11 | ||||
| -rw-r--r-- | src/gpu/gpu.h | 64 |
2 files changed, 55 insertions, 20 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 8d065d1..42c2ec0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -285,11 +285,12 @@ if(DEMO_BUILD_TESTS) src/platform.cc third_party/glfw3webgpu/glfw3webgpu.c # Link glfw3webgpu source ) - target_include_directories(test_sequence PRIVATE src ${WGPU_ROOT_INCLUDE_DIR} ${WGPU_ROOT_INCLUDE_DIR}/webgpu-headers) - target_link_libraries(test_sequence PRIVATE ${DEMO_LIBS} ${WGPU_LIBRARY} glfw) # Link glfw - add_dependencies(test_sequence generate_timeline) - add_test(NAME SequenceSystemTest COMMAND test_sequence) -endif() + target_include_directories(test_sequence PRIVATE src ${WGPU_ROOT_INCLUDE_DIR} ${WGPU_ROOT_INCLUDE_DIR}/webgpu-headers) + target_link_libraries(test_sequence PRIVATE ${DEMO_LIBS} ${WGPU_LIBRARY} glfw) + add_dependencies(test_sequence generate_timeline) + add_test(NAME SequenceSystemTest COMMAND test_sequence) + endif() + # Tools if(DEMO_BUILD_TOOLS OR DEMO_BUILD_TESTS) diff --git a/src/gpu/gpu.h b/src/gpu/gpu.h index ce233fa..0bc20b7 100644 --- a/src/gpu/gpu.h +++ b/src/gpu/gpu.h @@ -8,50 +8,79 @@ #include <cstring> // For strlen + + #if defined(DEMO_CROSS_COMPILE_WIN32) // Windows (MinGW) using wgpu-native v0.19.4.1 -#include <webgpu/webgpu.h> // Reverted to angle brackets +#include <webgpu/webgpu.h> + +#include <webgpu/wgpu.h> + + + +static inline const char *str_view(const char *str) { return str; } + + + +static inline const char *label_view(const char *str) { return str; } + + -#include <webgpu/wgpu.h> // Reverted to angle brackets -using WGPUStringView = const char *; -static inline const char *str_view(const char *str) { - return str; -} -static inline const char *label_view(const char *str) { - return str; -} #define WGPUSType_ShaderSourceWGSL WGPUSType_ShaderModuleWGSLDescriptor + + using WGPUShaderSourceWGSL = WGPUShaderModuleWGSLDescriptor; + + +#define WGPUSurfaceGetCurrentTextureStatus_SuccessOptimal WGPUSurfaceGetCurrentTextureStatus_Success + + + +#define WGPUSurfaceGetCurrentTextureStatus_SuccessSuboptimal WGPUSurfaceGetCurrentTextureStatus_Success + + + +#define WGPUCallbackMode_WaitAnyOnly 0 + + + + + #else // Native (macOS/Linux) using newer wgpu-native -#include <webgpu.h> // Reverted to angle brackets -#include <wgpu.h> // Reverted to angle brackets + +#include <webgpu.h> + +#include <wgpu.h> + + static inline WGPUStringView str_view(const char *str) { - if (!str) - return {nullptr, 0}; + if (!str) return {nullptr, 0}; return {str, strlen(str)}; + } + + static inline WGPUStringView label_view(const char *str) { #ifndef STRIP_ALL - if (!str) - return {nullptr, 0}; + if (!str) return {nullptr, 0}; return {str, strlen(str)}; @@ -62,10 +91,15 @@ static inline WGPUStringView label_view(const char *str) { return {nullptr, 0}; #endif + } + + #endif + + struct GLFWwindow; // Basic wrapper for WebGPU buffers |
