기술 면접 준비 - (30~33)

이준호·2024년 2월 26일
0
post-custom-banner

📌 기술면접 준비 (30 ~ 33)



31. 유니티로 타이머를 구현하는 알고리즘을 설명해주세요.

Time.deltaTime 을 이용한 타이머 : 원하는 시간의 시간을 저장한 float 타입의 변수를 선언하고 값을 할당합니다.
매 프레임마다 'Time.deltaTime' 을 저장한 변수에 빼줍니다.
조건문에 해당 변수가 0.0f 이하가 됐을 때 원하는 로직을 실행시켜주고 설정한 시간 변수를 초기화 해줍니다.

Time.time 을 이용한 타이머 : '원하는 타이머 시간'을 저장할 float 변수를 할당하고, '타이머 시작 시간'을 담을 float 변수도 선언해줍니다.
시작할 때, '타이머 시작 시간' 변수에 현재 시간(Time.time)을 할당해줍니다.
조건문에 'Time.time' - '타이머 시작 시간'을 해주어 '원하는 타이머 시간'을 저장한 변수보다 커지거나 같아지면 원하는 로직을 실행하고 '타이머 시작 시간' 변수에 Time.time을 다시 할당합니다.








32. Time.deltaTime이란 무엇이며, 사용하는 이유에 대해 설명해주세요.

'Time.deltaTime' 은 이전 프레임과 현재 프레임 사이에 경과한 시간을 초 단위로 나타냅니다. 즉, 마지막 프레임과 현재 프레임 사이의 시간 간격을 의미합니다.
사용하는 이유로는 게임의 로직을 프레임 속도에 독립적으로 만들기 위해서 입니다. 사용자의 컴퓨터 사양이 달라 프레임 속도가 달라도 일관된 플레이를 제공할 수 있습니다. 또한 타이머나 쿨타임 같은 로직을 구현할 때에도 사용됩니다.








33. 유니티 렌더링 파이프라인에 대해 설명해보세요.

a. 랜더링 파이프라인에는 어떤 종류가 있나요?

유니티의 렌더링 파이프라인(Rendering Pipeline)은 게임의 시각적 요소를 화면에 어떻게 그릴지 결정하는 프로세스입니다.

Built-in : 가장 오래되고 일반적인 렌더링 파이프라인으로, 다양한 디바이스와 프로젝트에 걸쳐 넓은 호환성을 제공하고 매우 유연합니다.
URP, Universal Rendering Pipeline : 모바일과 VR을 포함해 다양한 플랫폼에서 고성능을 제공하고 사용하기 쉬운 설정 및 좋은 그래픽 퀄리티를 제공합니다.
HDRP, High Definition Rendering Pipeline : 고품질의 그래픽을 필요로 하는 PC 및 콘솔 게임과 시뮬레이션들을 위해 설계되었습니다. 고퀄리티의 라이팅과 메테리얼을 다루는 고급 기능을 제공합니다.








34. 드로우콜(Draw Call) 배칭이 무엇인지 설명해주세요.

드로우콜(Draw Call) 배칭은 여러 렌더링 명령을 하나로 묶어 GPU의 처리 효율을 높이는 최적화 기술입니다.
정적 배칭과 동적 배칭 두 가지 방식을 제공합니다.
정적 배칭은 위치가 변하지 않는 오브젝트들의 메시를 사전에 하나로 합치는 방식이며 주로 게임의 환경 구성 요서에 사용됩니다.
동적 배칭은 런타임에 변할 수 있는 오브젝트들을 자동으로 배치하여 처리합니다. 작은 메시를 가진 이동하는 오브젝트들에 적합합니다.
위 방법을 사용하여 드로우콜의 수를 줄일수록 렌더링 성능이 향상됩니다.

profile
No Easy Day
post-custom-banner

0개의 댓글