mirror of
https://github.com/korenkonder/ReDIVA.git
synced 2026-10-01 03:08:16 +03:00
gl_rend_state massive overhaul. Created render_data_context
This commit is contained in:
+5
-5
@@ -12,7 +12,7 @@
|
||||
#include "../KKdLib/msgpack.hpp"
|
||||
#include "../KKdLib/str_utils.hpp"
|
||||
#include "data.hpp"
|
||||
#include "gl_rend_state.hpp"
|
||||
#include "gl_state.hpp"
|
||||
#include "render_context.hpp"
|
||||
#include "shader_ft.hpp"
|
||||
#include <list>
|
||||
@@ -2407,12 +2407,12 @@ inline void objset_info_storage_free() {
|
||||
static GLuint create_index_buffer(size_t size, const void* data) {
|
||||
GLuint buffer = 0;
|
||||
glGenBuffers(1, &buffer);
|
||||
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, buffer);
|
||||
gl_state.bind_element_array_buffer(buffer);
|
||||
if (GLAD_GL_VERSION_4_4)
|
||||
glBufferStorage(GL_ELEMENT_ARRAY_BUFFER, (GLsizeiptr)size, data, 0);
|
||||
else
|
||||
glBufferData(GL_ELEMENT_ARRAY_BUFFER, (GLsizeiptr)size, data, GL_STATIC_DRAW);
|
||||
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
|
||||
gl_state.bind_element_array_buffer(0);
|
||||
|
||||
if (glGetError()) {
|
||||
glDeleteBuffers(1, &buffer);
|
||||
@@ -2424,14 +2424,14 @@ static GLuint create_index_buffer(size_t size, const void* data) {
|
||||
static GLuint create_vertex_buffer(size_t size, const void* data, bool dynamic) {
|
||||
GLuint buffer = 0;
|
||||
glGenBuffers(1, &buffer);
|
||||
glBindBuffer(GL_ARRAY_BUFFER, buffer);
|
||||
gl_state.bind_array_buffer(buffer);
|
||||
if (GLAD_GL_VERSION_4_4)
|
||||
glBufferStorage(GL_ARRAY_BUFFER, (GLsizeiptr)size, data,
|
||||
dynamic ? GL_DYNAMIC_STORAGE_BIT | GL_MAP_WRITE_BIT : 0);
|
||||
else
|
||||
glBufferData(GL_ARRAY_BUFFER, (GLsizeiptr)size, data,
|
||||
dynamic ? GL_DYNAMIC_DRAW : GL_STATIC_DRAW);
|
||||
glBindBuffer(GL_ARRAY_BUFFER, 0);
|
||||
gl_state.bind_array_buffer(0);
|
||||
|
||||
if (glGetError()) {
|
||||
glDeleteBuffers(1, &buffer);
|
||||
|
||||
Reference in New Issue
Block a user