private void Init() { if (m_Inited) { return; } m_RenderOpaqueForwardPass = new RenderOpaqueForwardPass(); m_DirectionalShadowPass = new DirectionalShadowPass(); m_ScreenSpaceShadowPass = new ScreenSpaceShadowResolvePass(); m_DepthOnlyPass = new DepthOnlyPass(); m_SetupForwardRenderingPass = new SetupForwardRenderingPass(); m_SetupLWDConstants = new SetupLWDConstantsPass(); m_FinalBlitPass = new FinalBlitPass(); m_BlurPass = new BlurPass(); ColorAttachment.Init("_CameraColorTexture"); DepthAttachment.Init("_CameraDepthAttachment"); DepthTexture.Init("_CameraDepthTexture"); OpaqueColor.Init("_CameraOpaqueTexture"); DirectionalShadowmap.Init("_DirectionalShadowmapTexture"); BluredDirectionalShadowmap.Init("_BluredDirectionalShadowmapTexture"); ScreenSpaceShadowmap.Init("_ScreenSpaceShadowmapTexture"); m_Inited = true; }
public override void Create() { _renderTexture.Init(_renderTextureName); _bluredTexture.Init(_bluredTextureName); _renderPass = new MyRenderObjectsPass(_renderTexture, _renderSettings.LayerMask, _renderSettings.OverrideMaterial); _blurPass = new BlurPass(_renderTexture.Identifier(), _bluredTexture, _blurSettings.BlurMaterial, _blurSettings.DownSample, _blurSettings.PassesCount); _outlinePass = new OutlinePass(_outlineMaterial); _renderPass.renderPassEvent = _renderPassEvent; _blurPass.renderPassEvent = _renderPassEvent; _outlinePass.renderPassEvent = _renderPassEvent; }
public HLSLBlur(Device device, BlurPass pass, string effectFilePath) : base(device, effectFilePath, VertexPosition2Texture.VertexDeclaration, null) { //Create Constant Buffers interfaces CBPerDraw = ToDispose(new CBuffer <CBPerDraw_Struct>(device, "PerDraw")); CBuffers.Add(CBPerDraw); //Create the resource interfaces ================================================== SpriteTexture = new ShaderResource("SpriteTexture"); ShaderResources.Add(SpriteTexture); //Create the Sampler interface ================================================== SpriteSampler = new ShaderSampler("SpriteSampler"); ShaderSamplers.Add(SpriteSampler); //Load the shaders switch (pass) { case BlurPass.Horizontal: _shadersEntryPoint = new EntryPoints() { VertexShader_EntryPoint = "VS", PixelShader_EntryPoint = "PS_BlurHorizontal" }; break; case BlurPass.Vertical: _shadersEntryPoint = new EntryPoints() { VertexShader_EntryPoint = "VS", PixelShader_EntryPoint = "PS_BlurVertical" }; break; } base.LoadShaders(_shadersEntryPoint); }
public HLSLBlur(Device device, BlurPass pass) : this(device, pass, @"Effects\Sprites\Blur.hlsl") { }