diff --git a/SMCode/SM.Base/PostEffects/BloomEffect.cs b/SMCode/SM.Base/PostEffects/BloomEffect.cs index 7c638e2..1b1aa16 100644 --- a/SMCode/SM.Base/PostEffects/BloomEffect.cs +++ b/SMCode/SM.Base/PostEffects/BloomEffect.cs @@ -78,8 +78,12 @@ namespace SM.Base.PostEffects } } + + protected override void InitProcess() { + _source = Pipeline.MainFramebuffer; + _source.ColorAttachments["color"].PixelInformation = PixelInformation.RGBA_HDR; _bloomBuffer1 = new Framebuffer(Pipeline.ConnectedWindow, _textureScale); diff --git a/SMCode/SM.Base/Window/RenderPipeline.cs b/SMCode/SM.Base/Window/RenderPipeline.cs index 4513cfd..f209cba 100644 --- a/SMCode/SM.Base/Window/RenderPipeline.cs +++ b/SMCode/SM.Base/Window/RenderPipeline.cs @@ -15,7 +15,7 @@ namespace SM.Base.Windows public List Framebuffers { get; } = new List(); - public virtual MaterialShader DefaultShader { get; protected set; } + public virtual MaterialShader DefaultShader { get; protected set; } = SMRenderer.DefaultMaterialShader; public virtual Material DefaultMaterial { get; protected set; } public bool IsInitialized { get; set; } diff --git a/SMCode/SM2D/Shader/ShaderFiles/basic.glsl b/SMCode/SM2D/Shader/ShaderFiles/basic.glsl index fdd77bc..95d50a5 100644 --- a/SMCode/SM2D/Shader/ShaderFiles/basic.glsl +++ b/SMCode/SM2D/Shader/ShaderFiles/basic.glsl @@ -9,8 +9,6 @@ uniform sampler2D Texture; layout(location = 0) out vec4 color; void main() { - color = vec4(v_TexCoords, 0, 1); - return; color = v_Color * Tint; - if (UseTexture) color = texture(Texture, v_TexCoords); + if (UseTexture) color *= texture(Texture, v_TexCoords); } \ No newline at end of file diff --git a/SM_TEST/TestRenderPipeline.cs b/SM_TEST/TestRenderPipeline.cs index 009ea9b..01b96d3 100644 --- a/SM_TEST/TestRenderPipeline.cs +++ b/SM_TEST/TestRenderPipeline.cs @@ -16,7 +16,7 @@ namespace SM_TEST public override void Initialization() { - _bloom = new BloomEffect(1); + _bloom = new BloomEffect(hdr: true); MainFramebuffer = CreateWindowFramebuffer();