I have a material that is using tessellation. In the displacement slot I have a function that is sampling multiple points in space and updating displacement based on those points (sorta voronoi adjacent).
This works fairly well but there is a visual artifact whenever the points are updated. Based on its behavior I THINK that it is the shadow cache needing an update but it’s not getting updated unless the area either goes off screen or changes angle in some significant way.
The attached videos show the behavior. One shows a simple sin wave displacing the mesh and the other shows the points method I’m using (points are updated on impact).
Am I right that this is a shadow issue and is there any way of fixing the issue?
Yes, that looks like a shadow cache issue. Static assets don’t normally update their cache, but you can force them to such as with the shadow cache invalidation behavior setting on the asset. This will increase the cost of drawing shadows and should be used prudently. Perhaps you can briefly toggle this setting from “static” to “always” and back again to prevent constant invalidations.
Yeah I tried that but sadly that property is not editable. Well technically it is, I tried setting it via code as it is not settable via blueprint. However the issue is that the property on the component doesn’t matter at runtime as it gets applied to the scene proxy and the ShadowCacheInvalidationBehavior property on the scene proxy is protected 