2017-04-25 11 views
0

2 개의 카메라와 1 개의 캔버스가 있고 버튼을 누르면 두 번째 카메라로 장면의 표시를 변경하고 싶습니다. 같은 시간에 Canvas의 대상 디스플레이를 두 번째 카메라로 변경하고 C#을 사용하고 있습니다.유니티, 캔버스에서 장면 및 대상 디스플레이의 디스플레이 카메라 변경 C#

나는 GetComponent<Camera>GetComponent<Canvas>을 사용해야하지만이 두 가지 인덱스를 설정하는 방법을 모르겠다.

도움을 주시면 감사하겠습니다.

+0

이 보인다 : //gamedev.stackexchange .com/help/on-topic) StackExchange 사이트. – GoBusto

+0

@GoBusto, 고마워, 나는 그것에 대해 조사 할 것이다. 나는 누군가가 그걸 도울 수 있으면 여기에서 기다릴 것이고, 그렇지 않다면 나는 거기에서 시험 할 것이다. –

+0

여기와 GameDev에서 [tag : unity3d] 태그를 봅니다. GameDev는 여전히 프로그래밍 질문에 대한 그려지는 위치를 파악하고 있지만, 1 년 전 (비록이 것을 포함하여) SO로 리다이렉트 될 것이지만, 현재 게임 개발과 관련이 있다면 괜찮습니다. 내가 처음에 그것을 보았던 곳 (물론 내가 할 수있는 가정)에 따라 어느 곳이든 대답 할 것이다. – Draco18s

답변

1

색인을 변경하는 대신 한 카메라를 비활성화하고 다른 카메라를 사용하도록 설정하십시오. 볼 수없는 것을 렌더링하는 GPU주기를 낭비 할 필요가 없습니다 (두 번째 활성 카메라가 수행하는 것입니다).

변경 캔버스의 worldCamera 특성, 예를 들면 : 캔버스 대상을 변경으로

그것이 [GameDev] (HTTPS에 더 적합 할 수처럼

canvasGO.GetComponent<Canvas>().worldCamera = cam2.GetComponent<Camera>(); 
+0

카메라 사용 및 사용 중지와 관련된 좋은 점은 이전에 본 적이 있지만 그 점에 대해서는 감사하지 않았습니다. –

+1

게임 개체뿐만 아니라 구성 요소 자체를 활성화/비활성화 할 수 있습니다. 어떤 경우에는 이것이 바람직 할 수 있습니다. 캔버스에 대해서는 캔버스 구성 요소를 사용하지 않도록 설정하는 것이 빠릅니다. 주제에 대한 [Unity guy들] (https://youtu.be/n-oZa4Fb12U)와의 훌륭한 대화. – Draco18s