mirror of
https://github.com/ppy/osu.git
synced 2024-11-11 10:33:30 +08:00
Merge pull request #27224 from peppy/fix-logo-tracking-single-thread
Fix logo tracking container being behind by one frame
This commit is contained in:
commit
bdf91209b6
@ -282,7 +282,7 @@ namespace osu.Game.Tests.Visual.UserInterface
|
||||
/// <summary>
|
||||
/// Check that the logo is tracking the position of the facade, with an acceptable precision lenience.
|
||||
/// </summary>
|
||||
public bool IsLogoTracking => Precision.AlmostEquals(Logo.Position, ComputeLogoTrackingPosition());
|
||||
public bool IsLogoTracking => Precision.AlmostEquals(Logo!.Position, ComputeLogoTrackingPosition());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,8 +1,6 @@
|
||||
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
|
||||
// See the LICENCE file in the repository root for full licence text.
|
||||
|
||||
#nullable disable
|
||||
|
||||
using System;
|
||||
using osu.Framework.Graphics;
|
||||
using osu.Framework.Graphics.Containers;
|
||||
@ -19,7 +17,7 @@ namespace osu.Game.Graphics.Containers
|
||||
{
|
||||
public Facade LogoFacade => facade;
|
||||
|
||||
protected OsuLogo Logo { get; private set; }
|
||||
protected OsuLogo? Logo { get; private set; }
|
||||
|
||||
private readonly InternalFacade facade = new InternalFacade();
|
||||
|
||||
@ -76,15 +74,15 @@ namespace osu.Game.Graphics.Containers
|
||||
/// <remarks>Will only be correct if the logo's <see cref="Drawable.RelativePositionAxes"/> are set to Axes.Both</remarks>
|
||||
protected Vector2 ComputeLogoTrackingPosition()
|
||||
{
|
||||
var absolutePos = Logo.Parent!.ToLocalSpace(LogoFacade.ScreenSpaceDrawQuad.Centre);
|
||||
var absolutePos = Logo!.Parent!.ToLocalSpace(LogoFacade.ScreenSpaceDrawQuad.Centre);
|
||||
|
||||
return new Vector2(absolutePos.X / Logo.Parent!.RelativeToAbsoluteFactor.X,
|
||||
absolutePos.Y / Logo.Parent!.RelativeToAbsoluteFactor.Y);
|
||||
}
|
||||
|
||||
protected override void Update()
|
||||
protected override void UpdateAfterChildren()
|
||||
{
|
||||
base.Update();
|
||||
base.UpdateAfterChildren();
|
||||
|
||||
if (Logo == null)
|
||||
return;
|
||||
|
Loading…
Reference in New Issue
Block a user