프로그래밍

형들 유니티 일시중지메뉴 만드는데 도와줘..

12.png

(왼쪽이 내 화면이고 오른쪽이 강의화면임)

게임중에 일시정지 되면서 메인메뉴 뜨는걸 만들려고 하는데

강의보고 하려니까 강의처럼 안되더라

강의에선 왼쪽에 화면에 빨간 줄 쳐진곳처럼 설정하라고 했는데 따라해보니

오른쪽 강의 화면처럼 인게임 화면이 뒤로가고 검은화면이 앞으로 와서 덮어져야되는데

내 화면을 보면 인게임이 앞으로 고정되있음..ㄷㄷ

그래서 찾아보니 빨간줄 처진곳이 Screen Space - Camera를 Screen Space - Overlay로 바꾸니까

화면이 덮어지긴 하는데 버튼이 안보임 ㄷㄷ;;

뭘 건들여야 하는지 모르겠아..

1개의 댓글

Screen Space - Camera를 하면 카메라를 기준으로 위치를 잡고

Screen Space - Overlay를 하면 카메라 상관없이 Display 기준으로 위치를 잡음

 

문제는 이 설정을 왔다리 갔다리 하면 처음에 생성된 위치로 돌아가는게 아니라 일부 위치는 유지가 되는데 몇몇 위치 옵션은 기본설정으로 가버려서 잘못하면 위치 정렬이 꼬임 예를 들면 Camera->Overlay->Camera로 하는 경우 Overlay로 바꿨을 때 Scene창에서 캔버스 Rect가 카메라랑 전혀 상관없는 위치로 날아가는게 보일거임. 여기서 Camera로 다시 돌아오면 카메라 영역을 기준으로 돌아오는데 카메라 방향이 Z축에 정렬된 경우를 기준으로 Z포지션은 초기화되기 때문에 원래 위치랑 달라짐. 카메라 방향이 직교좌표계에 정렬된게 아니라 임의의 각을 가지고 있다면 더욱 특이하게 정렬되겠지.

그리고 하이어리키에서 자식개체는 부모개체의 좌표에 종속되지만 부모개체에 대한 상대적 좌표를 추가로 가지는 속성을 가지고 있는데 이 상대좌표는 자식개체가 가지는 값이니 당연히 유지가 됨. 즉 부모개체의 좌표가 10, 0, 0이고 Rotation도 0, 0, 0 자식 개체는 좌표가 0, 10, 0 Rotation은 0, 0, 0이라 하면 절대좌표계상에선 자식개체는 10, 10, 0이 되는거지

 

때문에 부모개체를 Screen Space-Camera를 하든 Screen Space -Overlay를 하든 자식개체를 그 부모개체가 스크린에서 렌더링되는 위치 기준으로 영역을 벗어나 버리면 당연히 카메라엔 안잡힘. X, Y, Z축 어느방향으로든 말이야. 이게 카메라 clipping plane에도 연계되고 게임내 객체들(배경, 유닛 등)에도 연계되기 때문에 자식객체들 위치 조정은 부모개체의 위치를 고려해서 잡아야함.

 

 

문제로 돌아가서 네 유니티 화면을 보면 부모개체가 Screen Space Camera모드인데 별개의 Rect가 오른쪽 위에 사각형 틀로 보이는걸 보니 자식객체(검은색 반투명으로 넣은 배경과 버튼)이 그 영역에서 왼쪽 아래로 빠져나와 있지?

Screen Space Overlay면 부모개체 사각형 틀이 화면(물론 옵션과 모니터 비율에 따라 화면 전체에 딱 맞진 않을 수 있어. 예를 들면 크기 960X720으로 잡고 Match를 Height를 1로 잡으면 16:9와이드 모니터에선 수직은 정확하게 1:1매치가 되지만 좌우가 모자라지 하지만 위치 기준은 가운데를 중심으로 Match옵션 기준에 따라 맞게 되어 있음)의 기준영역이라 보면 되고 Screen Space Camera면 부모개체의 사각형 틀이 카메라의 기준영역을 중심으로 좌표가 잡힌다고 보면 돼.

근데 거기서 검은 배경과 버튼이 어긋나 있잖아. 그러면 버튼이 화면기준에서 안보이게 되는거지.

그리고 영역자체는 3d이기 때문에 Z축도 카메라 Clipping plane영역 밖에 있거나 게임오브젝트 뒤에 있거나 하면 x, y축은 맞아도 안보일 수 있어

 

그리고 렌더 모드의 Screen Space를 바꿀 때 Sorting Layer에서 선택한 Layer의 순위에 따라 안보일 수도 있음. Sorting Layer 다른 오브젝트가 속한 레이어보다 리스트 아래쪽에 있으면 다른 오브젝트 보다 앞에 있으면 보이지만 리스트상 앞에 있으면 공간(카메라 또는 스크린 공간)상 앞에 있어도 가림.

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
5684 [프로그래밍] 코린이 ㅅㅂ 뭐가 문젠지 모르겠어요 집에가게해줘 0 1 시간 전 109
5683 [프로그래밍] Dear Imgui 라고 아시나요? 2 년째모쏠 0 8 시간 전 121
5682 [프로그래밍] 현업개발자분들 주말엔 편하게 쉴수있나요? 9 키로 0 21 시간 전 603
5681 [프로그래밍] 무엇이든 물어보세요. 28 변현제 0 3 일 전 330
5680 [프로그래밍] 금융권 SI 회사면 좋은건가.. 9 찰나생멸 1 3 일 전 343
5679 [프로그래밍] 개발자보단 엔지니어가 취업이 잘됨 5 iillillill 2 4 일 전 600
5678 [프로그래밍] 프론트엔드 개발자 연봉 1억 넘는 사람 있어? 13 잠적자 0 4 일 전 543
5677 [프로그래밍] Exiftool 이거 일본어 못 읽는데 13 부터시작하는이세... 0 5 일 전 213
5676 [프로그래밍] 반응형 웹페이지가 내가상상한거랑 좀 다르네 3 평택국 0 6 일 전 400
5675 [프로그래밍] 고졸 FE개발자 연봉, 상황에 조언좀.. 19 쾅꿍꿍 0 7 일 전 540
5674 [프로그래밍] 물경력들 보면 책임을 이해못하는것같음 5 mils 1 7 일 전 357
5673 [프로그래밍] GPT가 코딩 다해주네 3 겜신병자 0 8 일 전 689
5672 [프로그래밍] 크로스플랫폼의 욕심은 끝이없다 4 ye 0 10 일 전 370
5671 [프로그래밍] 월루중에 백준 풀어보고 있는데, 6 오뜨 0 12 일 전 642
5670 [프로그래밍] 같이 일했던 시니어급 개발자 아예 직무 바꿨네.. 15 흐린눈 2 13 일 전 654
5669 [프로그래밍] 안드로이드 스튜디오가 이상해요... 2 집에가게해줘 0 14 일 전 381
5668 [프로그래밍] 양심고백 5 너가전부옳아 0 15 일 전 367
5667 [프로그래밍] 멀티겜만드는거 첨인데 빡시네 4 아님나 0 15 일 전 416
5666 [프로그래밍] vscode에 이런 설정도 있나? 17 너가전부옳아 0 16 일 전 279
5665 [프로그래밍] 네트워크 관련 관련 질문드립니다 6 그러네요 0 18 일 전 204