Я пытаюсь создать игру в GameMaker 2, в которой объекты становятся прозрачными в зависимости от объекта позади них. В настоящее время у меня это есть, поэтому я просто проверяю каждый шаг (в пределах объекта, чтобы стать прозрачным), находится ли в контакте с фоновым объектом, а затем устанавливаю альфа на 0,5, если истина.
Вот что я имею в виду, объект изменяется с:
Непрозрачный К Полу альфа
Проблема в том, что я хочу, чтобы объект стал прозрачным, а не просто прыгал между двумя указывает, когда он касается края желтой части (например, любая часть шара в желтом прозрачна, а любая часть синего непрозрачна).
Я пытался добиться этого с помощью шейдеров, но не Имея большой опыт работы с ними, я попытался добиться эффекта, создав шейдер, в котором я прошел в центре желтого поля, его ширины и высоты, чтобы проверить, был ли какой-либо пиксель внутри прямоугольника, а затем установить его на прозрачный, но это В методе используется много вложенных операторов if, которые, как я понимаю, являются плохими, и не будут работать, если их больше двух Цветные секции в комнате. Есть ли способ добиться эффекта, которого я хочу (когда только части шара внутри желтой части становятся прозрачными), приходится ли мне с этим справляться, просто перепрыгивая с полностью непрозрачного на полностью прозрачный.