Don't generate click maps for some textures. (#12874)
This commit is contained in:
committed by
GitHub
parent
90cc6e391b
commit
dcffadb526
@@ -1,12 +1,7 @@
|
|||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using Robust.Client.Graphics;
|
using Robust.Client.Graphics;
|
||||||
using Robust.Client.ResourceManagement;
|
using Robust.Client.ResourceManagement;
|
||||||
using Robust.Client.Utility;
|
using Robust.Client.Utility;
|
||||||
using Robust.Shared.IoC;
|
|
||||||
using Robust.Shared.Maths;
|
|
||||||
using Robust.Shared.ViewVariables;
|
|
||||||
using SixLabors.ImageSharp;
|
using SixLabors.ImageSharp;
|
||||||
using SixLabors.ImageSharp.PixelFormats;
|
using SixLabors.ImageSharp.PixelFormats;
|
||||||
|
|
||||||
@@ -14,6 +9,15 @@ namespace Content.Client.Clickable
|
|||||||
{
|
{
|
||||||
internal sealed class ClickMapManager : IClickMapManager, IPostInjectInit
|
internal sealed class ClickMapManager : IClickMapManager, IPostInjectInit
|
||||||
{
|
{
|
||||||
|
private static readonly string[] IgnoreTexturePaths =
|
||||||
|
{
|
||||||
|
// These will probably never need click maps so skip em.
|
||||||
|
"/Textures/Interface",
|
||||||
|
"/Textures/LobbyScreens",
|
||||||
|
"/Textures/Parallaxes",
|
||||||
|
"/Textures/Logo",
|
||||||
|
};
|
||||||
|
|
||||||
private const float Threshold = 0.25f;
|
private const float Threshold = 0.25f;
|
||||||
private const int ClickRadius = 2;
|
private const int ClickRadius = 2;
|
||||||
|
|
||||||
@@ -46,6 +50,13 @@ namespace Content.Client.Clickable
|
|||||||
{
|
{
|
||||||
if (obj.Image is Image<Rgba32> rgba)
|
if (obj.Image is Image<Rgba32> rgba)
|
||||||
{
|
{
|
||||||
|
var pathStr = obj.Path.ToString();
|
||||||
|
foreach (var path in IgnoreTexturePaths)
|
||||||
|
{
|
||||||
|
if (pathStr.StartsWith(path))
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
_textureMaps[obj.Resource] = ClickMap.FromImage(rgba, Threshold);
|
_textureMaps[obj.Resource] = ClickMap.FromImage(rgba, Threshold);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user