Fix remaining GL calls/type preventing from building due to recent cleanup
This commit is contained in:
parent
fe5efccd8f
commit
2e4569abbc
|
@ -95,11 +95,11 @@ struct OCIO_GLSLShader {
|
|||
|
||||
struct GPUShader *shader;
|
||||
/** Uniform locations. */
|
||||
GLint dither_loc;
|
||||
GLint overlay_loc;
|
||||
GLint predivide_loc;
|
||||
GLint curve_mapping_loc;
|
||||
GLint ubo_bind;
|
||||
int dither_loc;
|
||||
int overlay_loc;
|
||||
int predivide_loc;
|
||||
int curve_mapping_loc;
|
||||
int ubo_bind;
|
||||
/** Error checking. */
|
||||
bool valid;
|
||||
};
|
||||
|
|
|
@ -346,10 +346,10 @@ void DRW_hair_update(void)
|
|||
GPU_framebuffer_read_color(fb, 0, 0, width, height, 4, 0, GPU_DATA_FLOAT, data);
|
||||
/* Upload back to VBO. */
|
||||
GPU_vertbuf_use(pr_call->vbo);
|
||||
glBufferSubData(GL_ARRAY_BUFFER,
|
||||
sizeof(float[4]) * g_tf_id_offset,
|
||||
sizeof(float[4]) * max_read_px_len,
|
||||
data);
|
||||
GPU_vertbuf_update_sub(pr_call->vbo,
|
||||
sizeof(float[4]) * g_tf_id_offset,
|
||||
sizeof(float[4]) * max_read_px_len,
|
||||
data);
|
||||
|
||||
g_tf_id_offset += max_read_px_len;
|
||||
pr_call->vert_len -= max_read_px_len;
|
||||
|
|
|
@ -44,8 +44,8 @@
|
|||
#define GPU_TIMER_FALLOFF 0.1
|
||||
|
||||
typedef struct DRWTimer {
|
||||
GLuint query[2];
|
||||
GLuint64 time_average;
|
||||
uint32_t query[2];
|
||||
uint64_t time_average;
|
||||
char name[MAX_TIMER_NAME];
|
||||
int lvl; /* Hierarchy level for nested timer. */
|
||||
bool is_query; /* Does this timer actually perform queries or is it just a group. */
|
||||
|
@ -64,10 +64,10 @@ static struct DRWTimerPool {
|
|||
void DRW_stats_free(void)
|
||||
{
|
||||
if (DTP.timers != NULL) {
|
||||
for (int i = 0; i < DTP.timer_count; i++) {
|
||||
DRWTimer *timer = &DTP.timers[i];
|
||||
glDeleteQueries(2, timer->query);
|
||||
}
|
||||
// for (int i = 0; i < DTP.timer_count; i++) {
|
||||
// DRWTimer *timer = &DTP.timers[i];
|
||||
// glDeleteQueries(2, timer->query);
|
||||
// }
|
||||
MEM_freeN(DTP.timers);
|
||||
DTP.timers = NULL;
|
||||
}
|
||||
|
@ -117,12 +117,12 @@ static void drw_stats_timer_start_ex(const char *name, const bool is_query)
|
|||
BLI_assert(!DTP.is_querying);
|
||||
if (timer->is_query) {
|
||||
if (timer->query[0] == 0) {
|
||||
glGenQueries(1, timer->query);
|
||||
// glGenQueries(1, timer->query);
|
||||
}
|
||||
|
||||
glFinish();
|
||||
// glFinish();
|
||||
/* Issue query for the next frame */
|
||||
glBeginQuery(GL_TIME_ELAPSED, timer->query[0]);
|
||||
// glBeginQuery(GL_TIME_ELAPSED, timer->query[0]);
|
||||
DTP.is_querying = true;
|
||||
}
|
||||
}
|
||||
|
@ -154,7 +154,7 @@ void DRW_stats_query_end(void)
|
|||
if (DTP.is_recording) {
|
||||
DTP.end_increment++;
|
||||
BLI_assert(DTP.is_querying);
|
||||
glEndQuery(GL_TIME_ELAPSED);
|
||||
// glEndQuery(GL_TIME_ELAPSED);
|
||||
DTP.is_querying = false;
|
||||
}
|
||||
}
|
||||
|
@ -167,19 +167,19 @@ void DRW_stats_reset(void)
|
|||
"You forgot a DRW_stats_group/query_start somewhere!");
|
||||
|
||||
if (DTP.is_recording) {
|
||||
GLuint64 lvl_time[MAX_NESTED_TIMER] = {0};
|
||||
uint64_t lvl_time[MAX_NESTED_TIMER] = {0};
|
||||
|
||||
/* Swap queries for the next frame and sum up each lvl time. */
|
||||
for (int i = DTP.timer_increment - 1; i >= 0; i--) {
|
||||
DRWTimer *timer = &DTP.timers[i];
|
||||
SWAP(GLuint, timer->query[0], timer->query[1]);
|
||||
SWAP(uint32_t, timer->query[0], timer->query[1]);
|
||||
|
||||
BLI_assert(timer->lvl < MAX_NESTED_TIMER);
|
||||
|
||||
if (timer->is_query) {
|
||||
GLuint64 time;
|
||||
uint64_t time = 0;
|
||||
if (timer->query[0] != 0) {
|
||||
glGetQueryObjectui64v(timer->query[0], GL_QUERY_RESULT, &time);
|
||||
// glGetQueryObjectui64v(timer->query[0], GL_QUERY_RESULT, &time);
|
||||
}
|
||||
else {
|
||||
time = 1000000000; /* 1ms default */
|
||||
|
|
|
@ -256,7 +256,7 @@ static void def_internal_vicon(int icon_id, VectorDrawFunc drawFunc)
|
|||
|
||||
/* Utilities */
|
||||
|
||||
static void viconutil_set_point(GLint pt[2], int x, int y)
|
||||
static void viconutil_set_point(int pt[2], int x, int y)
|
||||
{
|
||||
pt[0] = x;
|
||||
pt[1] = y;
|
||||
|
@ -264,7 +264,7 @@ static void viconutil_set_point(GLint pt[2], int x, int y)
|
|||
|
||||
static void vicon_small_tri_right_draw(int x, int y, int w, int UNUSED(h), float alpha)
|
||||
{
|
||||
GLint pts[3][2];
|
||||
int pts[3][2];
|
||||
const int cx = x + w / 2 - 4;
|
||||
const int cy = y + w / 2;
|
||||
const int d = w / 5, d2 = w / 7;
|
||||
|
|
|
@ -142,7 +142,7 @@ typedef struct LoadTexData {
|
|||
ViewContext *vc;
|
||||
|
||||
MTex *mtex;
|
||||
GLubyte *buffer;
|
||||
uchar *buffer;
|
||||
bool col;
|
||||
|
||||
struct ImagePool *pool;
|
||||
|
@ -160,7 +160,7 @@ static void load_tex_task_cb_ex(void *__restrict userdata,
|
|||
ViewContext *vc = data->vc;
|
||||
|
||||
MTex *mtex = data->mtex;
|
||||
GLubyte *buffer = data->buffer;
|
||||
uchar *buffer = data->buffer;
|
||||
const bool col = data->col;
|
||||
|
||||
struct ImagePool *pool = data->pool;
|
||||
|
@ -230,7 +230,7 @@ static void load_tex_task_cb_ex(void *__restrict userdata,
|
|||
|
||||
/* Clamp to avoid precision overflow. */
|
||||
CLAMP(avg, 0.0f, 1.0f);
|
||||
buffer[index] = 255 - (GLubyte)(255 * avg);
|
||||
buffer[index] = 255 - (uchar)(255 * avg);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
@ -254,7 +254,7 @@ static int load_tex(Brush *br, ViewContext *vc, float zoom, bool col, bool prima
|
|||
|
||||
MTex *mtex = (primary) ? &br->mtex : &br->mask_mtex;
|
||||
ePaintOverlayControlFlags overlay_flags = BKE_paint_get_overlay_flags();
|
||||
GLubyte *buffer = NULL;
|
||||
uchar *buffer = NULL;
|
||||
|
||||
int size;
|
||||
bool refresh;
|
||||
|
@ -309,10 +309,10 @@ static int load_tex(Brush *br, ViewContext *vc, float zoom, bool col, bool prima
|
|||
target->old_col = col;
|
||||
}
|
||||
if (col) {
|
||||
buffer = MEM_mallocN(sizeof(GLubyte) * size * size * 4, "load_tex");
|
||||
buffer = MEM_mallocN(sizeof(uchar) * size * size * 4, "load_tex");
|
||||
}
|
||||
else {
|
||||
buffer = MEM_mallocN(sizeof(GLubyte) * size * size, "load_tex");
|
||||
buffer = MEM_mallocN(sizeof(uchar) * size * size, "load_tex");
|
||||
}
|
||||
|
||||
pool = BKE_image_pool_new();
|
||||
|
@ -381,7 +381,7 @@ static void load_tex_cursor_task_cb(void *__restrict userdata,
|
|||
LoadTexData *data = userdata;
|
||||
Brush *br = data->br;
|
||||
|
||||
GLubyte *buffer = data->buffer;
|
||||
uchar *buffer = data->buffer;
|
||||
|
||||
const int size = data->size;
|
||||
|
||||
|
@ -398,7 +398,7 @@ static void load_tex_cursor_task_cb(void *__restrict userdata,
|
|||
/* Falloff curve. */
|
||||
float avg = BKE_brush_curve_strength_clamped(br, len, 1.0f);
|
||||
|
||||
buffer[index] = (GLubyte)(255 * avg);
|
||||
buffer[index] = (uchar)(255 * avg);
|
||||
}
|
||||
else {
|
||||
buffer[index] = 0;
|
||||
|
@ -411,7 +411,7 @@ static int load_tex_cursor(Brush *br, ViewContext *vc, float zoom)
|
|||
bool init;
|
||||
|
||||
ePaintOverlayControlFlags overlay_flags = BKE_paint_get_overlay_flags();
|
||||
GLubyte *buffer = NULL;
|
||||
uchar *buffer = NULL;
|
||||
|
||||
int size;
|
||||
const bool refresh = !cursor_snap.overlay_texture ||
|
||||
|
@ -452,7 +452,7 @@ static int load_tex_cursor(Brush *br, ViewContext *vc, float zoom)
|
|||
|
||||
cursor_snap.size = size;
|
||||
}
|
||||
buffer = MEM_mallocN(sizeof(GLubyte) * size * size, "load_tex");
|
||||
buffer = MEM_mallocN(sizeof(uchar) * size * size, "load_tex");
|
||||
|
||||
BKE_curvemapping_init(br->curve);
|
||||
|
||||
|
|
|
@ -55,6 +55,7 @@
|
|||
|
||||
#include "BIF_glutil.h"
|
||||
|
||||
#include "GPU_framebuffer.h"
|
||||
#include "GPU_immediate.h"
|
||||
#include "GPU_immediate_util.h"
|
||||
#include "GPU_matrix.h"
|
||||
|
@ -570,7 +571,8 @@ static void draw_image_buffer(const bContext *C,
|
|||
float zoomy)
|
||||
{
|
||||
/* Image are still drawn in display space. */
|
||||
glDisable(GL_FRAMEBUFFER_SRGB);
|
||||
GPUFrameBuffer *fb = GPU_framebuffer_active_get();
|
||||
GPU_framebuffer_bind_no_srgb(fb);
|
||||
|
||||
int x, y;
|
||||
int sima_flag = sima->flag & ED_space_image_get_display_channel_mask(ibuf);
|
||||
|
@ -660,7 +662,7 @@ static void draw_image_buffer(const bContext *C,
|
|||
}
|
||||
}
|
||||
|
||||
glEnable(GL_FRAMEBUFFER_SRGB);
|
||||
GPU_framebuffer_bind(fb);
|
||||
}
|
||||
|
||||
static void draw_image_buffer_repeated(const bContext *C,
|
||||
|
|
|
@ -1065,7 +1065,7 @@ static void draw_rotation_guide(const RegionView3D *rv3d)
|
|||
float o[3]; /* center of rotation */
|
||||
float end[3]; /* endpoints for drawing */
|
||||
|
||||
GLubyte color[4] = {0, 108, 255, 255}; /* bright blue so it matches device LEDs */
|
||||
uchar color[4] = {0, 108, 255, 255}; /* bright blue so it matches device LEDs */
|
||||
|
||||
negate_v3_v3(o, rv3d->ofs);
|
||||
|
||||
|
|
|
@ -32,10 +32,6 @@
|
|||
# define TRUST_NO_ONE 1
|
||||
#endif
|
||||
|
||||
#if defined(WITH_OPENGL)
|
||||
# include <GL/glew.h>
|
||||
#endif
|
||||
|
||||
#include "BLI_sys_types.h"
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
|
|
|
@ -257,7 +257,6 @@ void GPU_texture_mipmap_mode(GPUTexture *tex, bool use_mipmap, bool use_filter);
|
|||
void GPU_texture_wrap_mode(GPUTexture *tex, bool use_repeat, bool use_clamp);
|
||||
void GPU_texture_swizzle_set(GPUTexture *tex, const char swizzle[4]);
|
||||
|
||||
int GPU_texture_target(const GPUTexture *tex);
|
||||
int GPU_texture_width(const GPUTexture *tex);
|
||||
int GPU_texture_height(const GPUTexture *tex);
|
||||
int GPU_texture_orig_width(const GPUTexture *tex);
|
||||
|
|
|
@ -139,6 +139,9 @@ GPUVertBufStatus GPU_vertbuf_get_status(const GPUVertBuf *verts);
|
|||
|
||||
void GPU_vertbuf_use(GPUVertBuf *);
|
||||
|
||||
/* XXX do not use. */
|
||||
void GPU_vertbuf_update_sub(GPUVertBuf *verts, uint start, uint len, void *data);
|
||||
|
||||
/* Metrics */
|
||||
uint GPU_vertbuf_get_memory_usage(void);
|
||||
|
||||
|
|
|
@ -416,7 +416,7 @@ static void immEndVertex(void) /* and move on to the next vertex */
|
|||
printf("copying %s from vertex %u to %u\n", a->name, imm->vertex_idx - 1, imm->vertex_idx);
|
||||
#endif
|
||||
|
||||
GLubyte *data = imm->vertex_data + a->offset;
|
||||
uchar *data = imm->vertex_data + a->offset;
|
||||
memcpy(data, data - imm->vertex_format.stride, a->sz);
|
||||
/* TODO: consolidate copy of adjacent attributes */
|
||||
}
|
||||
|
|
|
@ -513,12 +513,6 @@ void GPU_texture_ref(GPUTexture *tex)
|
|||
reinterpret_cast<Texture *>(tex)->refcount++;
|
||||
}
|
||||
|
||||
/* TODO(fclem) Remove! This is broken as it is! */
|
||||
int GPU_texture_target(const GPUTexture *UNUSED(tex))
|
||||
{
|
||||
return GL_TEXTURE_2D;
|
||||
}
|
||||
|
||||
int GPU_texture_width(const GPUTexture *tex)
|
||||
{
|
||||
return reinterpret_cast<const Texture *>(tex)->width_get();
|
||||
|
|
|
@ -324,4 +324,11 @@ void GPU_vertbuf_use(GPUVertBuf *verts)
|
|||
unwrap(verts)->upload();
|
||||
}
|
||||
|
||||
/* XXX this is just a wrapper for the use of the Hair refine workaround.
|
||||
* To be used with GPU_vertbuf_use(). */
|
||||
void GPU_vertbuf_update_sub(GPUVertBuf *verts, uint start, uint len, void *data)
|
||||
{
|
||||
unwrap(verts)->update_sub(start, len, data);
|
||||
}
|
||||
|
||||
/** \} */
|
|
@ -95,6 +95,8 @@ class VertBuf {
|
|||
}
|
||||
}
|
||||
|
||||
virtual void update_sub(uint start, uint len, void *data) = 0;
|
||||
|
||||
protected:
|
||||
virtual void acquire_data(void) = 0;
|
||||
virtual void resize_data(void) = 0;
|
||||
|
|
|
@ -70,7 +70,7 @@ static uint comp_sz(GPUVertCompType type)
|
|||
#if TRUST_NO_ONE
|
||||
assert(type <= GPU_COMP_F32); /* other types have irregular sizes (not bytes) */
|
||||
#endif
|
||||
const GLubyte sizes[] = {1, 1, 2, 2, 4, 4, 4};
|
||||
const uint sizes[] = {1, 1, 2, 2, 4, 4, 4};
|
||||
return sizes[type];
|
||||
}
|
||||
|
||||
|
|
|
@ -106,4 +106,9 @@ void GLVertBuf::bind(void)
|
|||
}
|
||||
}
|
||||
|
||||
void GLVertBuf::update_sub(uint start, uint len, void *data)
|
||||
{
|
||||
glBufferSubData(GL_ARRAY_BUFFER, start, len, data);
|
||||
}
|
||||
|
||||
} // namespace blender::gpu
|
|
@ -45,6 +45,8 @@ class GLVertBuf : public VertBuf {
|
|||
public:
|
||||
void bind(void);
|
||||
|
||||
void update_sub(uint start, uint len, void *data) override;
|
||||
|
||||
protected:
|
||||
void acquire_data(void) override;
|
||||
void resize_data(void) override;
|
||||
|
|
|
@ -396,9 +396,6 @@ static void wm_draw_offscreen_texture_parameters(GPUOffScreen *offscreen)
|
|||
/* Setup offscreen color texture for drawing. */
|
||||
GPUTexture *texture = GPU_offscreen_color_texture(offscreen);
|
||||
|
||||
/* We don't support multisample textures here. */
|
||||
BLI_assert(GPU_texture_target(texture) == GL_TEXTURE_2D);
|
||||
|
||||
/* No mipmaps or filtering. */
|
||||
GPU_texture_mipmap_mode(texture, false, false);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue