Skip to content

Commit

Permalink
Merge remote-tracking branch 'snacchus/gfx-rdp' into gfx-rdp
Browse files Browse the repository at this point in the history
  • Loading branch information
rasky committed Jun 4, 2023
2 parents 4ab5a37 + 11e6d0b commit 97c34f7
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
8 changes: 8 additions & 0 deletions src/GL/gl.c
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,11 @@ void gl_close()
rdpq_close();
}

void gl_reset_uploaded_texture()
{
gl_set_word(GL_UPDATE_NONE, offsetof(gl_server_state_t, uploaded_tex), 0);
}

void gl_context_begin()
{
const surface_t *old_color_buffer = state.color_buffer;
Expand All @@ -179,6 +184,8 @@ void gl_context_begin()
glScissor(0, 0, width, height);
}

gl_reset_uploaded_texture();

state.frame_id++;
}

Expand Down Expand Up @@ -286,6 +293,7 @@ void gl_set_flag2(GLenum target, bool value)
break;
case GL_RDPQ_TEXTURING_N64:
gl_set_flag_word2(GL_UPDATE_NONE, FLAG2_USE_RDPQ_TEXTURING, value);
gl_reset_uploaded_texture();
break;
case GL_SCISSOR_TEST:
gl_set_flag(GL_UPDATE_SCISSOR, FLAG_SCISSOR_TEST, value);
Expand Down
3 changes: 2 additions & 1 deletion src/GL/rsp_pipeline.c
Original file line number Diff line number Diff line change
Expand Up @@ -302,6 +302,7 @@ static void gl_asm_vtx_loader(const gl_array_t *arrays)
const uint8_t cmd_ptr_reg = 20;
const uint8_t norm_reg = 2;
const uint8_t dst_vreg_base = 24;
const uint32_t current_normal_offset = offsetof(gl_server_state_t, normal) - offsetof(gl_server_state_t, color);

uint32_t cmd_offset = 0;

Expand Down Expand Up @@ -344,7 +345,7 @@ static void gl_asm_vtx_loader(const gl_array_t *arrays)
}

if (!arrays[ATTRIB_NORMAL].enabled) {
rspq_write_arg(&w, rsp_asm_lw(norm_reg, 0x18, current_reg));
rspq_write_arg(&w, rsp_asm_lw(norm_reg, current_normal_offset, current_reg));
} else {
rspq_write_arg(&w, rsp_asm_lw(norm_reg, cmd_offset, cmd_ptr_reg));
}
Expand Down

0 comments on commit 97c34f7

Please sign in to comment.