diff options
author | Mike Erwin <significant.bit@gmail.com> | 2017-02-11 08:24:59 +0300 |
---|---|---|
committer | Mike Erwin <significant.bit@gmail.com> | 2017-02-11 08:24:59 +0300 |
commit | bbc31e89292d918f5d1a69ad6b43a68adb8a509d (patch) | |
tree | 2b159d966f1ff52eb5ffcc5f1cdf62e2c2c1fd43 /source/blender/editors/include/ED_keyframes_draw.h | |
parent | a161d45cfb6de45c5227f4bfc5161f5567c25e6c (diff) |
OpenGL: draw keyframe markers as point sprites
Also some conversion to new imm mode (T49043).
Multiple editors affected.
We could push this even further & draw all keyframes in an editor with a single draw call.
Something is strange with keyframe markers in blender2.8 -- they're not showing up before or after this commit. They do appear in master. This commit probably needs some follow-up work after keyframes are showing again. Better to share this code now instead of sitting on it.
Diffstat (limited to 'source/blender/editors/include/ED_keyframes_draw.h')
-rw-r--r-- | source/blender/editors/include/ED_keyframes_draw.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/editors/include/ED_keyframes_draw.h b/source/blender/editors/include/ED_keyframes_draw.h index c478a8b17e5..8eef016a846 100644 --- a/source/blender/editors/include/ED_keyframes_draw.h +++ b/source/blender/editors/include/ED_keyframes_draw.h @@ -108,8 +108,10 @@ typedef enum eKeyframeShapeDrawOpts { KEYFRAME_SHAPE_BOTH } eKeyframeShapeDrawOpts; -/* draw simple diamond-shape keyframe (with OpenGL) */ -void draw_keyframe_shape(float x, float y, float xscale, float hsize, short sel, short key_type, short mode, float alpha); +/* draw simple diamond-shape keyframe */ +/* caller should set up vertex format, bind GPU_SHADER_KEYFRAME_DIAMOND, immBegin(PRIM_POINTS, n), then call this n times */ +void draw_keyframe_shape(float x, float y, float size, bool sel, short key_type, short mode, float alpha, + unsigned int pos_id, unsigned int size_id, unsigned int color_id, unsigned int outline_color_id); /* ******************************* Methods ****************************** */ |