Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/draw/intern/draw_cache_impl_volume.c')
-rw-r--r--source/blender/draw/intern/draw_cache_impl_volume.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/source/blender/draw/intern/draw_cache_impl_volume.c b/source/blender/draw/intern/draw_cache_impl_volume.c
index 10bacadb199..1a9e40fb03b 100644
--- a/source/blender/draw/intern/draw_cache_impl_volume.c
+++ b/source/blender/draw/intern/draw_cache_impl_volume.c
@@ -262,8 +262,6 @@ static DRWVolumeGrid *volume_grid_cache_get(Volume *volume,
VolumeGrid *grid,
VolumeBatchCache *cache)
{
- const DRWContextState *draw_ctx = DRW_context_state_get();
-
const char *name = BKE_volume_grid_name(grid);
/* Return cached grid. */
@@ -289,22 +287,12 @@ static DRWVolumeGrid *volume_grid_cache_get(Volume *volume,
return cache_grid;
}
- /* Load grid tree into memory, if not loaded already. */
+ /* Remember if grid was loaded. If it was not, we want to unload it after the GPUTexture has been
+ * created. */
const bool was_loaded = BKE_volume_grid_is_loaded(grid);
- BKE_volume_grid_load(volume, grid);
-
- float resolution_factor = 1.0f;
- if (DEG_get_mode(draw_ctx->depsgraph) != DAG_EVAL_RENDER) {
- if (draw_ctx->scene->r.mode & R_SIMPLIFY) {
- resolution_factor = draw_ctx->scene->r.simplify_volumes;
- }
- }
- if (resolution_factor == 0.0f) {
- return cache_grid;
- }
DenseFloatVolumeGrid dense_grid;
- if (BKE_volume_grid_dense_floats(volume, grid, resolution_factor, &dense_grid)) {
+ if (BKE_volume_grid_dense_floats(volume, grid, &dense_grid)) {
copy_m4_m4(cache_grid->texture_to_object, dense_grid.texture_to_object);
invert_m4_m4(cache_grid->object_to_texture, dense_grid.texture_to_object);