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:
authorJeroen Bakker <jeroen@blender.org>2020-09-07 09:19:09 +0300
committerJeroen Bakker <jeroen@blender.org>2020-09-07 09:21:41 +0300
commit7170f7a0414ecded72fba3ef69e28be2be148291 (patch)
treed98075a0c6695f8ddb9f85fc5f728a5e837c2d1c /source/blender/draw/engines/eevee/eevee_mist.c
parent267b8e1a5c322c87d9684638cc29c984c6d33e58 (diff)
EEVEE: Shaders tests
This will add the remaining static shaders to the eevee shader test suite. - Downsampling - GGX LUT generation - Mist - Motion Blur - Ambient Occlusion - Render Passes - Screen Raytracing - Shadows - Subsurface - Volumes Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D8779
Diffstat (limited to 'source/blender/draw/engines/eevee/eevee_mist.c')
-rw-r--r--source/blender/draw/engines/eevee/eevee_mist.c25
1 files changed, 2 insertions, 23 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_mist.c b/source/blender/draw/engines/eevee/eevee_mist.c
index cfac6cc4d62..2b448695528 100644
--- a/source/blender/draw/engines/eevee/eevee_mist.c
+++ b/source/blender/draw/engines/eevee/eevee_mist.c
@@ -32,15 +32,6 @@
#include "eevee_private.h"
-extern char datatoc_common_view_lib_glsl[];
-extern char datatoc_common_uniforms_lib_glsl[];
-extern char datatoc_bsdf_common_lib_glsl[];
-extern char datatoc_effect_mist_frag_glsl[];
-
-static struct {
- struct GPUShader *mist_sh;
-} e_data = {NULL}; /* Engine data */
-
void EEVEE_mist_output_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata)
{
const DRWContextState *draw_ctx = DRW_context_state_get();
@@ -55,15 +46,7 @@ void EEVEE_mist_output_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata)
const float clear[4] = {0.0f, 0.0f, 0.0f, 0.0f};
- if (e_data.mist_sh == NULL) {
- DRWShaderLibrary *lib = EEVEE_shader_lib_get();
-
- e_data.mist_sh = DRW_shader_create_fullscreen_with_shaderlib(
- datatoc_effect_mist_frag_glsl, lib, "#define FIRST_PASS\n");
- }
-
/* Create FrameBuffer. */
-
/* Should be enough precision for many samples. */
DRW_texture_ensure_fullscreen_2d(&txl->mist_accum, GPU_R32F, 0);
@@ -107,7 +90,8 @@ void EEVEE_mist_output_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata)
/* Create Pass and shgroup. */
DRW_PASS_CREATE(psl->mist_accum_ps, DRW_STATE_WRITE_COLOR | DRW_STATE_BLEND_ADD);
- DRWShadingGroup *grp = DRW_shgroup_create(e_data.mist_sh, psl->mist_accum_ps);
+ DRWShadingGroup *grp = DRW_shgroup_create(EEVEE_shaders_effect_mist_sh_get(),
+ psl->mist_accum_ps);
DRW_shgroup_uniform_texture_ref(grp, "depthBuffer", &dtxl->depth);
DRW_shgroup_uniform_block(grp, "common_block", sldata->common_ubo);
DRW_shgroup_uniform_block(grp, "renderpass_block", sldata->renderpass_ubo.combined);
@@ -128,8 +112,3 @@ void EEVEE_mist_output_accumulate(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Dat
GPU_framebuffer_bind(fbl->main_fb);
}
}
-
-void EEVEE_mist_free(void)
-{
- DRW_SHADER_FREE_SAFE(e_data.mist_sh);
-}