Прямая прокрутка Unity не работает при использовании перевернутой маски

#c# #unity3d #mobile #mask #scrollrect

Вопрос:

Я пытаюсь добиться своего рода эффекта уменьшения масштаба в своем главном меню с помощью этого урока.

Это вызвало довольно много проблем, так как другим компонентам unity, похоже, не нравится это решение. Но большинство проблем могут быть так или иначе устранены, но у меня серьезные проблемы с этой проблемой: я пытаюсь сделать прокрутку прямо за пределами маски (поскольку она перевернута), но поскольку вы не должны иметь возможности перетаскивать элементы за пределы маски, мои элементы не перетаскиваются, когда они видны.

Я пробовал использовать обычные изображения вместо перевернутых изображений, только с удаленной маской, так что не похоже, что какая-либо панель или что-то подобное блокирует трансляцию. Я также попытался удалить маску прокрутки окна просмотра, но по — прежнему ничего…

Иерархия игровых объектов

В моем игровом представлении белые круги-это содержимое прямой прокрутки, а круг отпечатков пальцев-маска главного меню, которая расширяется при нажатии кнопки «Воспроизвести».

Вот код для перевернутого изображения маски:

 using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.UI;

public class CutoutMaskUI : Image
{
    public override Material materialForRendering
    {
        get
        {
            Material material = new Material(base.materialForRendering);
            material.SetInt("_StencilComp", (int)CompareFunction.NotEqual);
            return material;
        }
    }
}
 

(Если я предоставил слишком мало информации, просто скажите мне, и я постараюсь добавить больше)