Merge branch 'ifromstone-dev/GridJitterFix'
This commit is contained in:
@@ -113,7 +113,8 @@ namespace FlaxEditor.Gizmo
|
||||
if (cb != IntPtr.Zero)
|
||||
{
|
||||
var data = new Data();
|
||||
Matrix.Multiply(ref renderContext.View.View, ref renderContext.View.Projection, out var viewProjection);
|
||||
renderContext.View.GetOverlayProjection(out var projection);
|
||||
Matrix.Multiply(ref renderContext.View.View, ref projection, out var viewProjection);
|
||||
Matrix.Transpose(ref viewProjection, out data.ViewProjectionMatrix);
|
||||
data.ViewPos = renderContext.View.WorldPosition;
|
||||
data.GridColor = options.Viewport.ViewportGridColor;
|
||||
|
||||
@@ -33,6 +33,15 @@ namespace FlaxEngine
|
||||
NonJitteredProjection = Projection;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets projection matrix for overlay geometry rendered after temporal anti-aliasing has been resolved.
|
||||
/// </summary>
|
||||
/// <param name="projection">Projection matrix valid for rendering before or after (matches current TAA jitter stage).</param>
|
||||
public void GetOverlayProjection(out Matrix projection)
|
||||
{
|
||||
projection = IsTaaResolved ? NonJitteredProjection : Projection;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Initializes render view data.
|
||||
/// </summary>
|
||||
|
||||
@@ -90,7 +90,7 @@ namespace FlaxEngine
|
||||
Matrix.Multiply(ref worldMatrix, ref renderContext.View.View, out Matrix viewMatrix);
|
||||
Matrix projectionMatrix = renderContext.View.Projection;
|
||||
if (worldSpace && (Canvas.RenderLocation == PostProcessEffectLocation.Default || Canvas.RenderLocation == PostProcessEffectLocation.AfterAntiAliasingPass))
|
||||
projectionMatrix = renderContext.View.NonJitteredProjection; // Fix TAA jittering when rendering UI in world after TAA resolve
|
||||
renderContext.View.GetOverlayProjection(out projectionMatrix); // Fix TAA jittering when rendering UI in world after TAA resolve
|
||||
Matrix.Multiply(ref viewMatrix, ref projectionMatrix, out Matrix viewProjectionMatrix);
|
||||
|
||||
// Pick a depth buffer
|
||||
|
||||
Reference in New Issue
Block a user