Прежде чем перейти к моему вопросу, я знаю, что наиболее очевидным решением было бы использовать прямоугольник нормализованного вида, однако мне нужны более сложные фигуры, чем прямоугольник, и я обратился к использованию прямоугольника порта просмотра, и, похоже, нет быть моим решением.
РЕДАКТИРОВАТЬ: Некоторые люди были смущены моим вопросом, позвольте мне перейти к более подробной информации. Происходит следующее: когда игрок переходит на один портал, я создаю клон FPS-контроллера и перемещаю его из другого. Это дает мне две камеры, и вид, который вы видите справа выше. Он просто показывает одну камеру и просматривает портал. Что я хочу, это что-то похожее на этогде камеры смешиваются, чтобы создать иллюзию плавного перехода. То, что я хочу сделать, это удалить все с зеленого изображения проверки слева на изображении ниже, и заменить это другой камерой. Таким образом, вы получаете ту часть изображения камеры А, которая выходит из портала, смешанную с той частью изображения камеры В, которая выходит из другого портала, чтобы получить одно полное изображение. И когда вы перемещаетесь по порталу, срез меняется соответствующим образом.
Я проектировал систему порталов, у меня все есть, включая то, что игрок должен плавно перемещаться по порталу. Моя главная проблема сейчас заключается в том, чтобы получить эффект наложения камеры, который делает Valve. Мне нужно, чтобы две камеры плавно сливались друг с другом, как будто ты высовывал голову через портал. И это не может быть просто прямоугольник, он должен совпадать, однако игрок просматривает портал.
Мой лучший вывод на данный момент - возможно, спроецировать шейдер маски глубины за каждым порталом, а затем сделать камеру из портала, который вы путешествуете, только для глубины. Затем как-то смешайте две камеры. Моя главная проблема - выяснить, как именно я это сделаю, как заставить вторую камеру отображать только то, что находится за пределами портала, а по умолчанию для остальных - камера 1, чтобы получить одну полноэкранную проекцию.
Если бы вы могли дать мне идеи или объяснить, как я могу сделать это с шейдером маски глубины, это было бы огромной помощью. Я буду продолжать работать над этим и обновлять по мере того, как делаю прорывы.