diff options
author | Ivan Perevala <ivpe> | 2020-11-13 10:24:52 +0300 |
---|---|---|
committer | Jeroen Bakker <jeroen@blender.org> | 2020-11-13 10:26:27 +0300 |
commit | 4efd87d56b65e4fb5c10de399ab15ef59a9c305f (patch) | |
tree | 7c75d20c4a88502484e7b1322495e617864a1700 /source/blender/draw/intern/draw_cache.h | |
parent | b35b8c884909307bff2f71ce766621144fbc85a1 (diff) |
UI: Adaptive HDRI preview resolution
HDRI preview should have resolution dependent on dpi, viewport scale and HDRI gizmo size.
This patch uses a LOD to render a more round sphere.
Reviewed By: Jeroen Bakker
Differential Revision: https://developer.blender.org/D9382
Diffstat (limited to 'source/blender/draw/intern/draw_cache.h')
-rw-r--r-- | source/blender/draw/intern/draw_cache.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/source/blender/draw/intern/draw_cache.h b/source/blender/draw/intern/draw_cache.h index 5da9f4b7964..afbf9903dbc 100644 --- a/source/blender/draw/intern/draw_cache.h +++ b/source/blender/draw/intern/draw_cache.h @@ -32,6 +32,15 @@ struct Volume; struct VolumeGrid; struct bGPDstroke; +/* Shape resolution level of detail */ +typedef enum eDRWLevelOfDetail { + DRW_LOD_LOW = 0, + DRW_LOD_MEDIUM = 1, + DRW_LOD_HIGH = 2, + + DRW_LOD_MAX, /* Max number of level of detail */ +} eDRWLevelOfDetail; + void DRW_shape_cache_free(void); /* 3D cursor */ @@ -44,9 +53,10 @@ struct GPUBatch *DRW_cache_fullscreen_quad_get(void); struct GPUBatch *DRW_cache_quad_get(void); struct GPUBatch *DRW_cache_quad_wires_get(void); struct GPUBatch *DRW_cache_cube_get(void); -struct GPUBatch *DRW_cache_sphere_get(void); struct GPUBatch *DRW_cache_normal_arrow_get(void); +struct GPUBatch *DRW_cache_sphere_get(const eDRWLevelOfDetail level_of_detail); + /* Dummy VBOs */ struct GPUBatch *DRW_gpencil_dummy_buffer_get(void); |