diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2019-01-29 05:06:59 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2019-01-29 17:07:53 +0300 |
commit | bc99f4903c5f55d35b5fec32d6e18400f25089fb (patch) | |
tree | 2fc65d8a39a7529d0cc885b26805ebc5c6e54f1e /source/blender/draw/engines/workbench/workbench_data.c | |
parent | d88492d4ad432a66d72269fe5fa514b18d0407ff (diff) |
Workbench: Add transparency support for materials
This adds the posibility of having certain materials transparent in solid
mode. The option is (for now) per material only and thus only shows in
material color mode.
This uses the same rendering technique as Xray mode.
Note that objects are not considered transparent for selection with this.
Diffstat (limited to 'source/blender/draw/engines/workbench/workbench_data.c')
-rw-r--r-- | source/blender/draw/engines/workbench/workbench_data.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/draw/engines/workbench/workbench_data.c b/source/blender/draw/engines/workbench/workbench_data.c index 22a8f51c23c..b009a8acb08 100644 --- a/source/blender/draw/engines/workbench/workbench_data.c +++ b/source/blender/draw/engines/workbench/workbench_data.c @@ -42,6 +42,7 @@ void workbench_private_data_init(WORKBENCH_PrivateData *wpd) const DRWContextState *draw_ctx = DRW_context_state_get(); const Scene *scene = draw_ctx->scene; wpd->material_hash = BLI_ghash_ptr_new(__func__); + wpd->material_transp_hash = BLI_ghash_ptr_new(__func__); wpd->preferences = &U; View3D *v3d = draw_ctx->v3d; @@ -216,6 +217,7 @@ void workbench_private_data_get_light_direction(WORKBENCH_PrivateData *wpd, floa void workbench_private_data_free(WORKBENCH_PrivateData *wpd) { BLI_ghash_free(wpd->material_hash, NULL, MEM_freeN); + BLI_ghash_free(wpd->material_transp_hash, NULL, MEM_freeN); DRW_UBO_FREE_SAFE(wpd->world_ubo); DRW_UBO_FREE_SAFE(wpd->dof_ubo); GPU_BATCH_DISCARD_SAFE(wpd->world_clip_planes_batch); |