mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-05-22 23:36:20 +08:00
Renamed Gpu to GPU
This commit is contained in:
+3
-3
@@ -233,7 +233,7 @@ endmacro()
|
||||
|
||||
define_sdl_subsystem(Audio)
|
||||
define_sdl_subsystem(Video)
|
||||
define_sdl_subsystem(Gpu DEPS SDL_VIDEO)
|
||||
define_sdl_subsystem(GPU DEPS SDL_VIDEO)
|
||||
define_sdl_subsystem(Render DEPS SDL_VIDEO)
|
||||
define_sdl_subsystem(Camera DEPS SDL_VIDEO)
|
||||
define_sdl_subsystem(Joystick)
|
||||
@@ -332,7 +332,7 @@ dep_option(SDL_RENDER_D3D "Enable the Direct3D 9 render driver" ON "SDL
|
||||
dep_option(SDL_RENDER_D3D11 "Enable the Direct3D 11 render driver" ON "SDL_RENDER;SDL_DIRECTX" OFF)
|
||||
dep_option(SDL_RENDER_D3D12 "Enable the Direct3D 12 render driver" ON "SDL_RENDER;SDL_DIRECTX" OFF)
|
||||
dep_option(SDL_RENDER_METAL "Enable the Metal render driver" ON "SDL_RENDER;${APPLE}" OFF)
|
||||
set_option(SDL_RENDER_GPU "Enable the SDL_Gpu render driver" ON)
|
||||
set_option(SDL_RENDER_GPU "Enable the SDL_GPU render driver" ON)
|
||||
dep_option(SDL_VIVANTE "Use Vivante EGL video driver" ON "${UNIX_SYS};SDL_CPU_ARM32" OFF)
|
||||
dep_option(SDL_VULKAN "Enable Vulkan support" ON "SDL_VIDEO;ANDROID OR APPLE OR LINUX OR FREEBSD OR WINDOWS" OFF)
|
||||
dep_option(SDL_RENDER_VULKAN "Enable the Vulkan render driver" ON "SDL_RENDER;SDL_VULKAN" OFF)
|
||||
@@ -352,7 +352,7 @@ set_option(SDL_LIBUDEV "Enable libudev support" ON)
|
||||
set_option(SDL_ASAN "Use AddressSanitizer to detect memory errors" OFF)
|
||||
set_option(SDL_CCACHE "Use Ccache to speed up build" OFF)
|
||||
set_option(SDL_CLANG_TIDY "Run clang-tidy static analysis" OFF)
|
||||
set_option(SDL_GPU_DXVK "Build SDL_Gpu with DXVK support" OFF)
|
||||
set_option(SDL_GPU_DXVK "Build SDL_GPU with DXVK support" OFF)
|
||||
|
||||
set(SDL_VENDOR_INFO "" CACHE STRING "Vendor name and/or version to add to SDL_REVISION")
|
||||
|
||||
|
||||
+524
-524
File diff suppressed because it is too large
Load Diff
@@ -1014,7 +1014,7 @@ extern "C" {
|
||||
* force a specific target, such as "d3d11" if, say, your hardware supports
|
||||
* D3D12 but want to try using D3D11 instead.
|
||||
*
|
||||
* This hint should be set before SDL_GpuSelectBackend() is called.
|
||||
* This hint should be set before SDL_GPUSelectBackend() is called.
|
||||
*
|
||||
* \since This hint is available since SDL 3.0.0.
|
||||
*/
|
||||
|
||||
@@ -9807,15 +9807,15 @@ typedef void (APIENTRYP PFNGLUPLOADGPUMASKNVXPROC) (GLbitfield mask);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTVIEWPORTARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC) (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTSCISSORARRAYVNVXPROC) (GLuint gpu, GLuint first, GLsizei count, const GLint *v);
|
||||
typedef GLuint (APIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray);
|
||||
typedef GLuint (APIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray);
|
||||
typedef GLuint (APIENTRYP PFNGLASYNCCOPYBUFFERSUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray);
|
||||
typedef GLuint (APIENTRYP PFNGLASYNCCOPYIMAGESUBDATANVXPROC) (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glUploadGpuMaskNVX (GLbitfield mask);
|
||||
GLAPI void APIENTRY glUploadGPUMaskNVX (GLbitfield mask);
|
||||
GLAPI void APIENTRY glMulticastViewportArrayvNVX (GLuint gpu, GLuint first, GLsizei count, const GLfloat *v);
|
||||
GLAPI void APIENTRY glMulticastViewportPositionWScaleNVX (GLuint gpu, GLuint index, GLfloat xcoeff, GLfloat ycoeff);
|
||||
GLAPI void APIENTRY glMulticastScissorArrayvNVX (GLuint gpu, GLuint first, GLsizei count, const GLint *v);
|
||||
GLAPI GLuint APIENTRY glAsyncCopyBufferSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray);
|
||||
GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray);
|
||||
GLAPI GLuint APIENTRY glAsyncCopyBufferSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *fenceValueArray, GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray);
|
||||
GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, const GLuint *waitSemaphoreArray, const GLuint64 *waitValueArray, GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth, GLsizei signalSemaphoreCount, const GLuint *signalSemaphoreArray, const GLuint64 *signalValueArray);
|
||||
#endif
|
||||
#endif /* GL_NVX_gpu_multicast2 */
|
||||
|
||||
@@ -9824,11 +9824,11 @@ GLAPI GLuint APIENTRY glAsyncCopyImageSubDataNVX (GLsizei waitSemaphoreCount, co
|
||||
#define GL_LGPU_SEPARATE_STORAGE_BIT_NVX 0x0800
|
||||
#define GL_MAX_LGPU_GPUS_NVX 0x92BA
|
||||
typedef void (APIENTRYP PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data);
|
||||
typedef void (APIENTRYP PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
|
||||
typedef void (APIENTRYP PFNGLLGPUCOPYIMAGESUBDATANVXPROC) (GLuint sourceGPU, GLbitfield destinationGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
|
||||
typedef void (APIENTRYP PFNGLLGPUINTERLOCKNVXPROC) (void);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glLGPUNamedBufferSubDataNVX (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data);
|
||||
GLAPI void APIENTRY glLGPUCopyImageSubDataNVX (GLuint sourceGpu, GLbitfield destinationGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
|
||||
GLAPI void APIENTRY glLGPUCopyImageSubDataNVX (GLuint sourceGPU, GLbitfield destinationGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srxY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
|
||||
GLAPI void APIENTRY glLGPUInterlockNVX (void);
|
||||
#endif
|
||||
#endif /* GL_NVX_linked_gpu_multicast */
|
||||
@@ -9836,13 +9836,13 @@ GLAPI void APIENTRY glLGPUInterlockNVX (void);
|
||||
#ifndef GL_NVX_progress_fence
|
||||
#define GL_NVX_progress_fence 1
|
||||
typedef GLuint (APIENTRYP PFNGLCREATEPROGRESSFENCENVXPROC) (void);
|
||||
typedef void (APIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
typedef void (APIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
typedef void (APIENTRYP PFNGLSIGNALSEMAPHOREUI64NVXPROC) (GLuint signalGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
typedef void (APIENTRYP PFNGLWAITSEMAPHOREUI64NVXPROC) (GLuint waitGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
typedef void (APIENTRYP PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC) (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI GLuint APIENTRY glCreateProgressFenceNVX (void);
|
||||
GLAPI void APIENTRY glSignalSemaphoreui64NVX (GLuint signalGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
GLAPI void APIENTRY glWaitSemaphoreui64NVX (GLuint waitGpu, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
GLAPI void APIENTRY glSignalSemaphoreui64NVX (GLuint signalGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
GLAPI void APIENTRY glWaitSemaphoreui64NVX (GLuint waitGPU, GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
GLAPI void APIENTRY glClientWaitSemaphoreui64NVX (GLsizei fenceObjectCount, const GLuint *semaphoreArray, const GLuint64 *fenceValueArray);
|
||||
#endif
|
||||
#endif /* GL_NVX_progress_fence */
|
||||
@@ -10433,25 +10433,25 @@ GLAPI void APIENTRY glFramebufferTextureFaceEXT (GLenum target, GLenum attachmen
|
||||
#define GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV 0x9549
|
||||
typedef void (APIENTRYP PFNGLRENDERGPUMASKNVPROC) (GLbitfield mask);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTBUFFERSUBDATANVPROC) (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC) (GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTCOPYIMAGESUBDATANVPROC) (GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTBLITFRAMEBUFFERNVPROC) (GLuint srcGPU, GLuint dstGPU, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC) (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTBARRIERNVPROC) (void);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGpu, GLbitfield waitGpuMask);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTWAITSYNCNVPROC) (GLuint signalGPU, GLbitfield waitGPUMask);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint *params);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint *params);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLint64 *params);
|
||||
typedef void (APIENTRYP PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC) (GLuint gpu, GLuint id, GLenum pname, GLuint64 *params);
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glRenderGpuMaskNV (GLbitfield mask);
|
||||
GLAPI void APIENTRY glRenderGPUMaskNV (GLbitfield mask);
|
||||
GLAPI void APIENTRY glMulticastBufferSubDataNV (GLbitfield gpuMask, GLuint buffer, GLintptr offset, GLsizeiptr size, const void *data);
|
||||
GLAPI void APIENTRY glMulticastCopyBufferSubDataNV (GLuint readGpu, GLbitfield writeGpuMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
|
||||
GLAPI void APIENTRY glMulticastCopyImageSubDataNV (GLuint srcGpu, GLbitfield dstGpuMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
|
||||
GLAPI void APIENTRY glMulticastBlitFramebufferNV (GLuint srcGpu, GLuint dstGpu, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||
GLAPI void APIENTRY glMulticastCopyBufferSubDataNV (GLuint readGPU, GLbitfield writeGPUMask, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
|
||||
GLAPI void APIENTRY glMulticastCopyImageSubDataNV (GLuint srcGPU, GLbitfield dstGPUMask, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
|
||||
GLAPI void APIENTRY glMulticastBlitFramebufferNV (GLuint srcGPU, GLuint dstGPU, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||
GLAPI void APIENTRY glMulticastFramebufferSampleLocationsfvNV (GLuint gpu, GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v);
|
||||
GLAPI void APIENTRY glMulticastBarrierNV (void);
|
||||
GLAPI void APIENTRY glMulticastWaitSyncNV (GLuint signalGpu, GLbitfield waitGpuMask);
|
||||
GLAPI void APIENTRY glMulticastWaitSyncNV (GLuint signalGPU, GLbitfield waitGPUMask);
|
||||
GLAPI void APIENTRY glMulticastGetQueryObjectivNV (GLuint gpu, GLuint id, GLenum pname, GLint *params);
|
||||
GLAPI void APIENTRY glMulticastGetQueryObjectuivNV (GLuint gpu, GLuint id, GLenum pname, GLuint *params);
|
||||
GLAPI void APIENTRY glMulticastGetQueryObjecti64vNV (GLuint gpu, GLuint id, GLenum pname, GLint64 *params);
|
||||
|
||||
@@ -64,13 +64,13 @@ SDL_bool SDL_GetGDKDefaultUser(void *outUserHandle)
|
||||
return SDL_Unsupported();
|
||||
}
|
||||
|
||||
SDL_DECLSPEC void SDLCALL SDL_GDKSuspendGpu(SDL_GpuDevice *device);
|
||||
void SDL_GDKSuspendGpu(SDL_GpuDevice *device)
|
||||
SDL_DECLSPEC void SDLCALL SDL_GDKSuspendGPU(SDL_GPUDevice *device);
|
||||
void SDL_GDKSuspendGPU(SDL_GPUDevice *device)
|
||||
{
|
||||
}
|
||||
|
||||
SDL_DECLSPEC void SDLCALL SDL_GDKResumeGpu(SDL_GpuDevice *device);
|
||||
void SDL_GDKResumeGpu(SDL_GpuDevice *device)
|
||||
SDL_DECLSPEC void SDLCALL SDL_GDKResumeGPU(SDL_GPUDevice *device);
|
||||
void SDL_GDKResumeGPU(SDL_GPUDevice *device)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
+81
-81
@@ -1060,87 +1060,87 @@ SDL3_0.0.0 {
|
||||
SDL_wcsnstr;
|
||||
SDL_wcsstr;
|
||||
SDL_wcstol;
|
||||
SDL_CreateGpuDevice;
|
||||
SDL_CreateGpuDeviceWithProperties;
|
||||
SDL_DestroyGpuDevice;
|
||||
SDL_GetGpuDriver;
|
||||
SDL_CreateGpuComputePipeline;
|
||||
SDL_CreateGpuGraphicsPipeline;
|
||||
SDL_CreateGpuSampler;
|
||||
SDL_CreateGpuShader;
|
||||
SDL_CreateGpuTexture;
|
||||
SDL_CreateGpuBuffer;
|
||||
SDL_CreateGpuTransferBuffer;
|
||||
SDL_SetGpuBufferName;
|
||||
SDL_SetGpuTextureName;
|
||||
SDL_InsertGpuDebugLabel;
|
||||
SDL_PushGpuDebugGroup;
|
||||
SDL_PopGpuDebugGroup;
|
||||
SDL_ReleaseGpuTexture;
|
||||
SDL_ReleaseGpuSampler;
|
||||
SDL_ReleaseGpuBuffer;
|
||||
SDL_ReleaseGpuTransferBuffer;
|
||||
SDL_ReleaseGpuComputePipeline;
|
||||
SDL_ReleaseGpuShader;
|
||||
SDL_ReleaseGpuGraphicsPipeline;
|
||||
SDL_BeginGpuRenderPass;
|
||||
SDL_BindGpuGraphicsPipeline;
|
||||
SDL_SetGpuViewport;
|
||||
SDL_SetGpuScissor;
|
||||
SDL_BindGpuVertexBuffers;
|
||||
SDL_BindGpuIndexBuffer;
|
||||
SDL_BindGpuVertexSamplers;
|
||||
SDL_BindGpuVertexStorageTextures;
|
||||
SDL_BindGpuVertexStorageBuffers;
|
||||
SDL_BindGpuFragmentSamplers;
|
||||
SDL_BindGpuFragmentStorageTextures;
|
||||
SDL_BindGpuFragmentStorageBuffers;
|
||||
SDL_PushGpuVertexUniformData;
|
||||
SDL_PushGpuFragmentUniformData;
|
||||
SDL_DrawGpuIndexedPrimitives;
|
||||
SDL_DrawGpuPrimitives;
|
||||
SDL_DrawGpuPrimitivesIndirect;
|
||||
SDL_DrawGpuIndexedPrimitivesIndirect;
|
||||
SDL_EndGpuRenderPass;
|
||||
SDL_BeginGpuComputePass;
|
||||
SDL_BindGpuComputePipeline;
|
||||
SDL_BindGpuComputeStorageTextures;
|
||||
SDL_BindGpuComputeStorageBuffers;
|
||||
SDL_PushGpuComputeUniformData;
|
||||
SDL_DispatchGpuCompute;
|
||||
SDL_DispatchGpuComputeIndirect;
|
||||
SDL_EndGpuComputePass;
|
||||
SDL_MapGpuTransferBuffer;
|
||||
SDL_UnmapGpuTransferBuffer;
|
||||
SDL_BeginGpuCopyPass;
|
||||
SDL_UploadToGpuTexture;
|
||||
SDL_UploadToGpuBuffer;
|
||||
SDL_CopyGpuTextureToTexture;
|
||||
SDL_CopyGpuBufferToBuffer;
|
||||
SDL_GenerateGpuMipmaps;
|
||||
SDL_DownloadFromGpuTexture;
|
||||
SDL_DownloadFromGpuBuffer;
|
||||
SDL_EndGpuCopyPass;
|
||||
SDL_BlitGpu;
|
||||
SDL_SupportsGpuSwapchainComposition;
|
||||
SDL_SupportsGpuPresentMode;
|
||||
SDL_ClaimGpuWindow;
|
||||
SDL_UnclaimGpuWindow;
|
||||
SDL_SetGpuSwapchainParameters;
|
||||
SDL_GetGpuSwapchainTextureFormat;
|
||||
SDL_AcquireGpuCommandBuffer;
|
||||
SDL_AcquireGpuSwapchainTexture;
|
||||
SDL_SubmitGpu;
|
||||
SDL_SubmitGpuAndAcquireFence;
|
||||
SDL_WaitGpu;
|
||||
SDL_WaitGpuForFences;
|
||||
SDL_QueryGpuFence;
|
||||
SDL_ReleaseGpuFence;
|
||||
SDL_GpuTextureFormatTexelBlockSize;
|
||||
SDL_SupportsGpuTextureFormat;
|
||||
SDL_SupportsGpuSampleCount;
|
||||
SDL_GDKSuspendGpu;
|
||||
SDL_GDKResumeGpu;
|
||||
SDL_CreateGPUDevice;
|
||||
SDL_CreateGPUDeviceWithProperties;
|
||||
SDL_DestroyGPUDevice;
|
||||
SDL_GetGPUDriver;
|
||||
SDL_CreateGPUComputePipeline;
|
||||
SDL_CreateGPUGraphicsPipeline;
|
||||
SDL_CreateGPUSampler;
|
||||
SDL_CreateGPUShader;
|
||||
SDL_CreateGPUTexture;
|
||||
SDL_CreateGPUBuffer;
|
||||
SDL_CreateGPUTransferBuffer;
|
||||
SDL_SetGPUBufferName;
|
||||
SDL_SetGPUTextureName;
|
||||
SDL_InsertGPUDebugLabel;
|
||||
SDL_PushGPUDebugGroup;
|
||||
SDL_PopGPUDebugGroup;
|
||||
SDL_ReleaseGPUTexture;
|
||||
SDL_ReleaseGPUSampler;
|
||||
SDL_ReleaseGPUBuffer;
|
||||
SDL_ReleaseGPUTransferBuffer;
|
||||
SDL_ReleaseGPUComputePipeline;
|
||||
SDL_ReleaseGPUShader;
|
||||
SDL_ReleaseGPUGraphicsPipeline;
|
||||
SDL_BeginGPURenderPass;
|
||||
SDL_BindGPUGraphicsPipeline;
|
||||
SDL_SetGPUViewport;
|
||||
SDL_SetGPUScissor;
|
||||
SDL_BindGPUVertexBuffers;
|
||||
SDL_BindGPUIndexBuffer;
|
||||
SDL_BindGPUVertexSamplers;
|
||||
SDL_BindGPUVertexStorageTextures;
|
||||
SDL_BindGPUVertexStorageBuffers;
|
||||
SDL_BindGPUFragmentSamplers;
|
||||
SDL_BindGPUFragmentStorageTextures;
|
||||
SDL_BindGPUFragmentStorageBuffers;
|
||||
SDL_PushGPUVertexUniformData;
|
||||
SDL_PushGPUFragmentUniformData;
|
||||
SDL_DrawGPUIndexedPrimitives;
|
||||
SDL_DrawGPUPrimitives;
|
||||
SDL_DrawGPUPrimitivesIndirect;
|
||||
SDL_DrawGPUIndexedPrimitivesIndirect;
|
||||
SDL_EndGPURenderPass;
|
||||
SDL_BeginGPUComputePass;
|
||||
SDL_BindGPUComputePipeline;
|
||||
SDL_BindGPUComputeStorageTextures;
|
||||
SDL_BindGPUComputeStorageBuffers;
|
||||
SDL_PushGPUComputeUniformData;
|
||||
SDL_DispatchGPUCompute;
|
||||
SDL_DispatchGPUComputeIndirect;
|
||||
SDL_EndGPUComputePass;
|
||||
SDL_MapGPUTransferBuffer;
|
||||
SDL_UnmapGPUTransferBuffer;
|
||||
SDL_BeginGPUCopyPass;
|
||||
SDL_UploadToGPUTexture;
|
||||
SDL_UploadToGPUBuffer;
|
||||
SDL_CopyGPUTextureToTexture;
|
||||
SDL_CopyGPUBufferToBuffer;
|
||||
SDL_GenerateGPUMipmaps;
|
||||
SDL_DownloadFromGPUTexture;
|
||||
SDL_DownloadFromGPUBuffer;
|
||||
SDL_EndGPUCopyPass;
|
||||
SDL_BlitGPU;
|
||||
SDL_SupportsGPUSwapchainComposition;
|
||||
SDL_SupportsGPUPresentMode;
|
||||
SDL_ClaimGPUWindow;
|
||||
SDL_UnclaimGPUWindow;
|
||||
SDL_SetGPUSwapchainParameters;
|
||||
SDL_GetGPUSwapchainTextureFormat;
|
||||
SDL_AcquireGPUCommandBuffer;
|
||||
SDL_AcquireGPUSwapchainTexture;
|
||||
SDL_SubmitGPU;
|
||||
SDL_SubmitGPUAndAcquireFence;
|
||||
SDL_WaitGPU;
|
||||
SDL_WaitGPUForFences;
|
||||
SDL_QueryGPUFence;
|
||||
SDL_ReleaseGPUFence;
|
||||
SDL_GPUTextureFormatTexelBlockSize;
|
||||
SDL_SupportsGPUTextureFormat;
|
||||
SDL_SupportsGPUSampleCount;
|
||||
SDL_GDKSuspendGPU;
|
||||
SDL_GDKResumeGPU;
|
||||
# extra symbols go here (don't modify this line)
|
||||
local: *;
|
||||
};
|
||||
|
||||
@@ -1085,84 +1085,84 @@
|
||||
#define SDL_wcsnstr SDL_wcsnstr_REAL
|
||||
#define SDL_wcsstr SDL_wcsstr_REAL
|
||||
#define SDL_wcstol SDL_wcstol_REAL
|
||||
#define SDL_CreateGpuDevice SDL_CreateGpuDevice_REAL
|
||||
#define SDL_CreateGpuDeviceWithProperties SDL_CreateGpuDeviceWithProperties_REAL
|
||||
#define SDL_DestroyGpuDevice SDL_DestroyGpuDevice_REAL
|
||||
#define SDL_GetGpuDriver SDL_GetGpuDriver_REAL
|
||||
#define SDL_CreateGpuComputePipeline SDL_CreateGpuComputePipeline_REAL
|
||||
#define SDL_CreateGpuGraphicsPipeline SDL_CreateGpuGraphicsPipeline_REAL
|
||||
#define SDL_CreateGpuSampler SDL_CreateGpuSampler_REAL
|
||||
#define SDL_CreateGpuShader SDL_CreateGpuShader_REAL
|
||||
#define SDL_CreateGpuTexture SDL_CreateGpuTexture_REAL
|
||||
#define SDL_CreateGpuBuffer SDL_CreateGpuBuffer_REAL
|
||||
#define SDL_CreateGpuTransferBuffer SDL_CreateGpuTransferBuffer_REAL
|
||||
#define SDL_SetGpuBufferName SDL_SetGpuBufferName_REAL
|
||||
#define SDL_SetGpuTextureName SDL_SetGpuTextureName_REAL
|
||||
#define SDL_InsertGpuDebugLabel SDL_InsertGpuDebugLabel_REAL
|
||||
#define SDL_PushGpuDebugGroup SDL_PushGpuDebugGroup_REAL
|
||||
#define SDL_PopGpuDebugGroup SDL_PopGpuDebugGroup_REAL
|
||||
#define SDL_ReleaseGpuTexture SDL_ReleaseGpuTexture_REAL
|
||||
#define SDL_ReleaseGpuSampler SDL_ReleaseGpuSampler_REAL
|
||||
#define SDL_ReleaseGpuBuffer SDL_ReleaseGpuBuffer_REAL
|
||||
#define SDL_ReleaseGpuTransferBuffer SDL_ReleaseGpuTransferBuffer_REAL
|
||||
#define SDL_ReleaseGpuComputePipeline SDL_ReleaseGpuComputePipeline_REAL
|
||||
#define SDL_ReleaseGpuShader SDL_ReleaseGpuShader_REAL
|
||||
#define SDL_ReleaseGpuGraphicsPipeline SDL_ReleaseGpuGraphicsPipeline_REAL
|
||||
#define SDL_BeginGpuRenderPass SDL_BeginGpuRenderPass_REAL
|
||||
#define SDL_BindGpuGraphicsPipeline SDL_BindGpuGraphicsPipeline_REAL
|
||||
#define SDL_SetGpuViewport SDL_SetGpuViewport_REAL
|
||||
#define SDL_SetGpuScissor SDL_SetGpuScissor_REAL
|
||||
#define SDL_BindGpuVertexBuffers SDL_BindGpuVertexBuffers_REAL
|
||||
#define SDL_BindGpuIndexBuffer SDL_BindGpuIndexBuffer_REAL
|
||||
#define SDL_BindGpuVertexSamplers SDL_BindGpuVertexSamplers_REAL
|
||||
#define SDL_BindGpuVertexStorageTextures SDL_BindGpuVertexStorageTextures_REAL
|
||||
#define SDL_BindGpuVertexStorageBuffers SDL_BindGpuVertexStorageBuffers_REAL
|
||||
#define SDL_BindGpuFragmentSamplers SDL_BindGpuFragmentSamplers_REAL
|
||||
#define SDL_BindGpuFragmentStorageTextures SDL_BindGpuFragmentStorageTextures_REAL
|
||||
#define SDL_BindGpuFragmentStorageBuffers SDL_BindGpuFragmentStorageBuffers_REAL
|
||||
#define SDL_PushGpuVertexUniformData SDL_PushGpuVertexUniformData_REAL
|
||||
#define SDL_PushGpuFragmentUniformData SDL_PushGpuFragmentUniformData_REAL
|
||||
#define SDL_DrawGpuIndexedPrimitives SDL_DrawGpuIndexedPrimitives_REAL
|
||||
#define SDL_DrawGpuPrimitives SDL_DrawGpuPrimitives_REAL
|
||||
#define SDL_DrawGpuPrimitivesIndirect SDL_DrawGpuPrimitivesIndirect_REAL
|
||||
#define SDL_DrawGpuIndexedPrimitivesIndirect SDL_DrawGpuIndexedPrimitivesIndirect_REAL
|
||||
#define SDL_EndGpuRenderPass SDL_EndGpuRenderPass_REAL
|
||||
#define SDL_BeginGpuComputePass SDL_BeginGpuComputePass_REAL
|
||||
#define SDL_BindGpuComputePipeline SDL_BindGpuComputePipeline_REAL
|
||||
#define SDL_BindGpuComputeStorageTextures SDL_BindGpuComputeStorageTextures_REAL
|
||||
#define SDL_BindGpuComputeStorageBuffers SDL_BindGpuComputeStorageBuffers_REAL
|
||||
#define SDL_PushGpuComputeUniformData SDL_PushGpuComputeUniformData_REAL
|
||||
#define SDL_DispatchGpuCompute SDL_DispatchGpuCompute_REAL
|
||||
#define SDL_DispatchGpuComputeIndirect SDL_DispatchGpuComputeIndirect_REAL
|
||||
#define SDL_EndGpuComputePass SDL_EndGpuComputePass_REAL
|
||||
#define SDL_MapGpuTransferBuffer SDL_MapGpuTransferBuffer_REAL
|
||||
#define SDL_UnmapGpuTransferBuffer SDL_UnmapGpuTransferBuffer_REAL
|
||||
#define SDL_BeginGpuCopyPass SDL_BeginGpuCopyPass_REAL
|
||||
#define SDL_UploadToGpuTexture SDL_UploadToGpuTexture_REAL
|
||||
#define SDL_UploadToGpuBuffer SDL_UploadToGpuBuffer_REAL
|
||||
#define SDL_CopyGpuTextureToTexture SDL_CopyGpuTextureToTexture_REAL
|
||||
#define SDL_CopyGpuBufferToBuffer SDL_CopyGpuBufferToBuffer_REAL
|
||||
#define SDL_GenerateGpuMipmaps SDL_GenerateGpuMipmaps_REAL
|
||||
#define SDL_DownloadFromGpuTexture SDL_DownloadFromGpuTexture_REAL
|
||||
#define SDL_DownloadFromGpuBuffer SDL_DownloadFromGpuBuffer_REAL
|
||||
#define SDL_EndGpuCopyPass SDL_EndGpuCopyPass_REAL
|
||||
#define SDL_BlitGpu SDL_BlitGpu_REAL
|
||||
#define SDL_SupportsGpuSwapchainComposition SDL_SupportsGpuSwapchainComposition_REAL
|
||||
#define SDL_SupportsGpuPresentMode SDL_SupportsGpuPresentMode_REAL
|
||||
#define SDL_ClaimGpuWindow SDL_ClaimGpuWindow_REAL
|
||||
#define SDL_UnclaimGpuWindow SDL_UnclaimGpuWindow_REAL
|
||||
#define SDL_SetGpuSwapchainParameters SDL_SetGpuSwapchainParameters_REAL
|
||||
#define SDL_GetGpuSwapchainTextureFormat SDL_GetGpuSwapchainTextureFormat_REAL
|
||||
#define SDL_AcquireGpuCommandBuffer SDL_AcquireGpuCommandBuffer_REAL
|
||||
#define SDL_AcquireGpuSwapchainTexture SDL_AcquireGpuSwapchainTexture_REAL
|
||||
#define SDL_SubmitGpu SDL_SubmitGpu_REAL
|
||||
#define SDL_SubmitGpuAndAcquireFence SDL_SubmitGpuAndAcquireFence_REAL
|
||||
#define SDL_WaitGpu SDL_WaitGpu_REAL
|
||||
#define SDL_WaitGpuForFences SDL_WaitGpuForFences_REAL
|
||||
#define SDL_QueryGpuFence SDL_QueryGpuFence_REAL
|
||||
#define SDL_ReleaseGpuFence SDL_ReleaseGpuFence_REAL
|
||||
#define SDL_GpuTextureFormatTexelBlockSize SDL_GpuTextureFormatTexelBlockSize_REAL
|
||||
#define SDL_SupportsGpuTextureFormat SDL_SupportsGpuTextureFormat_REAL
|
||||
#define SDL_SupportsGpuSampleCount SDL_SupportsGpuSampleCount_REAL
|
||||
#define SDL_GDKSuspendGpu SDL_GDKSuspendGpu_REAL
|
||||
#define SDL_GDKResumeGpu SDL_GDKResumeGpu_REAL
|
||||
#define SDL_CreateGPUDevice SDL_CreateGPUDevice_REAL
|
||||
#define SDL_CreateGPUDeviceWithProperties SDL_CreateGPUDeviceWithProperties_REAL
|
||||
#define SDL_DestroyGPUDevice SDL_DestroyGPUDevice_REAL
|
||||
#define SDL_GetGPUDriver SDL_GetGPUDriver_REAL
|
||||
#define SDL_CreateGPUComputePipeline SDL_CreateGPUComputePipeline_REAL
|
||||
#define SDL_CreateGPUGraphicsPipeline SDL_CreateGPUGraphicsPipeline_REAL
|
||||
#define SDL_CreateGPUSampler SDL_CreateGPUSampler_REAL
|
||||
#define SDL_CreateGPUShader SDL_CreateGPUShader_REAL
|
||||
#define SDL_CreateGPUTexture SDL_CreateGPUTexture_REAL
|
||||
#define SDL_CreateGPUBuffer SDL_CreateGPUBuffer_REAL
|
||||
#define SDL_CreateGPUTransferBuffer SDL_CreateGPUTransferBuffer_REAL
|
||||
#define SDL_SetGPUBufferName SDL_SetGPUBufferName_REAL
|
||||
#define SDL_SetGPUTextureName SDL_SetGPUTextureName_REAL
|
||||
#define SDL_InsertGPUDebugLabel SDL_InsertGPUDebugLabel_REAL
|
||||
#define SDL_PushGPUDebugGroup SDL_PushGPUDebugGroup_REAL
|
||||
#define SDL_PopGPUDebugGroup SDL_PopGPUDebugGroup_REAL
|
||||
#define SDL_ReleaseGPUTexture SDL_ReleaseGPUTexture_REAL
|
||||
#define SDL_ReleaseGPUSampler SDL_ReleaseGPUSampler_REAL
|
||||
#define SDL_ReleaseGPUBuffer SDL_ReleaseGPUBuffer_REAL
|
||||
#define SDL_ReleaseGPUTransferBuffer SDL_ReleaseGPUTransferBuffer_REAL
|
||||
#define SDL_ReleaseGPUComputePipeline SDL_ReleaseGPUComputePipeline_REAL
|
||||
#define SDL_ReleaseGPUShader SDL_ReleaseGPUShader_REAL
|
||||
#define SDL_ReleaseGPUGraphicsPipeline SDL_ReleaseGPUGraphicsPipeline_REAL
|
||||
#define SDL_BeginGPURenderPass SDL_BeginGPURenderPass_REAL
|
||||
#define SDL_BindGPUGraphicsPipeline SDL_BindGPUGraphicsPipeline_REAL
|
||||
#define SDL_SetGPUViewport SDL_SetGPUViewport_REAL
|
||||
#define SDL_SetGPUScissor SDL_SetGPUScissor_REAL
|
||||
#define SDL_BindGPUVertexBuffers SDL_BindGPUVertexBuffers_REAL
|
||||
#define SDL_BindGPUIndexBuffer SDL_BindGPUIndexBuffer_REAL
|
||||
#define SDL_BindGPUVertexSamplers SDL_BindGPUVertexSamplers_REAL
|
||||
#define SDL_BindGPUVertexStorageTextures SDL_BindGPUVertexStorageTextures_REAL
|
||||
#define SDL_BindGPUVertexStorageBuffers SDL_BindGPUVertexStorageBuffers_REAL
|
||||
#define SDL_BindGPUFragmentSamplers SDL_BindGPUFragmentSamplers_REAL
|
||||
#define SDL_BindGPUFragmentStorageTextures SDL_BindGPUFragmentStorageTextures_REAL
|
||||
#define SDL_BindGPUFragmentStorageBuffers SDL_BindGPUFragmentStorageBuffers_REAL
|
||||
#define SDL_PushGPUVertexUniformData SDL_PushGPUVertexUniformData_REAL
|
||||
#define SDL_PushGPUFragmentUniformData SDL_PushGPUFragmentUniformData_REAL
|
||||
#define SDL_DrawGPUIndexedPrimitives SDL_DrawGPUIndexedPrimitives_REAL
|
||||
#define SDL_DrawGPUPrimitives SDL_DrawGPUPrimitives_REAL
|
||||
#define SDL_DrawGPUPrimitivesIndirect SDL_DrawGPUPrimitivesIndirect_REAL
|
||||
#define SDL_DrawGPUIndexedPrimitivesIndirect SDL_DrawGPUIndexedPrimitivesIndirect_REAL
|
||||
#define SDL_EndGPURenderPass SDL_EndGPURenderPass_REAL
|
||||
#define SDL_BeginGPUComputePass SDL_BeginGPUComputePass_REAL
|
||||
#define SDL_BindGPUComputePipeline SDL_BindGPUComputePipeline_REAL
|
||||
#define SDL_BindGPUComputeStorageTextures SDL_BindGPUComputeStorageTextures_REAL
|
||||
#define SDL_BindGPUComputeStorageBuffers SDL_BindGPUComputeStorageBuffers_REAL
|
||||
#define SDL_PushGPUComputeUniformData SDL_PushGPUComputeUniformData_REAL
|
||||
#define SDL_DispatchGPUCompute SDL_DispatchGPUCompute_REAL
|
||||
#define SDL_DispatchGPUComputeIndirect SDL_DispatchGPUComputeIndirect_REAL
|
||||
#define SDL_EndGPUComputePass SDL_EndGPUComputePass_REAL
|
||||
#define SDL_MapGPUTransferBuffer SDL_MapGPUTransferBuffer_REAL
|
||||
#define SDL_UnmapGPUTransferBuffer SDL_UnmapGPUTransferBuffer_REAL
|
||||
#define SDL_BeginGPUCopyPass SDL_BeginGPUCopyPass_REAL
|
||||
#define SDL_UploadToGPUTexture SDL_UploadToGPUTexture_REAL
|
||||
#define SDL_UploadToGPUBuffer SDL_UploadToGPUBuffer_REAL
|
||||
#define SDL_CopyGPUTextureToTexture SDL_CopyGPUTextureToTexture_REAL
|
||||
#define SDL_CopyGPUBufferToBuffer SDL_CopyGPUBufferToBuffer_REAL
|
||||
#define SDL_GenerateGPUMipmaps SDL_GenerateGPUMipmaps_REAL
|
||||
#define SDL_DownloadFromGPUTexture SDL_DownloadFromGPUTexture_REAL
|
||||
#define SDL_DownloadFromGPUBuffer SDL_DownloadFromGPUBuffer_REAL
|
||||
#define SDL_EndGPUCopyPass SDL_EndGPUCopyPass_REAL
|
||||
#define SDL_BlitGPU SDL_BlitGPU_REAL
|
||||
#define SDL_SupportsGPUSwapchainComposition SDL_SupportsGPUSwapchainComposition_REAL
|
||||
#define SDL_SupportsGPUPresentMode SDL_SupportsGPUPresentMode_REAL
|
||||
#define SDL_ClaimGPUWindow SDL_ClaimGPUWindow_REAL
|
||||
#define SDL_UnclaimGPUWindow SDL_UnclaimGPUWindow_REAL
|
||||
#define SDL_SetGPUSwapchainParameters SDL_SetGPUSwapchainParameters_REAL
|
||||
#define SDL_GetGPUSwapchainTextureFormat SDL_GetGPUSwapchainTextureFormat_REAL
|
||||
#define SDL_AcquireGPUCommandBuffer SDL_AcquireGPUCommandBuffer_REAL
|
||||
#define SDL_AcquireGPUSwapchainTexture SDL_AcquireGPUSwapchainTexture_REAL
|
||||
#define SDL_SubmitGPU SDL_SubmitGPU_REAL
|
||||
#define SDL_SubmitGPUAndAcquireFence SDL_SubmitGPUAndAcquireFence_REAL
|
||||
#define SDL_WaitGPU SDL_WaitGPU_REAL
|
||||
#define SDL_WaitGPUForFences SDL_WaitGPUForFences_REAL
|
||||
#define SDL_QueryGPUFence SDL_QueryGPUFence_REAL
|
||||
#define SDL_ReleaseGPUFence SDL_ReleaseGPUFence_REAL
|
||||
#define SDL_GPUTextureFormatTexelBlockSize SDL_GPUTextureFormatTexelBlockSize_REAL
|
||||
#define SDL_SupportsGPUTextureFormat SDL_SupportsGPUTextureFormat_REAL
|
||||
#define SDL_SupportsGPUSampleCount SDL_SupportsGPUSampleCount_REAL
|
||||
#define SDL_GDKSuspendGPU SDL_GDKSuspendGPU_REAL
|
||||
#define SDL_GDKResumeGPU SDL_GDKResumeGPU_REAL
|
||||
|
||||
@@ -1091,84 +1091,84 @@ SDL_DYNAPI_PROC(size_t,SDL_wcsnlen,(const wchar_t *a, size_t b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(wchar_t*,SDL_wcsnstr,(const wchar_t *a, const wchar_t *b, size_t c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(wchar_t*,SDL_wcsstr,(const wchar_t *a, const wchar_t *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(long,SDL_wcstol,(const wchar_t *a, wchar_t **b, int c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuDevice*,SDL_CreateGpuDevice,(SDL_GpuShaderFormat a, SDL_bool b, SDL_bool c, const char *d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuDevice*,SDL_CreateGpuDeviceWithProperties,(SDL_PropertiesID a),(a),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_DestroyGpuDevice,(SDL_GpuDevice *a),(a),)
|
||||
SDL_DYNAPI_PROC(SDL_GpuDriver,SDL_GetGpuDriver,(SDL_GpuDevice *a),(a),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuComputePipeline*,SDL_CreateGpuComputePipeline,(SDL_GpuDevice *a, SDL_GpuComputePipelineCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuGraphicsPipeline*,SDL_CreateGpuGraphicsPipeline,(SDL_GpuDevice *a, SDL_GpuGraphicsPipelineCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuSampler*,SDL_CreateGpuSampler,(SDL_GpuDevice *a, SDL_GpuSamplerCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuShader*,SDL_CreateGpuShader,(SDL_GpuDevice *a, SDL_GpuShaderCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuTexture*,SDL_CreateGpuTexture,(SDL_GpuDevice *a, SDL_GpuTextureCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuBuffer*,SDL_CreateGpuBuffer,(SDL_GpuDevice *a, SDL_GpuBufferCreateInfo* b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuTransferBuffer*,SDL_CreateGpuTransferBuffer,(SDL_GpuDevice *a, SDL_GpuTransferBufferCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_SetGpuBufferName,(SDL_GpuDevice *a, SDL_GpuBuffer *b, const char *c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_SetGpuTextureName,(SDL_GpuDevice *a, SDL_GpuTexture *b, const char *c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_InsertGpuDebugLabel,(SDL_GpuCommandBuffer *a, const char *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_PushGpuDebugGroup,(SDL_GpuCommandBuffer *a, const char *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_PopGpuDebugGroup,(SDL_GpuCommandBuffer *a),(a),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGpuTexture,(SDL_GpuDevice *a, SDL_GpuTexture *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGpuSampler,(SDL_GpuDevice *a, SDL_GpuSampler *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGpuBuffer,(SDL_GpuDevice *a, SDL_GpuBuffer *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGpuTransferBuffer,(SDL_GpuDevice *a, SDL_GpuTransferBuffer *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGpuComputePipeline,(SDL_GpuDevice *a, SDL_GpuComputePipeline *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGpuShader,(SDL_GpuDevice *a, SDL_GpuShader *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGpuGraphicsPipeline,(SDL_GpuDevice *a, SDL_GpuGraphicsPipeline *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(SDL_GpuCommandBuffer*,SDL_AcquireGpuCommandBuffer,(SDL_GpuDevice *a),(a),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_PushGpuVertexUniformData,(SDL_GpuCommandBuffer *a, Uint32 b, const void *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_PushGpuFragmentUniformData,(SDL_GpuCommandBuffer *a, Uint32 b, const void *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_PushGpuComputeUniformData,(SDL_GpuCommandBuffer *a, Uint32 b, const void *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(SDL_GpuRenderPass*,SDL_BeginGpuRenderPass,(SDL_GpuCommandBuffer *a, SDL_GpuColorAttachmentInfo *b, Uint32 c, SDL_GpuDepthStencilAttachmentInfo *d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuGraphicsPipeline,(SDL_GpuRenderPass *a, SDL_GpuGraphicsPipeline *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_SetGpuViewport,(SDL_GpuRenderPass *a, SDL_GpuViewport *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_SetGpuScissor,(SDL_GpuRenderPass *a, SDL_Rect *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuVertexBuffers,(SDL_GpuRenderPass *a, Uint32 b, SDL_GpuBufferBinding *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuIndexBuffer,(SDL_GpuRenderPass *a, SDL_GpuBufferBinding *b, SDL_GpuIndexElementSize c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuVertexSamplers,(SDL_GpuRenderPass *a, Uint32 b, SDL_GpuTextureSamplerBinding *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuVertexStorageTextures,(SDL_GpuRenderPass *a, Uint32 b, SDL_GpuTexture **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuVertexStorageBuffers,(SDL_GpuRenderPass *a, Uint32 b, SDL_GpuBuffer **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuFragmentSamplers,(SDL_GpuRenderPass *a, Uint32 b, SDL_GpuTextureSamplerBinding *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuFragmentStorageTextures,(SDL_GpuRenderPass *a, Uint32 b, SDL_GpuTexture **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuFragmentStorageBuffers,(SDL_GpuRenderPass *a, Uint32 b, SDL_GpuBuffer **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DrawGpuIndexedPrimitives,(SDL_GpuRenderPass *a, Uint32 b, Uint32 c, Uint32 d, Sint32 e, Uint32 f),(a,b,c,d,e,f),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DrawGpuPrimitives,(SDL_GpuRenderPass *a, Uint32 b, Uint32 c, Uint32 d, Uint32 e),(a,b,c,d,e),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DrawGpuPrimitivesIndirect,(SDL_GpuRenderPass *a, SDL_GpuBuffer *b, Uint32 c, Uint32 d, Uint32 e),(a,b,c,d,e),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DrawGpuIndexedPrimitivesIndirect,(SDL_GpuRenderPass *a, SDL_GpuBuffer *b, Uint32 c, Uint32 d, Uint32 e),(a,b,c,d,e),)
|
||||
SDL_DYNAPI_PROC(void,SDL_EndGpuRenderPass,(SDL_GpuRenderPass *a),(a),)
|
||||
SDL_DYNAPI_PROC(SDL_GpuComputePass*,SDL_BeginGpuComputePass,(SDL_GpuCommandBuffer *a, SDL_GpuStorageTextureWriteOnlyBinding *b, Uint32 c, SDL_GpuStorageBufferWriteOnlyBinding *d, Uint32 e),(a,b,c,d,e),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuComputePipeline,(SDL_GpuComputePass *a, SDL_GpuComputePipeline *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuComputeStorageTextures,(SDL_GpuComputePass *a, Uint32 b, SDL_GpuTexture **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGpuComputeStorageBuffers,(SDL_GpuComputePass *a, Uint32 b, SDL_GpuBuffer **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DispatchGpuCompute,(SDL_GpuComputePass *a, Uint32 b, Uint32 c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DispatchGpuComputeIndirect,(SDL_GpuComputePass *a, SDL_GpuBuffer *b, Uint32 c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_EndGpuComputePass,(SDL_GpuComputePass *a),(a),)
|
||||
SDL_DYNAPI_PROC(void*,SDL_MapGpuTransferBuffer,(SDL_GpuDevice *a, SDL_GpuTransferBuffer *b, SDL_bool c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_UnmapGpuTransferBuffer,(SDL_GpuDevice *a, SDL_GpuTransferBuffer *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(SDL_GpuCopyPass*,SDL_BeginGpuCopyPass,(SDL_GpuCommandBuffer *a),(a),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_UploadToGpuTexture,(SDL_GpuCopyPass *a, SDL_GpuTextureTransferInfo *b, SDL_GpuTextureRegion *c, SDL_bool d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_UploadToGpuBuffer,(SDL_GpuCopyPass *a, SDL_GpuTransferBufferLocation *b, SDL_GpuBufferRegion *c, SDL_bool d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_CopyGpuTextureToTexture,(SDL_GpuCopyPass *a, SDL_GpuTextureLocation *b, SDL_GpuTextureLocation *c, Uint32 d, Uint32 e, Uint32 f, SDL_bool g),(a,b,c,d,e,f,g),)
|
||||
SDL_DYNAPI_PROC(void,SDL_CopyGpuBufferToBuffer,(SDL_GpuCopyPass *a, SDL_GpuBufferLocation *b, SDL_GpuBufferLocation *c, Uint32 d, SDL_bool e),(a,b,c,d,e),)
|
||||
SDL_DYNAPI_PROC(void,SDL_GenerateGpuMipmaps,(SDL_GpuCommandBuffer *a, SDL_GpuTexture *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DownloadFromGpuTexture,(SDL_GpuCopyPass *a, SDL_GpuTextureRegion *b, SDL_GpuTextureTransferInfo *c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DownloadFromGpuBuffer,(SDL_GpuCopyPass *a, SDL_GpuBufferRegion *b, SDL_GpuTransferBufferLocation *c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_EndGpuCopyPass,(SDL_GpuCopyPass *a),(a),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BlitGpu,(SDL_GpuCommandBuffer *a, SDL_GpuBlitRegion *b, SDL_GpuBlitRegion *c, SDL_FlipMode d, SDL_GpuFilter e, SDL_bool f),(a,b,c,d,e,f),)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SupportsGpuSwapchainComposition,(SDL_GpuDevice *a, SDL_Window *b, SDL_GpuSwapchainComposition c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SupportsGpuPresentMode,(SDL_GpuDevice *a, SDL_Window *b, SDL_GpuPresentMode c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_ClaimGpuWindow,(SDL_GpuDevice *a, SDL_Window *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_UnclaimGpuWindow,(SDL_GpuDevice *a, SDL_Window *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SetGpuSwapchainParameters,(SDL_GpuDevice *a, SDL_Window *b, SDL_GpuSwapchainComposition c, SDL_GpuPresentMode d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuTextureFormat,SDL_GetGpuSwapchainTextureFormat,(SDL_GpuDevice *a, SDL_Window *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GpuTexture*,SDL_AcquireGpuSwapchainTexture,(SDL_GpuCommandBuffer *a, SDL_Window *b, Uint32 *c, Uint32 *d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_SubmitGpu,(SDL_GpuCommandBuffer *a),(a),)
|
||||
SDL_DYNAPI_PROC(SDL_GpuFence*,SDL_SubmitGpuAndAcquireFence,(SDL_GpuCommandBuffer *a),(a),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_WaitGpu,(SDL_GpuDevice *a),(a),)
|
||||
SDL_DYNAPI_PROC(void,SDL_WaitGpuForFences,(SDL_GpuDevice *a, SDL_bool b, SDL_GpuFence **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_QueryGpuFence,(SDL_GpuDevice *a, SDL_GpuFence *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGpuFence,(SDL_GpuDevice *a, SDL_GpuFence *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(Uint32,SDL_GpuTextureFormatTexelBlockSize,(SDL_GpuTextureFormat a),(a),return)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SupportsGpuTextureFormat,(SDL_GpuDevice *a, SDL_GpuTextureFormat b, SDL_GpuTextureType c, SDL_GpuTextureUsageFlags d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SupportsGpuSampleCount,(SDL_GpuDevice *a, SDL_GpuTextureFormat b, SDL_GpuSampleCount c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_GDKSuspendGpu,(SDL_GpuDevice *a),(a),)
|
||||
SDL_DYNAPI_PROC(void,SDL_GDKResumeGpu,(SDL_GpuDevice *a),(a),)
|
||||
SDL_DYNAPI_PROC(SDL_GPUDevice*,SDL_CreateGPUDevice,(SDL_GPUShaderFormat a, SDL_bool b, SDL_bool c, const char *d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUDevice*,SDL_CreateGPUDeviceWithProperties,(SDL_PropertiesID a),(a),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_DestroyGPUDevice,(SDL_GPUDevice *a),(a),)
|
||||
SDL_DYNAPI_PROC(SDL_GPUDriver,SDL_GetGPUDriver,(SDL_GPUDevice *a),(a),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUComputePipeline*,SDL_CreateGPUComputePipeline,(SDL_GPUDevice *a, SDL_GPUComputePipelineCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUGraphicsPipeline*,SDL_CreateGPUGraphicsPipeline,(SDL_GPUDevice *a, SDL_GPUGraphicsPipelineCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUSampler*,SDL_CreateGPUSampler,(SDL_GPUDevice *a, SDL_GPUSamplerCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUShader*,SDL_CreateGPUShader,(SDL_GPUDevice *a, SDL_GPUShaderCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUTexture*,SDL_CreateGPUTexture,(SDL_GPUDevice *a, SDL_GPUTextureCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUBuffer*,SDL_CreateGPUBuffer,(SDL_GPUDevice *a, SDL_GPUBufferCreateInfo* b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUTransferBuffer*,SDL_CreateGPUTransferBuffer,(SDL_GPUDevice *a, SDL_GPUTransferBufferCreateInfo *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_SetGPUBufferName,(SDL_GPUDevice *a, SDL_GPUBuffer *b, const char *c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_SetGPUTextureName,(SDL_GPUDevice *a, SDL_GPUTexture *b, const char *c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_InsertGPUDebugLabel,(SDL_GPUCommandBuffer *a, const char *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_PushGPUDebugGroup,(SDL_GPUCommandBuffer *a, const char *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_PopGPUDebugGroup,(SDL_GPUCommandBuffer *a),(a),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGPUTexture,(SDL_GPUDevice *a, SDL_GPUTexture *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGPUSampler,(SDL_GPUDevice *a, SDL_GPUSampler *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGPUBuffer,(SDL_GPUDevice *a, SDL_GPUBuffer *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGPUTransferBuffer,(SDL_GPUDevice *a, SDL_GPUTransferBuffer *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGPUComputePipeline,(SDL_GPUDevice *a, SDL_GPUComputePipeline *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGPUShader,(SDL_GPUDevice *a, SDL_GPUShader *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGPUGraphicsPipeline,(SDL_GPUDevice *a, SDL_GPUGraphicsPipeline *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(SDL_GPUCommandBuffer*,SDL_AcquireGPUCommandBuffer,(SDL_GPUDevice *a),(a),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_PushGPUVertexUniformData,(SDL_GPUCommandBuffer *a, Uint32 b, const void *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_PushGPUFragmentUniformData,(SDL_GPUCommandBuffer *a, Uint32 b, const void *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_PushGPUComputeUniformData,(SDL_GPUCommandBuffer *a, Uint32 b, const void *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(SDL_GPURenderPass*,SDL_BeginGPURenderPass,(SDL_GPUCommandBuffer *a, SDL_GPUColorAttachmentInfo *b, Uint32 c, SDL_GPUDepthStencilAttachmentInfo *d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUGraphicsPipeline,(SDL_GPURenderPass *a, SDL_GPUGraphicsPipeline *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_SetGPUViewport,(SDL_GPURenderPass *a, SDL_GPUViewport *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_SetGPUScissor,(SDL_GPURenderPass *a, SDL_Rect *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUVertexBuffers,(SDL_GPURenderPass *a, Uint32 b, SDL_GPUBufferBinding *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUIndexBuffer,(SDL_GPURenderPass *a, SDL_GPUBufferBinding *b, SDL_GPUIndexElementSize c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUVertexSamplers,(SDL_GPURenderPass *a, Uint32 b, SDL_GPUTextureSamplerBinding *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUVertexStorageTextures,(SDL_GPURenderPass *a, Uint32 b, SDL_GPUTexture **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUVertexStorageBuffers,(SDL_GPURenderPass *a, Uint32 b, SDL_GPUBuffer **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUFragmentSamplers,(SDL_GPURenderPass *a, Uint32 b, SDL_GPUTextureSamplerBinding *c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUFragmentStorageTextures,(SDL_GPURenderPass *a, Uint32 b, SDL_GPUTexture **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUFragmentStorageBuffers,(SDL_GPURenderPass *a, Uint32 b, SDL_GPUBuffer **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DrawGPUIndexedPrimitives,(SDL_GPURenderPass *a, Uint32 b, Uint32 c, Uint32 d, Sint32 e, Uint32 f),(a,b,c,d,e,f),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DrawGPUPrimitives,(SDL_GPURenderPass *a, Uint32 b, Uint32 c, Uint32 d, Uint32 e),(a,b,c,d,e),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DrawGPUPrimitivesIndirect,(SDL_GPURenderPass *a, SDL_GPUBuffer *b, Uint32 c, Uint32 d, Uint32 e),(a,b,c,d,e),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DrawGPUIndexedPrimitivesIndirect,(SDL_GPURenderPass *a, SDL_GPUBuffer *b, Uint32 c, Uint32 d, Uint32 e),(a,b,c,d,e),)
|
||||
SDL_DYNAPI_PROC(void,SDL_EndGPURenderPass,(SDL_GPURenderPass *a),(a),)
|
||||
SDL_DYNAPI_PROC(SDL_GPUComputePass*,SDL_BeginGPUComputePass,(SDL_GPUCommandBuffer *a, SDL_GPUStorageTextureWriteOnlyBinding *b, Uint32 c, SDL_GPUStorageBufferWriteOnlyBinding *d, Uint32 e),(a,b,c,d,e),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUComputePipeline,(SDL_GPUComputePass *a, SDL_GPUComputePipeline *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUComputeStorageTextures,(SDL_GPUComputePass *a, Uint32 b, SDL_GPUTexture **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BindGPUComputeStorageBuffers,(SDL_GPUComputePass *a, Uint32 b, SDL_GPUBuffer **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DispatchGPUCompute,(SDL_GPUComputePass *a, Uint32 b, Uint32 c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DispatchGPUComputeIndirect,(SDL_GPUComputePass *a, SDL_GPUBuffer *b, Uint32 c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_EndGPUComputePass,(SDL_GPUComputePass *a),(a),)
|
||||
SDL_DYNAPI_PROC(void*,SDL_MapGPUTransferBuffer,(SDL_GPUDevice *a, SDL_GPUTransferBuffer *b, SDL_bool c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_UnmapGPUTransferBuffer,(SDL_GPUDevice *a, SDL_GPUTransferBuffer *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(SDL_GPUCopyPass*,SDL_BeginGPUCopyPass,(SDL_GPUCommandBuffer *a),(a),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_UploadToGPUTexture,(SDL_GPUCopyPass *a, SDL_GPUTextureTransferInfo *b, SDL_GPUTextureRegion *c, SDL_bool d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_UploadToGPUBuffer,(SDL_GPUCopyPass *a, SDL_GPUTransferBufferLocation *b, SDL_GPUBufferRegion *c, SDL_bool d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(void,SDL_CopyGPUTextureToTexture,(SDL_GPUCopyPass *a, SDL_GPUTextureLocation *b, SDL_GPUTextureLocation *c, Uint32 d, Uint32 e, Uint32 f, SDL_bool g),(a,b,c,d,e,f,g),)
|
||||
SDL_DYNAPI_PROC(void,SDL_CopyGPUBufferToBuffer,(SDL_GPUCopyPass *a, SDL_GPUBufferLocation *b, SDL_GPUBufferLocation *c, Uint32 d, SDL_bool e),(a,b,c,d,e),)
|
||||
SDL_DYNAPI_PROC(void,SDL_GenerateGPUMipmaps,(SDL_GPUCommandBuffer *a, SDL_GPUTexture *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DownloadFromGPUTexture,(SDL_GPUCopyPass *a, SDL_GPUTextureRegion *b, SDL_GPUTextureTransferInfo *c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_DownloadFromGPUBuffer,(SDL_GPUCopyPass *a, SDL_GPUBufferRegion *b, SDL_GPUTransferBufferLocation *c),(a,b,c),)
|
||||
SDL_DYNAPI_PROC(void,SDL_EndGPUCopyPass,(SDL_GPUCopyPass *a),(a),)
|
||||
SDL_DYNAPI_PROC(void,SDL_BlitGPU,(SDL_GPUCommandBuffer *a, SDL_GPUBlitRegion *b, SDL_GPUBlitRegion *c, SDL_FlipMode d, SDL_GPUFilter e, SDL_bool f),(a,b,c,d,e,f),)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SupportsGPUSwapchainComposition,(SDL_GPUDevice *a, SDL_Window *b, SDL_GPUSwapchainComposition c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SupportsGPUPresentMode,(SDL_GPUDevice *a, SDL_Window *b, SDL_GPUPresentMode c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_ClaimGPUWindow,(SDL_GPUDevice *a, SDL_Window *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_UnclaimGPUWindow,(SDL_GPUDevice *a, SDL_Window *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SetGPUSwapchainParameters,(SDL_GPUDevice *a, SDL_Window *b, SDL_GPUSwapchainComposition c, SDL_GPUPresentMode d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUTextureFormat,SDL_GetGPUSwapchainTextureFormat,(SDL_GPUDevice *a, SDL_Window *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(SDL_GPUTexture*,SDL_AcquireGPUSwapchainTexture,(SDL_GPUCommandBuffer *a, SDL_Window *b, Uint32 *c, Uint32 *d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_SubmitGPU,(SDL_GPUCommandBuffer *a),(a),)
|
||||
SDL_DYNAPI_PROC(SDL_GPUFence*,SDL_SubmitGPUAndAcquireFence,(SDL_GPUCommandBuffer *a),(a),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_WaitGPU,(SDL_GPUDevice *a),(a),)
|
||||
SDL_DYNAPI_PROC(void,SDL_WaitGPUForFences,(SDL_GPUDevice *a, SDL_bool b, SDL_GPUFence **c, Uint32 d),(a,b,c,d),)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_QueryGPUFence,(SDL_GPUDevice *a, SDL_GPUFence *b),(a,b),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_ReleaseGPUFence,(SDL_GPUDevice *a, SDL_GPUFence *b),(a,b),)
|
||||
SDL_DYNAPI_PROC(Uint32,SDL_GPUTextureFormatTexelBlockSize,(SDL_GPUTextureFormat a),(a),return)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SupportsGPUTextureFormat,(SDL_GPUDevice *a, SDL_GPUTextureFormat b, SDL_GPUTextureType c, SDL_GPUTextureUsageFlags d),(a,b,c,d),return)
|
||||
SDL_DYNAPI_PROC(SDL_bool,SDL_SupportsGPUSampleCount,(SDL_GPUDevice *a, SDL_GPUTextureFormat b, SDL_GPUSampleCount c),(a,b,c),return)
|
||||
SDL_DYNAPI_PROC(void,SDL_GDKSuspendGPU,(SDL_GPUDevice *a),(a),)
|
||||
SDL_DYNAPI_PROC(void,SDL_GDKResumeGPU,(SDL_GPUDevice *a),(a),)
|
||||
|
||||
+277
-277
File diff suppressed because it is too large
Load Diff
+206
-206
File diff suppressed because it is too large
Load Diff
+232
-232
File diff suppressed because it is too large
Load Diff
+259
-259
File diff suppressed because it is too large
Load Diff
+219
-219
File diff suppressed because it is too large
Load Diff
+227
-227
File diff suppressed because it is too large
Load Diff
@@ -891,7 +891,7 @@ static HRESULT D3D12_CreateDeviceResources(SDL_Renderer *renderer)
|
||||
D3D_GUID(SDL_IID_IDXGIAdapter4),
|
||||
(void **)&data->dxgiAdapter);
|
||||
if (FAILED(result)) {
|
||||
WIN_SetErrorFromHRESULT(SDL_COMPOSE_ERROR("IDXGIFactory6::EnumAdapterByGpuPreference"), result);
|
||||
WIN_SetErrorFromHRESULT(SDL_COMPOSE_ERROR("IDXGIFactory6::EnumAdapterByGPUPreference"), result);
|
||||
goto done;
|
||||
}
|
||||
|
||||
|
||||
@@ -22,10 +22,10 @@
|
||||
#ifndef SDL_gpu_util_h_
|
||||
#define SDL_gpu_util_h_
|
||||
|
||||
#define SDL_GPU_BLENDOP_INVALID ((SDL_GpuBlendOp)0x7fffffff)
|
||||
#define SDL_GPU_BLENDFACTOR_INVALID ((SDL_GpuBlendFactor)0x7fffffff)
|
||||
#define SDL_GPU_BLENDOP_INVALID ((SDL_GPUBlendOp)0x7fffffff)
|
||||
#define SDL_GPU_BLENDFACTOR_INVALID ((SDL_GPUBlendFactor)0x7fffffff)
|
||||
|
||||
static SDL_INLINE SDL_GpuBlendFactor GPU_ConvertBlendFactor(SDL_BlendFactor factor)
|
||||
static SDL_INLINE SDL_GPUBlendFactor GPU_ConvertBlendFactor(SDL_BlendFactor factor)
|
||||
{
|
||||
switch (factor) {
|
||||
case SDL_BLENDFACTOR_ZERO:
|
||||
@@ -53,7 +53,7 @@ static SDL_INLINE SDL_GpuBlendFactor GPU_ConvertBlendFactor(SDL_BlendFactor fact
|
||||
}
|
||||
}
|
||||
|
||||
static SDL_INLINE SDL_GpuBlendOp GPU_ConvertBlendOperation(SDL_BlendOperation operation)
|
||||
static SDL_INLINE SDL_GPUBlendOp GPU_ConvertBlendOperation(SDL_BlendOperation operation)
|
||||
{
|
||||
switch (operation) {
|
||||
case SDL_BLENDOPERATION_ADD:
|
||||
|
||||
@@ -47,7 +47,7 @@ SDL_COMPILE_TIME_ASSERT(GPU_PipelineCacheKey_Size, sizeof(GPU_PipelineCacheKey)
|
||||
typedef struct GPU_PipelineCacheEntry
|
||||
{
|
||||
GPU_PipelineCacheKey key;
|
||||
SDL_GpuGraphicsPipeline *pipeline;
|
||||
SDL_GPUGraphicsPipeline *pipeline;
|
||||
} GPU_PipelineCacheEntry;
|
||||
|
||||
static Uint32 HashPipelineCacheKey(const GPU_PipelineCacheKey *key)
|
||||
@@ -74,13 +74,13 @@ static bool MatchPipelineCacheKey(const void *a, const void *b, void *data)
|
||||
static void NukePipelineCacheEntry(const void *key, const void *value, void *data)
|
||||
{
|
||||
GPU_PipelineCacheEntry *entry = (GPU_PipelineCacheEntry *)value;
|
||||
SDL_GpuDevice *device = data;
|
||||
SDL_GPUDevice *device = data;
|
||||
|
||||
SDL_ReleaseGpuGraphicsPipeline(device, entry->pipeline);
|
||||
SDL_ReleaseGPUGraphicsPipeline(device, entry->pipeline);
|
||||
SDL_free(entry);
|
||||
}
|
||||
|
||||
bool GPU_InitPipelineCache(GPU_PipelineCache *cache, SDL_GpuDevice *device)
|
||||
bool GPU_InitPipelineCache(GPU_PipelineCache *cache, SDL_GPUDevice *device)
|
||||
{
|
||||
// FIXME how many buckets do we need?
|
||||
cache->table = SDL_CreateHashTable(device, 32, HashPassthrough, MatchPipelineCacheKey, NukePipelineCacheEntry, true);
|
||||
@@ -93,9 +93,9 @@ void GPU_DestroyPipelineCache(GPU_PipelineCache *cache)
|
||||
SDL_DestroyHashTable(cache->table);
|
||||
}
|
||||
|
||||
static SDL_GpuGraphicsPipeline *MakePipeline(SDL_GpuDevice *device, GPU_Shaders *shaders, const GPU_PipelineParameters *params)
|
||||
static SDL_GPUGraphicsPipeline *MakePipeline(SDL_GPUDevice *device, GPU_Shaders *shaders, const GPU_PipelineParameters *params)
|
||||
{
|
||||
SDL_GpuColorAttachmentDescription ad;
|
||||
SDL_GPUColorAttachmentDescription ad;
|
||||
SDL_zero(ad);
|
||||
ad.format = params->attachment_format;
|
||||
|
||||
@@ -109,7 +109,7 @@ static SDL_GpuGraphicsPipeline *MakePipeline(SDL_GpuDevice *device, GPU_Shaders
|
||||
ad.blendState.dstColorBlendFactor = GPU_ConvertBlendFactor(SDL_GetBlendModeDstColorFactor(blend));
|
||||
ad.blendState.srcColorBlendFactor = GPU_ConvertBlendFactor(SDL_GetBlendModeSrcColorFactor(blend));
|
||||
|
||||
SDL_GpuGraphicsPipelineCreateInfo pci;
|
||||
SDL_GPUGraphicsPipelineCreateInfo pci;
|
||||
SDL_zero(pci);
|
||||
pci.attachmentInfo.hasDepthStencilAttachment = false;
|
||||
pci.attachmentInfo.colorAttachmentCount = 1;
|
||||
@@ -124,11 +124,11 @@ static SDL_GpuGraphicsPipeline *MakePipeline(SDL_GpuDevice *device, GPU_Shaders
|
||||
pci.rasterizerState.fillMode = SDL_GPU_FILLMODE_FILL;
|
||||
pci.rasterizerState.frontFace = SDL_GPU_FRONTFACE_COUNTER_CLOCKWISE;
|
||||
|
||||
SDL_GpuVertexBinding bind;
|
||||
SDL_GPUVertexBinding bind;
|
||||
SDL_zero(bind);
|
||||
|
||||
Uint32 num_attribs = 0;
|
||||
SDL_GpuVertexAttribute attribs[4];
|
||||
SDL_GPUVertexAttribute attribs[4];
|
||||
SDL_zero(attribs);
|
||||
|
||||
bool have_attr_color = false;
|
||||
@@ -175,7 +175,7 @@ static SDL_GpuGraphicsPipeline *MakePipeline(SDL_GpuDevice *device, GPU_Shaders
|
||||
pci.vertexInputState.vertexBindingCount = 1;
|
||||
pci.vertexInputState.vertexBindings = &bind;
|
||||
|
||||
return SDL_CreateGpuGraphicsPipeline(device, &pci);
|
||||
return SDL_CreateGPUGraphicsPipeline(device, &pci);
|
||||
}
|
||||
|
||||
static GPU_PipelineCacheKey MakePipelineCacheKey(const GPU_PipelineParameters *params)
|
||||
@@ -190,11 +190,11 @@ static GPU_PipelineCacheKey MakePipelineCacheKey(const GPU_PipelineParameters *p
|
||||
return key;
|
||||
}
|
||||
|
||||
SDL_GpuGraphicsPipeline *GPU_GetPipeline(GPU_PipelineCache *cache, GPU_Shaders *shaders, SDL_GpuDevice *device, const GPU_PipelineParameters *params)
|
||||
SDL_GPUGraphicsPipeline *GPU_GetPipeline(GPU_PipelineCache *cache, GPU_Shaders *shaders, SDL_GPUDevice *device, const GPU_PipelineParameters *params)
|
||||
{
|
||||
GPU_PipelineCacheKey key = MakePipelineCacheKey(params);
|
||||
void *keyval = (void *)(uintptr_t)HashPipelineCacheKey(&key);
|
||||
SDL_GpuGraphicsPipeline *pipeline = NULL;
|
||||
SDL_GPUGraphicsPipeline *pipeline = NULL;
|
||||
|
||||
void *iter = NULL;
|
||||
GPU_PipelineCacheEntry *entry = NULL;
|
||||
|
||||
@@ -33,8 +33,8 @@ typedef struct GPU_PipelineParameters
|
||||
SDL_BlendMode blend_mode;
|
||||
GPU_FragmentShaderID frag_shader;
|
||||
GPU_VertexShaderID vert_shader;
|
||||
SDL_GpuTextureFormat attachment_format;
|
||||
SDL_GpuPrimitiveType primitive_type;
|
||||
SDL_GPUTextureFormat attachment_format;
|
||||
SDL_GPUPrimitiveType primitive_type;
|
||||
} GPU_PipelineParameters;
|
||||
|
||||
typedef struct GPU_PipelineCache
|
||||
@@ -42,8 +42,8 @@ typedef struct GPU_PipelineCache
|
||||
SDL_HashTable *table;
|
||||
} GPU_PipelineCache;
|
||||
|
||||
extern bool GPU_InitPipelineCache(GPU_PipelineCache *cache, SDL_GpuDevice *device);
|
||||
extern bool GPU_InitPipelineCache(GPU_PipelineCache *cache, SDL_GPUDevice *device);
|
||||
extern void GPU_DestroyPipelineCache(GPU_PipelineCache *cache);
|
||||
extern SDL_GpuGraphicsPipeline *GPU_GetPipeline(GPU_PipelineCache *cache, GPU_Shaders *shaders, SDL_GpuDevice *device, const GPU_PipelineParameters *params);
|
||||
extern SDL_GPUGraphicsPipeline *GPU_GetPipeline(GPU_PipelineCache *cache, GPU_Shaders *shaders, SDL_GPUDevice *device, const GPU_PipelineParameters *params);
|
||||
|
||||
#endif // SDL_pipeline_gpu_h_
|
||||
|
||||
+125
-125
File diff suppressed because it is too large
Load Diff
@@ -24,13 +24,13 @@
|
||||
|
||||
#include "SDL_shaders_gpu.h"
|
||||
|
||||
// SDL_Gpu shader implementation
|
||||
// SDL_GPU shader implementation
|
||||
|
||||
typedef struct GPU_ShaderModuleSource
|
||||
{
|
||||
const unsigned char *code;
|
||||
unsigned int code_len;
|
||||
SDL_GpuShaderFormat format;
|
||||
SDL_GPUShaderFormat format;
|
||||
} GPU_ShaderModuleSource;
|
||||
|
||||
#ifdef SDL_GPU_VULKAN
|
||||
@@ -147,10 +147,10 @@ static const GPU_ShaderSources frag_shader_sources[NUM_FRAG_SHADERS] = {
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
static SDL_GpuShader *CompileShader(const GPU_ShaderSources *sources, SDL_GpuDevice *device, SDL_GpuShaderStage stage)
|
||||
static SDL_GPUShader *CompileShader(const GPU_ShaderSources *sources, SDL_GPUDevice *device, SDL_GPUShaderStage stage)
|
||||
{
|
||||
const GPU_ShaderModuleSource *sms = NULL;
|
||||
SDL_GpuDriver driver = SDL_GetGpuDriver(device);
|
||||
SDL_GPUDriver driver = SDL_GetGPUDriver(device);
|
||||
|
||||
switch (driver) {
|
||||
// clang-format off
|
||||
@@ -165,7 +165,7 @@ static SDL_GpuShader *CompileShader(const GPU_ShaderSources *sources, SDL_GpuDev
|
||||
return NULL;
|
||||
}
|
||||
|
||||
SDL_GpuShaderCreateInfo sci = { 0 };
|
||||
SDL_GPUShaderCreateInfo sci = { 0 };
|
||||
sci.code = sms->code;
|
||||
sci.codeSize = sms->code_len;
|
||||
sci.format = sms->format;
|
||||
@@ -175,10 +175,10 @@ static SDL_GpuShader *CompileShader(const GPU_ShaderSources *sources, SDL_GpuDev
|
||||
sci.uniformBufferCount = sources->num_uniform_buffers;
|
||||
sci.stage = stage;
|
||||
|
||||
return SDL_CreateGpuShader(device, &sci);
|
||||
return SDL_CreateGPUShader(device, &sci);
|
||||
}
|
||||
|
||||
bool GPU_InitShaders(GPU_Shaders *shaders, SDL_GpuDevice *device)
|
||||
bool GPU_InitShaders(GPU_Shaders *shaders, SDL_GPUDevice *device)
|
||||
{
|
||||
for (int i = 0; i < SDL_arraysize(vert_shader_sources); ++i) {
|
||||
shaders->vert_shaders[i] = CompileShader(
|
||||
@@ -201,31 +201,31 @@ bool GPU_InitShaders(GPU_Shaders *shaders, SDL_GpuDevice *device)
|
||||
return true;
|
||||
}
|
||||
|
||||
void GPU_ReleaseShaders(GPU_Shaders *shaders, SDL_GpuDevice *device)
|
||||
void GPU_ReleaseShaders(GPU_Shaders *shaders, SDL_GPUDevice *device)
|
||||
{
|
||||
for (int i = 0; i < SDL_arraysize(shaders->vert_shaders); ++i) {
|
||||
SDL_ReleaseGpuShader(device, shaders->vert_shaders[i]);
|
||||
SDL_ReleaseGPUShader(device, shaders->vert_shaders[i]);
|
||||
shaders->vert_shaders[i] = NULL;
|
||||
}
|
||||
|
||||
for (int i = 0; i < SDL_arraysize(shaders->frag_shaders); ++i) {
|
||||
SDL_ReleaseGpuShader(device, shaders->frag_shaders[i]);
|
||||
SDL_ReleaseGPUShader(device, shaders->frag_shaders[i]);
|
||||
shaders->frag_shaders[i] = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
SDL_GpuShader *GPU_GetVertexShader(GPU_Shaders *shaders, GPU_VertexShaderID id)
|
||||
SDL_GPUShader *GPU_GetVertexShader(GPU_Shaders *shaders, GPU_VertexShaderID id)
|
||||
{
|
||||
SDL_assert((unsigned int)id < SDL_arraysize(shaders->vert_shaders));
|
||||
SDL_GpuShader *shader = shaders->vert_shaders[id];
|
||||
SDL_GPUShader *shader = shaders->vert_shaders[id];
|
||||
SDL_assert(shader != NULL);
|
||||
return shader;
|
||||
}
|
||||
|
||||
SDL_GpuShader *GPU_GetFragmentShader(GPU_Shaders *shaders, GPU_FragmentShaderID id)
|
||||
SDL_GPUShader *GPU_GetFragmentShader(GPU_Shaders *shaders, GPU_FragmentShaderID id)
|
||||
{
|
||||
SDL_assert((unsigned int)id < SDL_arraysize(shaders->frag_shaders));
|
||||
SDL_GpuShader *shader = shaders->frag_shaders[id];
|
||||
SDL_GPUShader *shader = shaders->frag_shaders[id];
|
||||
SDL_assert(shader != NULL);
|
||||
return shader;
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
#include "SDL_internal.h"
|
||||
|
||||
// SDL_Gpu shader implementation
|
||||
// SDL_GPU shader implementation
|
||||
|
||||
typedef enum
|
||||
{
|
||||
@@ -48,16 +48,16 @@ typedef enum
|
||||
|
||||
struct GPU_Shaders
|
||||
{
|
||||
SDL_GpuShader *vert_shaders[NUM_VERT_SHADERS];
|
||||
SDL_GpuShader *frag_shaders[NUM_FRAG_SHADERS];
|
||||
SDL_GPUShader *vert_shaders[NUM_VERT_SHADERS];
|
||||
SDL_GPUShader *frag_shaders[NUM_FRAG_SHADERS];
|
||||
};
|
||||
|
||||
typedef struct GPU_Shaders GPU_Shaders;
|
||||
|
||||
void GPU_FillSupportedShaderFormats(SDL_PropertiesID props);
|
||||
extern bool GPU_InitShaders(GPU_Shaders *shaders, SDL_GpuDevice *device);
|
||||
extern void GPU_ReleaseShaders(GPU_Shaders *shaders, SDL_GpuDevice *device);
|
||||
extern SDL_GpuShader *GPU_GetVertexShader(GPU_Shaders *shaders, GPU_VertexShaderID id);
|
||||
extern SDL_GpuShader *GPU_GetFragmentShader(GPU_Shaders *shaders, GPU_FragmentShaderID id);
|
||||
extern bool GPU_InitShaders(GPU_Shaders *shaders, SDL_GPUDevice *device);
|
||||
extern void GPU_ReleaseShaders(GPU_Shaders *shaders, SDL_GPUDevice *device);
|
||||
extern SDL_GPUShader *GPU_GetVertexShader(GPU_Shaders *shaders, GPU_VertexShaderID id);
|
||||
extern SDL_GPUShader *GPU_GetFragmentShader(GPU_Shaders *shaders, GPU_FragmentShaderID id);
|
||||
|
||||
#endif // SDL_shaders_gpu_h_
|
||||
|
||||
@@ -691,8 +691,8 @@
|
||||
( (This)->Wait(pFence,Value) )
|
||||
#define ID3D12CommandQueue_GetTimestampFrequency(This,pFrequency) \
|
||||
( (This)->GetTimestampFrequency(pFrequency) )
|
||||
#define ID3D12CommandQueue_GetClockCalibration(This,pGpuTimestamp,pCpuTimestamp) \
|
||||
( (This)->GetClockCalibration(pGpuTimestamp,pCpuTimestamp) )
|
||||
#define ID3D12CommandQueue_GetClockCalibration(This,pGPUTimestamp,pCpuTimestamp) \
|
||||
( (This)->GetClockCalibration(pGPUTimestamp,pCpuTimestamp) )
|
||||
#define ID3D12Device_QueryInterface(This,riid,ppvObject) \
|
||||
( (This)->QueryInterface(riid,ppvObject) )
|
||||
#define ID3D12Device_AddRef(This) \
|
||||
|
||||
@@ -8670,7 +8670,7 @@ EXTERN_C const IID IID_ID3D12CommandQueue;
|
||||
_Out_ UINT64 *pFrequency) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetClockCalibration(
|
||||
_Out_ UINT64 *pGpuTimestamp,
|
||||
_Out_ UINT64 *pGPUTimestamp,
|
||||
_Out_ UINT64 *pCpuTimestamp) = 0;
|
||||
|
||||
#if defined(_MSC_VER) || !defined(_WIN32)
|
||||
@@ -8802,7 +8802,7 @@ EXTERN_C const IID IID_ID3D12CommandQueue;
|
||||
DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetClockCalibration)
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClockCalibration )(
|
||||
ID3D12CommandQueue * This,
|
||||
_Out_ UINT64 *pGpuTimestamp,
|
||||
_Out_ UINT64 *pGPUTimestamp,
|
||||
_Out_ UINT64 *pCpuTimestamp);
|
||||
|
||||
DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetDesc)
|
||||
@@ -8885,8 +8885,8 @@ EXTERN_C const IID IID_ID3D12CommandQueue;
|
||||
#define ID3D12CommandQueue_GetTimestampFrequency(This,pFrequency) \
|
||||
( (This)->lpVtbl -> GetTimestampFrequency(This,pFrequency) )
|
||||
|
||||
#define ID3D12CommandQueue_GetClockCalibration(This,pGpuTimestamp,pCpuTimestamp) \
|
||||
( (This)->lpVtbl -> GetClockCalibration(This,pGpuTimestamp,pCpuTimestamp) )
|
||||
#define ID3D12CommandQueue_GetClockCalibration(This,pGPUTimestamp,pCpuTimestamp) \
|
||||
( (This)->lpVtbl -> GetClockCalibration(This,pGPUTimestamp,pCpuTimestamp) )
|
||||
#if !defined(_WIN32)
|
||||
|
||||
#define ID3D12CommandQueue_GetDesc(This) \
|
||||
@@ -29176,7 +29176,7 @@ DEFINE_ENUM_FLAG_OPERATORS( D3D12_DEVICE_FLAGS )
|
||||
typedef struct D3D12_DEVICE_CONFIGURATION_DESC
|
||||
{
|
||||
D3D12_DEVICE_FLAGS Flags;
|
||||
UINT GpuBasedValidationFlags;
|
||||
UINT GPUBasedValidationFlags;
|
||||
UINT SDKVersion;
|
||||
UINT NumEnabledExperimentalFeatures;
|
||||
} D3D12_DEVICE_CONFIGURATION_DESC;
|
||||
|
||||
@@ -34,40 +34,40 @@ static Uint32 frames = 0;
|
||||
|
||||
typedef struct RenderState
|
||||
{
|
||||
SDL_GpuBuffer *buf_vertex;
|
||||
SDL_GpuGraphicsPipeline *pipeline;
|
||||
SDL_GpuSampleCount sample_count;
|
||||
SDL_GPUBuffer *buf_vertex;
|
||||
SDL_GPUGraphicsPipeline *pipeline;
|
||||
SDL_GPUSampleCount sample_count;
|
||||
} RenderState;
|
||||
|
||||
typedef struct WindowState
|
||||
{
|
||||
int angle_x, angle_y, angle_z;
|
||||
SDL_GpuTexture *tex_depth, *tex_msaa;
|
||||
SDL_GPUTexture *tex_depth, *tex_msaa;
|
||||
Uint32 prev_drawablew, prev_drawableh;
|
||||
} WindowState;
|
||||
|
||||
static SDL_GpuDevice *gpu_device = NULL;
|
||||
static SDL_GPUDevice *gpu_device = NULL;
|
||||
static RenderState render_state;
|
||||
static SDLTest_CommonState *state = NULL;
|
||||
static WindowState *window_states = NULL;
|
||||
|
||||
static void shutdownGpu(void)
|
||||
static void shutdownGPU(void)
|
||||
{
|
||||
if (window_states) {
|
||||
int i;
|
||||
for (i = 0; i < state->num_windows; i++) {
|
||||
WindowState *winstate = &window_states[i];
|
||||
SDL_ReleaseGpuTexture(gpu_device, winstate->tex_depth);
|
||||
SDL_ReleaseGpuTexture(gpu_device, winstate->tex_msaa);
|
||||
SDL_UnclaimGpuWindow(gpu_device, state->windows[i]);
|
||||
SDL_ReleaseGPUTexture(gpu_device, winstate->tex_depth);
|
||||
SDL_ReleaseGPUTexture(gpu_device, winstate->tex_msaa);
|
||||
SDL_UnclaimGPUWindow(gpu_device, state->windows[i]);
|
||||
}
|
||||
SDL_free(window_states);
|
||||
window_states = NULL;
|
||||
}
|
||||
|
||||
SDL_ReleaseGpuBuffer(gpu_device, render_state.buf_vertex);
|
||||
SDL_ReleaseGpuGraphicsPipeline(gpu_device, render_state.pipeline);
|
||||
SDL_DestroyGpuDevice(gpu_device);
|
||||
SDL_ReleaseGPUBuffer(gpu_device, render_state.buf_vertex);
|
||||
SDL_ReleaseGPUGraphicsPipeline(gpu_device, render_state.pipeline);
|
||||
SDL_DestroyGPUDevice(gpu_device);
|
||||
|
||||
SDL_zero(render_state);
|
||||
gpu_device = NULL;
|
||||
@@ -78,7 +78,7 @@ static void shutdownGpu(void)
|
||||
static void
|
||||
quit(int rc)
|
||||
{
|
||||
shutdownGpu();
|
||||
shutdownGPU();
|
||||
SDLTest_CommonQuit(state);
|
||||
exit(rc);
|
||||
}
|
||||
@@ -246,11 +246,11 @@ static const VertexData vertex_data[] = {
|
||||
{ 0.5, -0.5, 0.5, 1.0, 0.0, 1.0 } /* magenta */
|
||||
};
|
||||
|
||||
static SDL_GpuTexture*
|
||||
static SDL_GPUTexture*
|
||||
CreateDepthTexture(Uint32 drawablew, Uint32 drawableh)
|
||||
{
|
||||
SDL_GpuTextureCreateInfo depthtex_createinfo;
|
||||
SDL_GpuTexture *result;
|
||||
SDL_GPUTextureCreateInfo depthtex_createinfo;
|
||||
SDL_GPUTexture *result;
|
||||
|
||||
depthtex_createinfo.type = SDL_GPU_TEXTURETYPE_2D;
|
||||
depthtex_createinfo.format = SDL_GPU_TEXTUREFORMAT_D16_UNORM;
|
||||
@@ -262,24 +262,24 @@ CreateDepthTexture(Uint32 drawablew, Uint32 drawableh)
|
||||
depthtex_createinfo.usageFlags = SDL_GPU_TEXTUREUSAGE_DEPTH_STENCIL_TARGET_BIT;
|
||||
depthtex_createinfo.props = 0;
|
||||
|
||||
result = SDL_CreateGpuTexture(gpu_device, &depthtex_createinfo);
|
||||
result = SDL_CreateGPUTexture(gpu_device, &depthtex_createinfo);
|
||||
CHECK_CREATE(result, "Depth Texture")
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
static SDL_GpuTexture*
|
||||
static SDL_GPUTexture*
|
||||
CreateMSAATexture(Uint32 drawablew, Uint32 drawableh)
|
||||
{
|
||||
SDL_GpuTextureCreateInfo msaatex_createinfo;
|
||||
SDL_GpuTexture *result;
|
||||
SDL_GPUTextureCreateInfo msaatex_createinfo;
|
||||
SDL_GPUTexture *result;
|
||||
|
||||
if (render_state.sample_count == SDL_GPU_SAMPLECOUNT_1) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
msaatex_createinfo.type = SDL_GPU_TEXTURETYPE_2D;
|
||||
msaatex_createinfo.format = SDL_GetGpuSwapchainTextureFormat(gpu_device, state->windows[0]);
|
||||
msaatex_createinfo.format = SDL_GetGPUSwapchainTextureFormat(gpu_device, state->windows[0]);
|
||||
msaatex_createinfo.width = drawablew;
|
||||
msaatex_createinfo.height = drawableh;
|
||||
msaatex_createinfo.layerCountOrDepth = 1;
|
||||
@@ -288,7 +288,7 @@ CreateMSAATexture(Uint32 drawablew, Uint32 drawableh)
|
||||
msaatex_createinfo.usageFlags = SDL_GPU_TEXTUREUSAGE_COLOR_TARGET_BIT | SDL_GPU_TEXTUREUSAGE_SAMPLER_BIT;
|
||||
msaatex_createinfo.props = 0;
|
||||
|
||||
result = SDL_CreateGpuTexture(gpu_device, &msaatex_createinfo);
|
||||
result = SDL_CreateGPUTexture(gpu_device, &msaatex_createinfo);
|
||||
CHECK_CREATE(result, "MSAA Texture")
|
||||
|
||||
return result;
|
||||
@@ -298,25 +298,25 @@ static void
|
||||
Render(SDL_Window *window, const int windownum)
|
||||
{
|
||||
WindowState *winstate = &window_states[windownum];
|
||||
SDL_GpuTexture *swapchain;
|
||||
SDL_GpuColorAttachmentInfo color_attachment;
|
||||
SDL_GpuDepthStencilAttachmentInfo depth_attachment;
|
||||
SDL_GPUTexture *swapchain;
|
||||
SDL_GPUColorAttachmentInfo color_attachment;
|
||||
SDL_GPUDepthStencilAttachmentInfo depth_attachment;
|
||||
float matrix_rotate[16], matrix_modelview[16], matrix_perspective[16], matrix_final[16];
|
||||
Uint32 drawablew, drawableh;
|
||||
SDL_GpuCommandBuffer *cmd;
|
||||
SDL_GpuRenderPass *pass;
|
||||
SDL_GpuBufferBinding vertex_binding;
|
||||
SDL_GpuBlitRegion src_region;
|
||||
SDL_GpuBlitRegion dst_region;
|
||||
SDL_GPUCommandBuffer *cmd;
|
||||
SDL_GPURenderPass *pass;
|
||||
SDL_GPUBufferBinding vertex_binding;
|
||||
SDL_GPUBlitRegion src_region;
|
||||
SDL_GPUBlitRegion dst_region;
|
||||
|
||||
/* Acquire the swapchain texture */
|
||||
|
||||
cmd = SDL_AcquireGpuCommandBuffer(gpu_device);
|
||||
swapchain = SDL_AcquireGpuSwapchainTexture(cmd, state->windows[windownum], &drawablew, &drawableh);
|
||||
cmd = SDL_AcquireGPUCommandBuffer(gpu_device);
|
||||
swapchain = SDL_AcquireGPUSwapchainTexture(cmd, state->windows[windownum], &drawablew, &drawableh);
|
||||
|
||||
if (!swapchain) {
|
||||
/* No swapchain was acquired, probably too many frames in flight */
|
||||
SDL_SubmitGpu(cmd);
|
||||
SDL_SubmitGPU(cmd);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -353,8 +353,8 @@ Render(SDL_Window *window, const int windownum)
|
||||
/* Resize the depth buffer if the window size changed */
|
||||
|
||||
if (winstate->prev_drawablew != drawablew || winstate->prev_drawableh != drawableh) {
|
||||
SDL_ReleaseGpuTexture(gpu_device, winstate->tex_depth);
|
||||
SDL_ReleaseGpuTexture(gpu_device, winstate->tex_msaa);
|
||||
SDL_ReleaseGPUTexture(gpu_device, winstate->tex_depth);
|
||||
SDL_ReleaseGPUTexture(gpu_device, winstate->tex_msaa);
|
||||
winstate->tex_depth = CreateDepthTexture(drawablew, drawableh);
|
||||
winstate->tex_msaa = CreateMSAATexture(drawablew, drawableh);
|
||||
}
|
||||
@@ -383,13 +383,13 @@ Render(SDL_Window *window, const int windownum)
|
||||
|
||||
/* Draw the cube! */
|
||||
|
||||
SDL_PushGpuVertexUniformData(cmd, 0, matrix_final, sizeof(matrix_final));
|
||||
SDL_PushGPUVertexUniformData(cmd, 0, matrix_final, sizeof(matrix_final));
|
||||
|
||||
pass = SDL_BeginGpuRenderPass(cmd, &color_attachment, 1, &depth_attachment);
|
||||
SDL_BindGpuGraphicsPipeline(pass, render_state.pipeline);
|
||||
SDL_BindGpuVertexBuffers(pass, 0, &vertex_binding, 1);
|
||||
SDL_DrawGpuPrimitives(pass, 36, 1, 0, 0);
|
||||
SDL_EndGpuRenderPass(pass);
|
||||
pass = SDL_BeginGPURenderPass(cmd, &color_attachment, 1, &depth_attachment);
|
||||
SDL_BindGPUGraphicsPipeline(pass, render_state.pipeline);
|
||||
SDL_BindGPUVertexBuffers(pass, 0, &vertex_binding, 1);
|
||||
SDL_DrawGPUPrimitives(pass, 36, 1, 0, 0);
|
||||
SDL_EndGPURenderPass(pass);
|
||||
|
||||
/* Blit MSAA to swapchain, if needed */
|
||||
if (render_state.sample_count > SDL_GPU_SAMPLECOUNT_1) {
|
||||
@@ -401,26 +401,26 @@ Render(SDL_Window *window, const int windownum)
|
||||
dst_region = src_region;
|
||||
dst_region.texture = swapchain;
|
||||
|
||||
SDL_BlitGpu(cmd, &src_region, &dst_region, SDL_FLIP_NONE, SDL_GPU_FILTER_LINEAR, SDL_FALSE);
|
||||
SDL_BlitGPU(cmd, &src_region, &dst_region, SDL_FLIP_NONE, SDL_GPU_FILTER_LINEAR, SDL_FALSE);
|
||||
}
|
||||
|
||||
/* Submit the command buffer! */
|
||||
SDL_SubmitGpu(cmd);
|
||||
SDL_SubmitGPU(cmd);
|
||||
|
||||
++frames;
|
||||
}
|
||||
|
||||
static SDL_GpuShader*
|
||||
static SDL_GPUShader*
|
||||
load_shader(SDL_bool is_vertex)
|
||||
{
|
||||
SDL_GpuShaderCreateInfo createinfo;
|
||||
SDL_GPUShaderCreateInfo createinfo;
|
||||
createinfo.samplerCount = 0;
|
||||
createinfo.storageBufferCount = 0;
|
||||
createinfo.storageTextureCount = 0;
|
||||
createinfo.uniformBufferCount = is_vertex ? 1 : 0;
|
||||
createinfo.props = 0;
|
||||
|
||||
SDL_GpuDriver backend = SDL_GetGpuDriver(gpu_device);
|
||||
SDL_GPUDriver backend = SDL_GetGPUDriver(gpu_device);
|
||||
if (backend == SDL_GPU_DRIVER_D3D11) {
|
||||
createinfo.format = SDL_GPU_SHADERFORMAT_DXBC;
|
||||
createinfo.code = is_vertex ? D3D11_CubeVert : D3D11_CubeFrag;
|
||||
@@ -444,30 +444,30 @@ load_shader(SDL_bool is_vertex)
|
||||
}
|
||||
|
||||
createinfo.stage = is_vertex ? SDL_GPU_SHADERSTAGE_VERTEX : SDL_GPU_SHADERSTAGE_FRAGMENT;
|
||||
return SDL_CreateGpuShader(gpu_device, &createinfo);
|
||||
return SDL_CreateGPUShader(gpu_device, &createinfo);
|
||||
}
|
||||
|
||||
static void
|
||||
init_render_state(int msaa)
|
||||
{
|
||||
SDL_GpuCommandBuffer *cmd;
|
||||
SDL_GpuTransferBuffer *buf_transfer;
|
||||
SDL_GPUCommandBuffer *cmd;
|
||||
SDL_GPUTransferBuffer *buf_transfer;
|
||||
void *map;
|
||||
SDL_GpuTransferBufferLocation buf_location;
|
||||
SDL_GpuBufferRegion dst_region;
|
||||
SDL_GpuCopyPass *copy_pass;
|
||||
SDL_GpuBufferCreateInfo buffer_desc;
|
||||
SDL_GpuTransferBufferCreateInfo transfer_buffer_desc;
|
||||
SDL_GpuGraphicsPipelineCreateInfo pipelinedesc;
|
||||
SDL_GpuColorAttachmentDescription color_attachment_desc;
|
||||
SDL_GPUTransferBufferLocation buf_location;
|
||||
SDL_GPUBufferRegion dst_region;
|
||||
SDL_GPUCopyPass *copy_pass;
|
||||
SDL_GPUBufferCreateInfo buffer_desc;
|
||||
SDL_GPUTransferBufferCreateInfo transfer_buffer_desc;
|
||||
SDL_GPUGraphicsPipelineCreateInfo pipelinedesc;
|
||||
SDL_GPUColorAttachmentDescription color_attachment_desc;
|
||||
Uint32 drawablew, drawableh;
|
||||
SDL_GpuVertexAttribute vertex_attributes[2];
|
||||
SDL_GpuVertexBinding vertex_binding;
|
||||
SDL_GpuShader *vertex_shader;
|
||||
SDL_GpuShader *fragment_shader;
|
||||
SDL_GPUVertexAttribute vertex_attributes[2];
|
||||
SDL_GPUVertexBinding vertex_binding;
|
||||
SDL_GPUShader *vertex_shader;
|
||||
SDL_GPUShader *fragment_shader;
|
||||
int i;
|
||||
|
||||
gpu_device = SDL_CreateGpuDevice(
|
||||
gpu_device = SDL_CreateGPUDevice(
|
||||
TESTGPU_SUPPORTED_FORMATS,
|
||||
1,
|
||||
0,
|
||||
@@ -478,7 +478,7 @@ init_render_state(int msaa)
|
||||
/* Claim the windows */
|
||||
|
||||
for (i = 0; i < state->num_windows; i++) {
|
||||
SDL_ClaimGpuWindow(
|
||||
SDL_ClaimGPUWindow(
|
||||
gpu_device,
|
||||
state->windows[i]
|
||||
);
|
||||
@@ -496,46 +496,46 @@ init_render_state(int msaa)
|
||||
buffer_desc.usageFlags = SDL_GPU_BUFFERUSAGE_VERTEX_BIT;
|
||||
buffer_desc.sizeInBytes = sizeof(vertex_data);
|
||||
buffer_desc.props = 0;
|
||||
render_state.buf_vertex = SDL_CreateGpuBuffer(
|
||||
render_state.buf_vertex = SDL_CreateGPUBuffer(
|
||||
gpu_device,
|
||||
&buffer_desc
|
||||
);
|
||||
CHECK_CREATE(render_state.buf_vertex, "Static vertex buffer")
|
||||
|
||||
SDL_SetGpuBufferName(gpu_device, render_state.buf_vertex, "космонавт");
|
||||
SDL_SetGPUBufferName(gpu_device, render_state.buf_vertex, "космонавт");
|
||||
|
||||
transfer_buffer_desc.usage = SDL_GPU_TRANSFERBUFFERUSAGE_UPLOAD;
|
||||
transfer_buffer_desc.sizeInBytes = sizeof(vertex_data);
|
||||
transfer_buffer_desc.props = 0;
|
||||
buf_transfer = SDL_CreateGpuTransferBuffer(
|
||||
buf_transfer = SDL_CreateGPUTransferBuffer(
|
||||
gpu_device,
|
||||
&transfer_buffer_desc
|
||||
);
|
||||
CHECK_CREATE(buf_transfer, "Vertex transfer buffer")
|
||||
|
||||
/* We just need to upload the static data once. */
|
||||
map = SDL_MapGpuTransferBuffer(gpu_device, buf_transfer, SDL_FALSE);
|
||||
map = SDL_MapGPUTransferBuffer(gpu_device, buf_transfer, SDL_FALSE);
|
||||
SDL_memcpy(map, vertex_data, sizeof(vertex_data));
|
||||
SDL_UnmapGpuTransferBuffer(gpu_device, buf_transfer);
|
||||
SDL_UnmapGPUTransferBuffer(gpu_device, buf_transfer);
|
||||
|
||||
cmd = SDL_AcquireGpuCommandBuffer(gpu_device);
|
||||
copy_pass = SDL_BeginGpuCopyPass(cmd);
|
||||
cmd = SDL_AcquireGPUCommandBuffer(gpu_device);
|
||||
copy_pass = SDL_BeginGPUCopyPass(cmd);
|
||||
buf_location.transferBuffer = buf_transfer;
|
||||
buf_location.offset = 0;
|
||||
dst_region.buffer = render_state.buf_vertex;
|
||||
dst_region.offset = 0;
|
||||
dst_region.size = sizeof(vertex_data);
|
||||
SDL_UploadToGpuBuffer(copy_pass, &buf_location, &dst_region, SDL_FALSE);
|
||||
SDL_EndGpuCopyPass(copy_pass);
|
||||
SDL_SubmitGpu(cmd);
|
||||
SDL_UploadToGPUBuffer(copy_pass, &buf_location, &dst_region, SDL_FALSE);
|
||||
SDL_EndGPUCopyPass(copy_pass);
|
||||
SDL_SubmitGPU(cmd);
|
||||
|
||||
SDL_ReleaseGpuTransferBuffer(gpu_device, buf_transfer);
|
||||
SDL_ReleaseGPUTransferBuffer(gpu_device, buf_transfer);
|
||||
|
||||
/* Determine which sample count to use */
|
||||
render_state.sample_count = SDL_GPU_SAMPLECOUNT_1;
|
||||
if (msaa && SDL_SupportsGpuSampleCount(
|
||||
if (msaa && SDL_SupportsGPUSampleCount(
|
||||
gpu_device,
|
||||
SDL_GetGpuSwapchainTextureFormat(gpu_device, state->windows[0]),
|
||||
SDL_GetGPUSwapchainTextureFormat(gpu_device, state->windows[0]),
|
||||
SDL_GPU_SAMPLECOUNT_4)) {
|
||||
render_state.sample_count = SDL_GPU_SAMPLECOUNT_4;
|
||||
}
|
||||
@@ -544,7 +544,7 @@ init_render_state(int msaa)
|
||||
|
||||
SDL_zero(pipelinedesc);
|
||||
|
||||
color_attachment_desc.format = SDL_GetGpuSwapchainTextureFormat(gpu_device, state->windows[0]);
|
||||
color_attachment_desc.format = SDL_GetGPUSwapchainTextureFormat(gpu_device, state->windows[0]);
|
||||
|
||||
color_attachment_desc.blendState.blendEnable = 0;
|
||||
color_attachment_desc.blendState.alphaBlendOp = SDL_GPU_BLENDOP_ADD;
|
||||
@@ -590,16 +590,16 @@ init_render_state(int msaa)
|
||||
pipelinedesc.vertexInputState.vertexBindingCount = 1;
|
||||
pipelinedesc.vertexInputState.vertexBindings = &vertex_binding;
|
||||
pipelinedesc.vertexInputState.vertexAttributeCount = 2;
|
||||
pipelinedesc.vertexInputState.vertexAttributes = (SDL_GpuVertexAttribute*) &vertex_attributes;
|
||||
pipelinedesc.vertexInputState.vertexAttributes = (SDL_GPUVertexAttribute*) &vertex_attributes;
|
||||
|
||||
pipelinedesc.props = 0;
|
||||
|
||||
render_state.pipeline = SDL_CreateGpuGraphicsPipeline(gpu_device, &pipelinedesc);
|
||||
render_state.pipeline = SDL_CreateGPUGraphicsPipeline(gpu_device, &pipelinedesc);
|
||||
CHECK_CREATE(render_state.pipeline, "Render Pipeline")
|
||||
|
||||
/* These are reference-counted; once the pipeline is created, you don't need to keep these. */
|
||||
SDL_ReleaseGpuShader(gpu_device, vertex_shader);
|
||||
SDL_ReleaseGpuShader(gpu_device, fragment_shader);
|
||||
SDL_ReleaseGPUShader(gpu_device, vertex_shader);
|
||||
SDL_ReleaseGPUShader(gpu_device, fragment_shader);
|
||||
|
||||
/* Set up per-window state */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user