gpu-dawn: note legacy methods replaced by new Surface API

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
Stephen Gutekanst 2022-02-26 20:17:35 -07:00 committed by Stephen Gutekanst
parent bb8a8c3631
commit 0925dc2e24
2 changed files with 10 additions and 1 deletions

View file

@ -223,6 +223,9 @@ MACH_EXPORT const DawnProcTable* machDawnNativeGetProcs() {
// typedef struct MachUtilsBackendBindingImpl* MachUtilsBackendBinding;
//
// This is a legacy method. If using OpenGL, it must be used to create a backend binding
// as Dawn does not yet support the WGPUSurface API for OpenGL yet. https://bugs.chromium.org/p/dawn/issues/detail?id=269&q=surface&can=2
MACH_EXPORT MachUtilsBackendBinding machUtilsCreateBinding(WGPUBackendType backendType, GLFWwindow* window, WGPUDevice device) {
wgpu::BackendType cppBackendType;
switch (backendType) {
@ -259,10 +262,14 @@ MACH_EXPORT MachUtilsBackendBinding machUtilsCreateBinding(WGPUBackendType backe
return reinterpret_cast<MachUtilsBackendBinding>(utils::CreateBinding(cppBackendType, window, device));
}
// This is a legacy method. If using OpenGL, it must be used to create a backend binding
// as Dawn does not yet support the WGPUSurface API for OpenGL yet. https://bugs.chromium.org/p/dawn/issues/detail?id=269&q=surface&can=2
MACH_EXPORT uint64_t machUtilsBackendBinding_getSwapChainImplementation(MachUtilsBackendBinding binding) {
auto self = reinterpret_cast<utils::BackendBinding*>(binding);
return self->GetSwapChainImplementation();
}
// This is a legacy method. If using OpenGL, it must be used to create a backend binding
// as Dawn does not yet support the WGPUSurface API for OpenGL yet. https://bugs.chromium.org/p/dawn/issues/detail?id=269&q=surface&can=2
MACH_EXPORT WGPUTextureFormat machUtilsBackendBinding_getPreferredSwapChainTextureFormat(MachUtilsBackendBinding binding) {
auto self = reinterpret_cast<utils::BackendBinding*>(binding);
return self->GetPreferredSwapChainTextureFormat();

View file

@ -103,8 +103,10 @@ typedef struct MachDawnNativeAdapterDiscoveryOptions_OpenGLES {
} MachDawnNativeAdapterDiscoveryOptions_OpenGLES;
// utils
//
// These are legacy methods. If using OpenGL, they must be used to create a backend binding
// as Dawn does not yet support the WGPUSurface API for OpenGL yet. https://bugs.chromium.org/p/dawn/issues/detail?id=269&q=surface&can=2
#include <GLFW/glfw3.h>
typedef struct MachUtilsBackendBindingImpl* MachUtilsBackendBinding;
MACH_EXPORT MachUtilsBackendBinding machUtilsCreateBinding(WGPUBackendType backendType, GLFWwindow* window, WGPUDevice device);
MACH_EXPORT uint64_t machUtilsBackendBinding_getSwapChainImplementation(MachUtilsBackendBinding binding);