고품질의 빠른 포털 효과를 만드는 방법은 무엇입니까?


9

편집 : 그래서 성능 저하없이 작동하는 포털 시각 효과를 얻었으며 포털을 통해 원활하게 움직이는 강체가있는 객체와 캐릭터 컨트롤러가 원활하게 움직이는 객체로 물리를 설정했습니다. 내가 지금 알아 내려고하는 유일한 것은 적절한 1 인칭 전환 효과를 얻기 위해 두 개의 카메라 뷰를 혼합하는 것입니다. 이 두 가지를 어떻게 혼합 할 것인가에 대한 아이디어가 있습니까? 깊이 전용 셰이더 또는 표준화 된 뷰포트 rect를 사용하는 것을 생각하고 있습니다. 내 주요 문제는 실시간으로 각도로 계산하는 것입니다.

그래서 Unity3D에서 포털 효과를 만드는 작업을 해왔습니다. 분명히 Valve의 Portal을 프로그래밍에 큰 영향을 미쳤습니다. 현재는 단순히 카메라의 렌더 텍스처를 사용하여 그래픽 효과를 얻은 다음 나머지 코드를 작성합니다. 문제는 2048x2048에서 Portal만큼 높은 품질로 보이지만 FPS 손실이 심합니다. 이 문제를 해결하려면 텍스처 품질을 낮추거나 텍스처를 업데이트하는 횟수를 줄여야합니다.

Valve는 높은 프레임 속도 손실을 유발하지 않으면 서 고품질 포털 효과를 달성했습니다. 어떻게하면됩니까? 프레임 손실을 일으키지 않고 고해상도 텍스처로 렌더링하는 데 좋은 아이디어가 있습니까?

Unity의 내장 시스템을 사용하는 대신 텍스처로 렌더링하기 위해 자체 코드를 만드는 것을 고려하고 있지만 가능하지만 번거로울 것입니다. 따라서 모든 생각, 아이디어 또는 제안은 높이 평가됩니다.


3
참조를 찾을 수 없지만 Portal이 렌더를 사용하여 텍스처를 사용하지 않았다는 것을 기억합니다.
msell

1
Portal-esque 게임 인 Pseudo Form을 확인하십시오 (소스는 기본 다운로드에 있음). 웹에는 다른 "포털 구현"도 있지만 이것이 가장 알려져 있다고 생각합니다. 또한 개발자 의견이있는 Portal을 재생하십시오. 그들 중 일부에서는 포털 구현의 문제점에 대해 이야기합니다.
Vasco Correia

7
1080p 미만으로 렌더링 된 포털을 선명하게 보이게하려면 2028x2048 텍스처가 필요한 이유를 알 수 없습니다. 게임에 일반적으로 사용하는 디스플레이 해상도보다 높을 필요는 없습니다. 포털의 화면 크기를 파악하고이를 사용하여 적절한 크기의 렌더 텍스처를 선택해야한다고 말씀 드리고자합니다.
-space

1
시각 효과를 위해 어떤 접근 방식을 취했습니까? 포털을 통해 보이는 것만 렌더링하는 방법을 알아 냈습니까?
jhocking

1
원래 질문은 그대로 유지하고 새로운 문제에 대해 새로운 질문을해야합니다.
msell

답변:


5

몇 시간의 연구와 프로그래밍을 통해 시각적 효과를 올바르게 얻는 방법을 알아 냈습니다. 비주얼 및 기타 필요한 모든 것에 적합한 포털 시스템을 구매하려면 Portalizer Unity 패키지를 확인하십시오 .

나는 C #으로 프로그램하고 그 패키지는 JS에 있지만 그 뒤에있는 논리는 매우 유용하고 잘 생각됩니다. 일반적으로 나는 그의 논리적 사고를 따랐으며, 내 게임과 1 인칭 컨트롤러를 약간 조정했습니다.

기본적으로 당신이하는 일은의 수정 된 버전 사용하다 물 쉐이더 / 스크립트를. 장면에 두 개의 거울이 있고 카메라가 다른 거울에 대한 각 반사에서 보는 것을 렌더링하도록합니다. 두 포털 간의 관계를 설명하기 위해 수정 된 변환 매트릭스를 작성해야합니다. 성능 저하를 줄이려 면 니어 플레인 클리핑에 대한 문서를 읽으십시오 . 이는 포털을 통해 볼 수있는 것만 렌더링하는 데 도움이됩니다.

FPS 텔레포트에 카메라를 올바로 블렌딩하는 방법을 알아 낸 후에는 사진과 소스로보다 자세한 자습서를 만들 수 있습니다. 지금은 전체 자습서를 작성하기에는 너무 지쳐서 바쁘고 필요한 코드 대부분을 제공하기 때문에 충분합니다.


리포지토리에 링크를 게시 할 수 있습니까?
로마 Fedor
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.