Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/engines/workbench/workbench_effect_outline.c
| Show All 40 Lines | if (OBJECT_OUTLINE_ENABLED(wpd)) { | ||||
| int state = DRW_STATE_WRITE_COLOR | DRW_STATE_BLEND_ALPHA_PREMUL; | int state = DRW_STATE_WRITE_COLOR | DRW_STATE_BLEND_ALPHA_PREMUL; | ||||
| DRW_PASS_CREATE(psl->outline_ps, state); | DRW_PASS_CREATE(psl->outline_ps, state); | ||||
| sh = workbench_shader_outline_get(); | sh = workbench_shader_outline_get(); | ||||
| grp = DRW_shgroup_create(sh, psl->outline_ps); | grp = DRW_shgroup_create(sh, psl->outline_ps); | ||||
| DRW_shgroup_uniform_texture(grp, "objectIdBuffer", wpd->object_id_tx); | DRW_shgroup_uniform_texture(grp, "objectIdBuffer", wpd->object_id_tx); | ||||
| DRW_shgroup_uniform_texture(grp, "depthBuffer", dtxl->depth); | DRW_shgroup_uniform_texture(grp, "depthBuffer", dtxl->depth); | ||||
| DRW_shgroup_uniform_block(grp, "world_block", wpd->world_ubo); | DRW_shgroup_uniform_block(grp, "world_data", wpd->world_ubo); | ||||
| DRW_shgroup_call_procedural_triangles(grp, NULL, 1); | DRW_shgroup_call_procedural_triangles(grp, NULL, 1); | ||||
| } | } | ||||
| else { | else { | ||||
| psl->outline_ps = NULL; | psl->outline_ps = NULL; | ||||
| } | } | ||||
| } | } | ||||