⚡ SECTION 08

성능 최적화

Performance & Optimization

프로파일링, CPU/GPU 병목 제거, 가비지 컬렉션(GC) 억제, 모바일/스팀 최적화 전략을 다룹니다.

총 27편의 가이드5개의 챕터

프로파일링 & 병목 분석

7편
intermediate

Asset Lock Queue 운영법: 대용량 바이너리 에셋 잠금 대기시간으로 아티스트 병목 찾기

대용량 바이너리 에셋의 잠금 대기시간을 측정하고 Asset Lock Queue를 운영해 아티스트 병목을 찾는 방법을 설명합니다. 지표 설계부터 알림, 우선순위, 예외 처리와 주간 회고까지 Perforce Helix Core 협업 환경에 적용할 수 있는 실무 절차를 정리합니다.

intermediate

게임 씬 전환 GC 스파이크를 AI로 자동 프로파일링하는 방법

Unity 씬 전환 중 발생하는 GC 스파이크를 자동 감지하고 원인 후보와 성능 회귀 여부를 AI가 분류하도록 구성하는 실전 프로파일링 파이프라인을 소개합니다.

intermediate

AI 기반 실시간 프레임 드랍 원인 프로파일링 봇과 자동 캡처 시스템 구축

Unity 2022.3 LTS와 Unreal Engine 5.x에서 프레임 시간·CPU/GPU·GC 지표를 수집하고 이상 구간의 화면, 로그, 트레이스를 자동 캡처한 뒤 AI가 원인을 요약하는 방법을 설명합니다.

intermediate

Unity 소스코드 구조 리팩토링으로 프레임 드랍 50% 개선한 사례 분석

Unity 프로젝트에서 Update 호출 분산, UI 재생성, GetComponent 반복 탐색으로 발생한 프레임 드랍을 코드 구조 리팩토링으로 줄인 분석입니다. Profiler 측정 기준과 단계별 개선 방법, 검증 지표를 정리합니다.

intermediate

Unity FixedUpdate 물리 기반 캐릭터 연산 병목 해소: 프레임 안정화 실전 가이드

Unity FixedUpdate에서 물리 기반 캐릭터가 늘어날 때 발생하는 CPU 병목의 원인을 진단하고 Rigidbody 처리 분리·NonAlloc 쿼리·갱신 주기 제어로 물리 프레임을 안정화하는 방법을 정리합니다.

intermediate

Object Pooling으로 프레임 드랍 줄이기

반복 생성과 삭제에서 발생하는 할당 비용과 가비지 컬렉션 부담을 줄이는 Object Pooling의 원리와 구현 방법을 정리합니다. Unity 예제를 중심으로 풀의 크기, 반납 규칙, 과도한 풀링을 피하는 기준까지 다룹니다.

intermediate

데미지 넘버(Damage Numbers) 최적화: 연사 스킬 사용 시 텍스트 메쉬 및 캔버스 UI 병목 해결

초당 수십 회 이상 발생하는 연사 스킬 사용 시 캔버스 재배치와 GC 부하로 인한 프레임 드랍을 분석하고 오브젝트 풀링, 캔버스 분리, 파티클 시스템 기반 렌더링을 통한 최적화 기법을 소개합니다.

CPU & 메모리/GC 최적화

4편
intermediate

메모리 릭을 막는 오브젝트 풀링 고도화

오브젝트 풀링은 할당 비용을 줄이는 기법이지만 잘못 설계하면 오히려 객체와 리소스를 오래 붙잡아 메모리 릭을 키울 수 있다. 생명주기, 반환 규약, 리소스 해제를 중심으로 안전한 풀을 설계하는 방법을 정리한다.

intermediate

BVH(Bounding Volume Hierarchy)로 대규모 물리 쿼리 최적화하기: 원리부터 C# 구현까지

수만 개의 오브젝트가 존재하는 게임 환경에서 Raycast 및 충돌 검사 병목을 해결하는 BVH(Bounding Volume Hierarchy) 공간 분할 기법의 구축 원리, SAH 분할 알고리즘, C# 구현 가이드를 정리합니다.

intermediate

Unity Object Pooling으로 다중 프로젝타일과 데미지 Text Canvas 최적화하기

Unity에서 대량의 프로젝타일과 데미지 텍스트를 Instantiate·Destroy로 처리할 때 발생하는 GC 할당, CPU 스파이크, Canvas 리빌드 비용을 Object Pooling과 분리된 UI 캔버스로 줄이는 실전 구현 방법을 정리합니다.

intermediate

투사체/파티클 오브젝트 풀링: 수백 개의 투사체를 메모리 릭 없이 처리하는 고도화 기법

대규모 탄막 및 파티클 생성 시 발생하는 GC 스파이크와 메모리 누수를 완벽히 방지하는 고도화된 오브젝트 풀 아키텍처와 C# 구현 패턴을 다룹니다.

GPU & 드로우콜/배칭 최적화

7편
intermediate

Unity RenderTexture 임시 버퍼 반환 누락을 추적하는 GPU 메모리 누수 디버깅 툴 만들기

