Unity에서 모바일 게임 성능 개선
모바일 게임은 최근 몇 년 동안 단순한 2D 게임에서 완전한 3D 경험을 제공하는 것으로 크게 발전했습니다. 하지만 그럼에도 불구하고 여전히 처리 능력은 제한되어 있으므로 원활한 게임 경험을 제공하려면 디자인 선택과 관련하여 몇 가지 고려 사항이 필요합니다.
다음은 Unity에서 개발할 때 모바일 장치의 성능을 개선하기 위해 살펴봐야 할 상위 5가지 사항입니다.
투명성을 피하세요
픽셀 오버드로는 비용이 많이 들고 모바일 장치의 프레임 속도를 크게 줄일 수 있습니다. 이를 방지하려면 투명 셰이더 또는 기본적으로 투명도가 포함된 셰이더(예: 입자 셰이더)를 사용하지 마십시오.
불투명 형상의 경우 모바일 카테고리의 Shaders를 사용하세요.
실시간 그림자 방지
실시간 그림자는 멋져 보일 수 있지만 상당히 많은 처리 능력이 필요합니다. 따라서 대신 라이트맵에 굽는 것이 가장 좋습니다.
정적 배치를 사용하여 그리기 호출 줄이기
정적 배칭은 Unity이 정적 개체를 결합하여 그리기 호출 수를 줄여 렌더링 성능을 향상시키는 방법입니다.
정적 배칭을 활성화하려면 장면의 모든 정적 개체를 "Batching Static"로 표시한 다음 편집 -> 프로젝트 설정... -> 플레이어로 이동하여 정적 배칭이 선택되어 있는지 확인하세요.
주의해서 동적 배치 사용
동적 일괄 처리는 다소 논란의 여지가 있습니다. 한편으로는 Unity가 동적 개체를 더 적은 수의 개체로 결합하여 잠재적으로 성능을 향상시킬 수 있지만, 다른 한편으로는 매 프레임마다 그렇게 해야 하므로 대신 성능이 저하될 수 있습니다.
전반적으로 모바일 플랫폼을 대상으로 하는 경우 동적 일괄 처리를 비활성화하는 것이 좋습니다.
OnGUI 사용을 피하세요
OnGUI를 사용하면 코드에서 사용자 UI를 빠르게 생성할 수 있지만 UI Canvas에 비해 속도가 매우 느리므로 프로토타입 제작에만 사용하세요.