설연휴 동안 작업한 튜토리얼

 

타이쿤 가이드

RPG + 타이쿤 가이드 북

타이쿤 진행

 


 

 

UI 최적화 기법 유니티 상단에 윈도우(Window) - 분석(Analysis) - Frame Debugger -> Enable 누르기

화면을 그리는 동안 어떤 단계를 거쳐서 그려지는지 나옴 단계를 줄이는 것이 좋음

 

드로우콜(DrawCall) : CPU가 GPU에게 그리게 시키는 과정, 횟수가 많을 수록 부하가 심해짐 

 

Batches - 드로우콜, 셋패스콜(쉐이더 메테리얼 그리라고 시키는 것)?

 

합친거 한 방에 다 그리는 법 하이어라키 창에서 2D - Sprite AtlasObjects for Packing

이미지를 넣을 수 있고 폴더를 통째로 넣을 수도 있음 ->

아틀라스에 넣은 부분 실행 하면 단계적으로 그리는게 아니라 한방에 그려짐

~ 참조 UI요소를 전부 아틀라스로 묶으면 한 프레임 안에 그려줌

 

주의할 점: 많은 이미지를 넣게되면 파일이 커지고 2048x2048 이상은 버티지 못하는 기기가 있을 수 있음

그럴때 사용하는 Packing전략 - 어떻게 Packing을 묶어서 아틀라스를 잘 분리해 놓냐는 전략

버튼은 버튼끼리, 캔버스는 캔버스끼리 등등

 

World Camera가 상당히 성능부하가 심하니 UI에 오래 머물러 있는 경우에는

뒷배경을 하나의 이미지로 만들어서 사용하고 Camera를 꺼두는 편이 최적화에 도움이 됨

 

UI에서는 애니메이션은 되도록 안쓰는 게 좋음

애니메이션을 동작시키는 UI들을 따로 빼놓던가 자식 캔버스를 만드는 방법 등을 사용

 

이미지를 그냥 늘리면 깨짐 -> Sprite Editor에서 조절해 선택한 영역만 늘어나도록 할 수 있음

 

Image 컴퍼넌트에 Raycast Target - 클릭을 입력받을 필요가 없는 UI이면 꺼주는 게 성능에 좋음

 

Mask 쓸 때는 컴포넌트 말고 쉐이더로 처리하는게 좋음

 

 


 

 

[기술면접 연습]

오버로딩과 오버라이딩의 차이점을 설명해주세요. 

 

오버로딩은 같은 이름의 메소드가 서로 다른 매개변수를 가지는 것을의미합니다.

매개변수의 유형,순서,개수에 따라 호출되는 메서드가 다릅니다.

 

오버라이딩은 부모 클래스에서 이미 정의된 메소드를 자식 클래스에서재정의 하는것을 의미합니다.

부모 클래스의 메소드를 자식클래스에서 필요에 맞게 다시 구현 할 수 있습니다.

반응형