diff options
| -rw-r--r-- | demos/cube.c | 1 | ||||
| -rw-r--r-- | demos/tri.c | 1 | ||||
| -rw-r--r-- | include/xgl.h | 23 | ||||
| -rw-r--r-- | include/xglLayer.h | 2 | ||||
| -rw-r--r-- | xgl.py | 8 |
5 files changed, 20 insertions, 15 deletions
diff --git a/demos/cube.c b/demos/cube.c index a9639716..fdd300c4 100644 --- a/demos/cube.c +++ b/demos/cube.c @@ -282,7 +282,6 @@ static void demo_draw_build_cmd(struct demo *demo) XGL_CMD_BUFFER_GRAPHICS_BEGIN_INFO graphics_cmd_buf_info = { .sType = XGL_STRUCTURE_TYPE_CMD_BUFFER_GRAPHICS_BEGIN_INFO, .pNext = NULL, - .operation = XGL_RENDER_PASS_OPERATION_BEGIN_AND_END, }; XGL_CMD_BUFFER_BEGIN_INFO cmd_buf_info = { .sType = XGL_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO, diff --git a/demos/tri.c b/demos/tri.c index 929d1585..5a770f4c 100644 --- a/demos/tri.c +++ b/demos/tri.c @@ -104,7 +104,6 @@ static void demo_draw_build_cmd(struct demo *demo) XGL_CMD_BUFFER_GRAPHICS_BEGIN_INFO graphics_cmd_buf_info = { .sType = XGL_STRUCTURE_TYPE_CMD_BUFFER_GRAPHICS_BEGIN_INFO, .pNext = NULL, - .operation = XGL_RENDER_PASS_OPERATION_BEGIN_AND_END, }; XGL_CMD_BUFFER_BEGIN_INFO cmd_buf_info = { .sType = XGL_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO, diff --git a/include/xgl.h b/include/xgl.h index 59254a3d..18ae993e 100644 --- a/include/xgl.h +++ b/include/xgl.h @@ -1007,17 +1007,6 @@ typedef enum _XGL_SHADER_STAGE_FLAGS XGL_MAX_ENUM(_XGL_SHADER_STAGE_FLAGS) } XGL_SHADER_STAGE_FLAGS; -// Graphics workload submit type. Used for rendering workloads. -typedef enum _XGL_RENDER_PASS_OPERATION -{ - XGL_RENDER_PASS_OPERATION_BEGIN, // Start rendering - XGL_RENDER_PASS_OPERATION_CONTINUE, // Continue rendering - XGL_RENDER_PASS_OPERATION_END, // End rendering - XGL_RENDER_PASS_OPERATION_BEGIN_AND_END, // Start and finish rendering in a single command buffer - - XGL_MAX_ENUM(_XGL_RENDER_PASS_OPERATION) -} XGL_RENDER_PASS_OPERATION; - // Structure type enumerant typedef enum _XGL_STRUCTURE_TYPE { @@ -2108,7 +2097,6 @@ typedef struct _XGL_CMD_BUFFER_GRAPHICS_BEGIN_INFO const void* pNext; // Pointer to next structure XGL_RENDER_PASS renderPass; - XGL_RENDER_PASS_OPERATION operation; } XGL_CMD_BUFFER_GRAPHICS_BEGIN_INFO; @@ -2352,7 +2340,8 @@ typedef void (XGLAPI *xglCmdLoadAtomicCountersType)(XGL_CMD_BUFFER cmdBuffer, XG typedef void (XGLAPI *xglCmdSaveAtomicCountersType)(XGL_CMD_BUFFER cmdBuffer, XGL_PIPELINE_BIND_POINT pipelineBindPoint, uint32_t startCounter, uint32_t counterCount, XGL_BUFFER destBuffer, XGL_GPU_SIZE destOffset); typedef XGL_RESULT (XGLAPI *xglCreateFramebufferType)(XGL_DEVICE device, const XGL_FRAMEBUFFER_CREATE_INFO* pCreateInfo, XGL_FRAMEBUFFER* pFramebuffer); typedef XGL_RESULT (XGLAPI *xglCreateRenderPassType)(XGL_DEVICE device, const XGL_RENDER_PASS_CREATE_INFO* pCreateInfo, XGL_RENDER_PASS* pRenderPass); - +typedef void (XGLAPI *xglCmdBeginRenderPassType)(XGL_CMD_BUFFER cmdBuffer, XGL_RENDER_PASS renderPass); +typedef void (XGLAPI *xglCmdEndRenderPassType)(XGL_CMD_BUFFER cmdBuffer, XGL_RENDER_PASS renderPass); #ifdef XGL_PROTOTYPES // GPU initialization @@ -2998,6 +2987,14 @@ XGL_RESULT XGLAPI xglCreateRenderPass( const XGL_RENDER_PASS_CREATE_INFO* pCreateInfo, XGL_RENDER_PASS* pRenderPass); +void XGLAPI xglCmdBeginRenderPass( + XGL_CMD_BUFFER cmdBuffer, + XGL_RENDER_PASS renderPass); + +void XGLAPI xglCmdEndRenderPass( + XGL_CMD_BUFFER cmdBuffer, + XGL_RENDER_PASS renderPass); + #endif /* XGL_PROTOTYPES */ #ifdef __cplusplus diff --git a/include/xglLayer.h b/include/xglLayer.h index a229b2cf..97a2d4fa 100644 --- a/include/xglLayer.h +++ b/include/xglLayer.h @@ -136,6 +136,8 @@ typedef struct _XGL_LAYER_DISPATCH_TABLE xglCmdSaveAtomicCountersType CmdSaveAtomicCounters; xglCreateFramebufferType CreateFramebuffer; xglCreateRenderPassType CreateRenderPass; + xglCmdBeginRenderPassType CmdBeginRenderPass; + xglCmdEndRenderPassType CmdEndRenderPass; xglDbgSetValidationLevelType DbgSetValidationLevel; xglDbgRegisterMsgCallbackType DbgRegisterMsgCallback; xglDbgUnregisterMsgCallbackType DbgUnregisterMsgCallback; @@ -813,6 +813,14 @@ core = Extension( Param("const XGL_RENDER_PASS_CREATE_INFO*", "pCreateInfo"), Param("XGL_RENDER_PASS*", "pRenderPass")]), + Proto("void", "CmdBeginRenderPass", + [Param("XGL_CMD_BUFFER", "cmdBuffer"), + Param("XGL_RENDER_PASS", "renderPass")]), + + Proto("void", "CmdEndRenderPass", + [Param("XGL_CMD_BUFFER", "cmdBuffer"), + Param("XGL_RENDER_PASS", "renderPass")]), + Proto("XGL_RESULT", "DbgSetValidationLevel", [Param("XGL_DEVICE", "device"), Param("XGL_VALIDATION_LEVEL", "validationLevel")]), |
