Объекты пользовательского интерфейса Canvas отрисовываются в порядке убывания (так что самый нижний объект под холстом в инспекторе рисуется последним и находится перед всем остальным).
Вот так:
- Canvas
- Text1
- Text2 (рисуется после Text1)
- OverlayImage (рисуется после Text1 и Text2, блокирует Raycast)
Если вы добавляете объект пользовательского интерфейса изображения на холст, перетащите его, чтобы он был самым низким объектом под этим холстом в инспекторе, как в примере выше, затем разверните его так, чтобы он занимал весь холст, и установите якоря (которые управляют изменением размера) для расширения в зависимости от ширины и высоты окна, это изображение должно всегда покрывать весь холст. Пока он остается самым низким GameObject в иерархии инспекторов, он должен блокировать события под этим на этом холсте.
Я не уверен, что один холст блокирует события на других холстах сцены, но я бы хотел добавьте OverlayImages на все холсты и проверьте, включены ли OverlayImages на холсте P. в вашем примере.