Optimize material shaders binding by caching time param once per draw pass

This commit is contained in:
Wojtek Figat
2021-03-08 12:47:14 +01:00
parent c1b9dc4b2e
commit aa28f9ef52
11 changed files with 41 additions and 42 deletions

View File

@@ -3,7 +3,6 @@
#include "VolumeParticleMaterialShader.h"
#include "MaterialShaderFeatures.h"
#include "MaterialParams.h"
#include "Engine/Engine/Time.h"
#include "Engine/Renderer/DrawCall.h"
#include "Engine/Renderer/VolumetricFogPass.h"
#include "Engine/Renderer/RenderList.h"
@@ -90,7 +89,7 @@ void VolumeParticleMaterialShader::Bind(BindParameters& params)
materialData->ViewPos = view.Position;
materialData->ViewFar = view.Far;
materialData->ViewDir = view.Direction;
materialData->TimeParam = Time::Draw.UnscaledTime.GetTotalSeconds();
materialData->TimeParam = params.TimeParam;
materialData->ViewInfo = view.ViewInfo;
materialData->ScreenSize = view.ScreenSize;
materialData->GridSize = customData->GridSize;