mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 11:26:18 -04:00
stuff
This commit is contained in:
parent
b85ee3a3a5
commit
c87b818d82
|
@ -83,6 +83,10 @@ void DirectRenderer::flush_pending(SharedRenderState* render_state) {
|
||||||
// glEnable(GL_DEPTH_TEST);
|
// glEnable(GL_DEPTH_TEST);
|
||||||
// glDepthFunc(GL_ALWAYS);
|
// glDepthFunc(GL_ALWAYS);
|
||||||
|
|
||||||
|
GLuint vao;
|
||||||
|
glGenVertexArrays(1, &vao);
|
||||||
|
glBindVertexArray(vao);
|
||||||
|
|
||||||
// render!
|
// render!
|
||||||
// update buffers:
|
// update buffers:
|
||||||
glBindBuffer(GL_ARRAY_BUFFER, m_ogl.vertex_buffer);
|
glBindBuffer(GL_ARRAY_BUFFER, m_ogl.vertex_buffer);
|
||||||
|
@ -130,8 +134,11 @@ void DirectRenderer::flush_pending(SharedRenderState* render_state) {
|
||||||
}
|
}
|
||||||
// assert(false);
|
// assert(false);
|
||||||
glDrawArrays(GL_TRIANGLES, 0, m_prim_buffer.vert_count);
|
glDrawArrays(GL_TRIANGLES, 0, m_prim_buffer.vert_count);
|
||||||
|
glBindVertexArray(0);
|
||||||
m_triangles += m_prim_buffer.vert_count / 3;
|
m_triangles += m_prim_buffer.vert_count / 3;
|
||||||
m_prim_buffer.vert_count = 0;
|
m_prim_buffer.vert_count = 0;
|
||||||
|
|
||||||
|
glDeleteVertexArrays(1, &vao);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DirectRenderer::update_gl_prim(SharedRenderState* render_state) {
|
void DirectRenderer::update_gl_prim(SharedRenderState* render_state) {
|
||||||
|
@ -775,4 +782,4 @@ void DirectRenderer::PrimitiveBuffer::push(const math::Vector<u8, 4>& rgba,
|
||||||
verts[vert_count] = vert;
|
verts[vert_count] = vert;
|
||||||
sts[vert_count] = st;
|
sts[vert_count] = st;
|
||||||
vert_count++;
|
vert_count++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -125,10 +125,13 @@ void OpenGLRenderer::draw_test_triangle() {
|
||||||
//////////
|
//////////
|
||||||
|
|
||||||
// create "buffer object names"
|
// create "buffer object names"
|
||||||
GLuint vertex_buffer, color_buffer;
|
GLuint vertex_buffer, color_buffer, vao;
|
||||||
glGenBuffers(1, &vertex_buffer);
|
glGenBuffers(1, &vertex_buffer);
|
||||||
glGenBuffers(1, &color_buffer);
|
glGenBuffers(1, &color_buffer);
|
||||||
|
|
||||||
|
glGenVertexArrays(1, &vao);
|
||||||
|
glBindVertexArray(vao);
|
||||||
|
|
||||||
// set vertex data
|
// set vertex data
|
||||||
glBindBuffer(GL_ARRAY_BUFFER, vertex_buffer);
|
glBindBuffer(GL_ARRAY_BUFFER, vertex_buffer);
|
||||||
const float verts[9] = {0.0, 0.8, 0, -0.5, -0.5 * .866, 0, 0.5, -0.5 * .866, 0};
|
const float verts[9] = {0.0, 0.8, 0, -0.5, -0.5 * .866, 0, 0.5, -0.5 * .866, 0};
|
||||||
|
@ -161,6 +164,7 @@ void OpenGLRenderer::draw_test_triangle() {
|
||||||
glVertexAttribPointer(1, 4, GL_FLOAT, GL_FALSE, 0, (void*)0);
|
glVertexAttribPointer(1, 4, GL_FLOAT, GL_FALSE, 0, (void*)0);
|
||||||
|
|
||||||
glDrawArrays(GL_TRIANGLES, 0, 3);
|
glDrawArrays(GL_TRIANGLES, 0, 3);
|
||||||
|
glBindVertexArray(0);
|
||||||
|
|
||||||
////////////
|
////////////
|
||||||
// Clean Up
|
// Clean Up
|
||||||
|
@ -168,4 +172,5 @@ void OpenGLRenderer::draw_test_triangle() {
|
||||||
// delete buffer
|
// delete buffer
|
||||||
glDeleteBuffers(1, &color_buffer);
|
glDeleteBuffers(1, &color_buffer);
|
||||||
glDeleteBuffers(1, &vertex_buffer);
|
glDeleteBuffers(1, &vertex_buffer);
|
||||||
|
glDeleteVertexArrays(1, &vao);
|
||||||
}
|
}
|
||||||
|
|
|
@ -77,9 +77,11 @@ static int gl_init() {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// request OpenGL 3.0 (placeholder)
|
// request Debug OpenGL 3.3 Core
|
||||||
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
|
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); // 3.3
|
||||||
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 0);
|
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
|
||||||
|
glfwWindowHint(GLFW_OPENGL_DEBUG_CONTEXT, GLFW_TRUE); // debug
|
||||||
|
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); // core profile, not compat
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -255,7 +255,7 @@ void dmac_runner(SystemThreadInterface& iface) {
|
||||||
while (!iface.get_want_exit() && !VM::vm_want_exit()) {
|
while (!iface.get_want_exit() && !VM::vm_want_exit()) {
|
||||||
for (int i = 0; i < 10; ++i) {
|
for (int i = 0; i < 10; ++i) {
|
||||||
if (VM::dmac_ch[i]->chcr.str) {
|
if (VM::dmac_ch[i]->chcr.str) {
|
||||||
lg::info("DMA detected on channel {}, clearing", i);
|
// lg::info("DMA detected on channel {}, clearing", i);
|
||||||
VM::dmac_ch[i]->chcr.str = 0;
|
VM::dmac_ch[i]->chcr.str = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
@echo off
|
@echo off
|
||||||
cd ..\..
|
cd ..\..
|
||||||
out\build\Release\bin\goalc -v -auto-lt
|
out\build\Release\bin\goalc -v -auto-lt
|
||||||
|
pause
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
@echo off
|
@echo off
|
||||||
cd ..\..
|
cd ..\..
|
||||||
out\build\Release\bin\gk -fakeiso -debug -v
|
out\build\Release\bin\gk -fakeiso -debug -v
|
||||||
|
pause
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
@echo off
|
@echo off
|
||||||
cd ..\..
|
cd ..\..
|
||||||
out\build\Release\bin\gk -fakeiso -debug -v -nodisplay
|
out\build\Release\bin\gk -fakeiso -debug -v -nodisplay
|
||||||
|
pause
|
||||||
|
|
Loading…
Reference in a new issue