Unity RenderTexture.GetTemporary와 ReleaseTemporary의 짝을 추적하는 C# 디버깅 툴을 구현합니다. 호출 위치, 프레임, 해상도, 포맷을 기록해 임시 버퍼 반환 누락과 GPU 메모리 증가 원인을 빠르게 찾고 RenderTexture 풀 재사용과 실제 누수의 차이까지 검증합니다.

intermediate

Unity MaterialPropertyBlock과 GPU Instancing 충돌 조건을 자동 진단하는 에디터 툴

Unity에서 MaterialPropertyBlock이 GPU Instancing을 깨뜨리는 조건을 자동 점검하는 EditorWindow를 구현합니다. 셰이더 인스턴싱 선언과 Material.enableInstancing, SRP Batcher 주의점을 함께 진단합니다.

intermediate

LOD 단계 전환 시 캐릭터 실루엣 손실을 수치화하고 자동 보정하는 메시 최적화 파이프라인

캐릭터 LOD 전환에서 발생하는 실루엣 깨짐을 IoU와 경계 거리로 측정하고 중요 부위 가중치와 자동 재생성 규칙으로 보정하는 실전 메시 최적화 방법을 정리합니다.

intermediate

GPU Instancing으로 잔디·폴리지 최적화하기: 드로우 콜과 오버드로우 줄이는 실전 가이드

GPU Instancing으로 반복 잔디와 폴리지의 드로우 콜을 줄이고 알파 클리핑·LOD·컬링으로 병목인 오버드로우까지 제어하는 Unity·Unreal 실전 최적화 방법을 정리합니다.

intermediate

게임 플레이 UI 최적화: 입력 지연부터 드로우콜까지

게임 플레이 인터페이스를 빠르고 읽기 쉽게 유지하기 위한 측정 방법, 구조 설계, 엔진별 구현 힌트를 정리합니다. HUD·인벤토리·월드 공간 UI에서 자주 발생하는 병목과 대응 사례를 다룹니다.

intermediate

GPU 인스턴싱 Foliage: 수천 개 풀·자갈·소품 오브젝트의 GPU 렌더링 최적화

수천 개의 풀, 자갈, 소품 등 필드 오브젝트를 GPU 인스턴싱과 컴퓨트 셰이더 컬링을 활용해 단일 드로우 콜 수준으로 최적화하는 기법을 소개합니다.

intermediate

GPU 인스턴싱으로 풀과 나무를 대량 렌더링하는 방법

폴리지를 수천 개 이상 배치할 때 드로우 콜과 개별 오브젝트 비용을 줄이는 GPU 인스턴싱의 원리와 구현 전략을 정리한다. Unity와 Unreal에서 확인할 지점, 셰이더 데이터 설계, 거리 기반 LOD와 컬링까지 실무적으로 설명한다.

모바일/저사양 기기 최적화

3편

에셋 압축 & 로딩 최적화

6편
intermediate

Blender Python API와 AI로 3D 모델 LOD 0~4 자동 생성·검수하는 파이프라인

Blender Python API의 Decimate Modifier와 AI 기반 메타데이터 분석을 결합해 3D 모델 LOD 0~4를 자동 생성하고 삼각형 수, 실루엣, 노멀, UV를 검수하는 실전 파이프라인을 정리합니다.

intermediate

캐릭터 Cloth Simulation LOD 전환 시 옷자락 튐 줄이기: 위치·속도 상태 인계 방법

캐릭터 Cloth Simulation LOD 전환 때 옷자락이 튀는 원인을 좌표계·메시 매핑·속도 불연속 관점에서 분석하고 위치·속도·제약 상태를 안전하게 인계하는 구현 절차와 디버깅 기준을 정리합니다.

intermediate

Unity LOD Group와 Mesh Simplifier 연동으로 3D 배경 프레임 최적화하기

Unity LOD Group과 UnityMeshSimplifier를 연동해 원거리 3D 배경의 삼각형 수와 드로우 부담을 줄이는 방법을 정리합니다. LOD 전환 거리 설계, 자동 메시 생성, 품질 검증, 프레임 측정 절차까지 실무 기준으로 설명합니다.

intermediate

Unity LOD Group과 Mesh Simplifier로 3D 모델 프레임 최적화하는 방법

Unity LOD Group과 UnityMeshSimplifier를 활용해 원거리 3D 모델의 삼각형 수를 줄이고 화면 점유율 기준 전환값과 품질 검증으로 프레임 저하와 LOD 팝핑을 함께 줄이는 실전 가이드입니다.

intermediate

LOD 메시와 텍스처 스트리밍을 함께 최적화하는 법

LOD와 텍스처 스트리밍은 같은 화면 예산을 나눠 쓰는 최적화 수단이다. 거리별 메시 품질, 밉맵 해상도, 메모리 예산을 함께 설계해 프레임 시간과 메모리 사용량을 안정시키는 방법을 정리한다.

intermediate

Addressables Assets 연동: 무거운 장비, 스킬 VFX, 몬스터 모델의 동적 메모리 로딩/해제

Unity Addressable Asset System을 사용하여 고용량 3D 몬스터 모델, 스킬 VFX, 장비 에셋을 비동기로 로드하고 참조 카운팅 기반으로 메모리를 해제하는 런타임 구조를 구현합니다.