Correct C3D_SetScissor

This commit is contained in:
fincs 2015-11-26 23:54:06 +01:00
parent cd39c3b8d1
commit 1fec391865
2 changed files with 4 additions and 4 deletions

View File

@ -16,7 +16,7 @@ void C3D_Fini(void);
void C3D_BindProgram(shaderProgram_s* program); void C3D_BindProgram(shaderProgram_s* program);
void C3D_SetViewport(u32 x, u32 y, u32 w, u32 h); void C3D_SetViewport(u32 x, u32 y, u32 w, u32 h);
void C3D_SetScissor(GPU_SCISSORMODE mode, u32 x, u32 y, u32 w, u32 h); void C3D_SetScissor(GPU_SCISSORMODE mode, u32 left, u32 top, u32 right, u32 bottom);
void C3D_DrawArrays(GPU_Primitive_t primitive, int first, int size); void C3D_DrawArrays(GPU_Primitive_t primitive, int first, int size);
void C3D_DrawElements(GPU_Primitive_t primitive, int count, int type, const void* indices); void C3D_DrawElements(GPU_Primitive_t primitive, int count, int type, const void* indices);

View File

@ -121,14 +121,14 @@ void C3D_SetViewport(u32 x, u32 y, u32 w, u32 h)
ctx->scissor[0] = GPU_SCISSOR_DISABLE; ctx->scissor[0] = GPU_SCISSOR_DISABLE;
} }
void C3D_SetScissor(GPU_SCISSORMODE mode, u32 x, u32 y, u32 w, u32 h) void C3D_SetScissor(GPU_SCISSORMODE mode, u32 left, u32 top, u32 right, u32 bottom)
{ {
C3D_Context* ctx = C3Di_GetContext(); C3D_Context* ctx = C3Di_GetContext();
ctx->flags |= C3DiF_Scissor; ctx->flags |= C3DiF_Scissor;
ctx->scissor[0] = mode; ctx->scissor[0] = mode;
if (mode == GPU_SCISSOR_DISABLE) return; if (mode == GPU_SCISSOR_DISABLE) return;
ctx->scissor[1] = (y << 16) | (x & 0xFFFF); ctx->scissor[1] = (top << 16) | (left & 0xFFFF);
ctx->scissor[2] = ((h-1) << 16) | ((w-1) & 0xFFFF); ctx->scissor[2] = ((bottom-1) << 16) | ((right-1) & 0xFFFF);
} }
void C3Di_UpdateContext(void) void C3Di_UpdateContext(void)