diff options
author | Julian Eisel <eiseljulian@gmail.com> | 2019-08-14 16:27:10 +0300 |
---|---|---|
committer | Julian Eisel <eiseljulian@gmail.com> | 2019-08-14 16:27:10 +0300 |
commit | e6425aa2bf3e6a9bba2f10066dc3f09cea11086f (patch) | |
tree | 5ac0e9c9dd5503e06e4a08f8f5dedb43b2a2eb59 /source/blender/gpu/intern/gpu_context_private.h | |
parent | 4074ab361e13444ae9a5d6b8bdf973fce2302021 (diff) |
Manage GPU_matrix stacks per GPUContext
Previously, we had one global `GPU_matrix` stack, so the API was not
thread safe. This patch makes the stack be per `GPUContext`, effectively
making it local per thread (`GPUContext` is located in thread local
storage).
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D5405
Diffstat (limited to 'source/blender/gpu/intern/gpu_context_private.h')
-rw-r--r-- | source/blender/gpu/intern/gpu_context_private.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/gpu/intern/gpu_context_private.h b/source/blender/gpu/intern/gpu_context_private.h index 6825b67d2c8..c9379e5433f 100644 --- a/source/blender/gpu/intern/gpu_context_private.h +++ b/source/blender/gpu/intern/gpu_context_private.h @@ -59,6 +59,8 @@ void gpu_context_remove_framebuffer(GPUContext *ctx, struct GPUFrameBuffer *fb); void gpu_context_active_framebuffer_set(GPUContext *ctx, struct GPUFrameBuffer *fb); struct GPUFrameBuffer *gpu_context_active_framebuffer_get(GPUContext *ctx); +struct GPUMatrixState *gpu_context_active_matrix_state_get(void); + #ifdef __cplusplus } #endif |