최적화
-
[Unreal/C++] 애니메이션 State Event 타이밍 이슈 처리게임 엔진/Unreal 2023. 6. 17. 17:17
애니메이션 State Event를 사용하는데, 다른 캐릭터의 이벤트 타이밍이 정상적으로 동작하지 않는다면 다음 옵션이 켜져 있는지 확인 후 해당 애니메이션에서만 옵션을 False로 처리하자. USkinnedMeshComponent::bEnableUpdateRateOptimizations (기본값 : True) 해당 옵션이 활성화 되어 있으면 화면에 표시되는 크기에 따라 애니메이션 업데이트를 늦추게 된다. 일반적인 경우에는 성능을 위해 필요하지만 이벤트가 정확한 타이밍에 발동해야 하는 경우에는 해당 동작에만 이 옵션을 꺼주면 정상적인 동작을 확인할 수 있다. bEnableUpdateRateOptimizations | Unreal Engine Documentation bEnableUpdateRateOptim..
-
Unity - CPU 프로파일러보관함 2020. 7. 22. 20:50
CPU 프로파일러의 구성 CPU 프로파일러 모듈은 다음의 항목의 성능을 확인한다. Rendering Script Physics Animation GarbageCollector VSync Global Illumination UI Others 이러한 항목은 자신이 만들고 있는 프로그램에 따라 주로 확인하게 되는 부분이 달라지겠지만 게임의 경우 일반적으로 Rendering, Animation은 항상 확인해야 한다. CPU 프로파일러에서는 특히 프레임 차트를 확인하여 프로파일이 진행되게 되는데 프레임 차트에서 CPU 사용률이 치솟는 지점을 선택하여 상세 정보를 확인하는 형태로 진행되기 때문이다. 모듈 세부 정보 창은 프레임 차트에서 특정 지점을 선택할 때 동작하며 좌 상단의 드롭박스를 통해 사용할 모드를 선택할..
-
Unity - 프로파일러란?보관함 2020. 7. 19. 20:42
유니티의 프로파일러란? 유니티의 프로파일러에 대해 알기 전에 프로파일링의 프로그램 세계에서의 의미를 확인하면 다음과 같다. 프로파일링(profiling, 프로그램 프로파일링/소프트웨어 프로파일링) 또는 성능 분석은 프로그램의 시간 복잡도 및 공간(메모리), 특정 명령어 이용, 함수 호출의 주기와 빈도 등을 측정하는 동적 프로그램 분석의 한 형태이다. 프로파일링 정보는 대개가 프로그램 최적화를 보조하기 위해 사용된다. - 위키백과[프로파일링 (컴퓨터 프로그래밍) 항목 中] 이것을 통해 유니티의 프로파일러가 유니티로 만들어진 프로그램의 성능을 분석하고 그것의 결과물을 이용해 최적화를 하기 위한 툴이라는 것을 알 수 있다. 프로파일러 실행 방법 최신 버전의 유니티에서는 상단 메뉴의 [Window] - [Ana..
-
Unity 씬 전환 최적화 테스트일지 2019. 11. 9. 16:01
테스트 진행) 0. 조건 설정 각 씬은 50,000 개의 회전하는 박스 오브젝트로 구성됨. 총 세개의 씬으로 구성되며 1번씬부터 3번씬 그리고 다시 1번씬으로 5번의 씬 전환을 진행. 성능 프로파일러를 통해 성능(메모리 및 속도) 변화 파악을 진행. 1. 기본 씬 전환 아무런 작업 없이 씬 5번 로드 2. 씬 전환 사이에 빈 씬 로드 씬 로딩 전 빈 씬으로 전환한 뒤 실제 로딩할 씬으로 전환 3. 기본 씬 전환 후 gc.collect 여러번 호출 씬 로딩을 5번 한 뒤 6번째 로딩할 때 GC.Collect()를 7번 호출 결론) 기본 씬 전환 시 약간 메모리 사용량이 올라간 것이 확인되었다. 씬 로딩이 완료된 뒤 GC가 동작하는 것이 맞는 듯 하다. GC.Collect()를 7번 호출하면 내부적으로 즉시..