전체 글 280

[UE] Unreal Engine UObject에서 Tick함수 사용하는 법

https://lykanstudio.tistory.com/83 // Test.h #include "Tickable.h" class PROJECTTest_API UTest : public UObject, public FTickableGameObject { GENERATED_BODY() public: UTest(); public: /** 사용할 Tick함수 입니다. */ virtual void Tick(float DeltaTime) override; /** Tick을 활성화할지 여부를 반환하는 함수입니다. */ virtual bool IsTickable() const override; /** 에디터에서 Tick을 활성화할지 여부를 반환하는 함수입니다. 일반적으로 true를 반환하여 에디터에서도 객체의 Tic..

[UE5] Game Ability System 상세 로그 보기

Game Ability System 소스 코드에는 많은 로깅들이 구현 되어 있습니다. 이러한 로그들은 ABILITY_LOG() 문으로 남기고 있습니다. 로그의 표시 수준 : VeryVerbose < Verbose < Log < Display < Warning < Warning < Error < Fatal 로그 카테고리 별로 표시 수준이 정해져 있으며 표시 수준 보다 낮은 수준은 표시 하지 않습니다. 예를 들어 아래 표에서 LogAbilitySystem 로그 카테고리의 표시 수준이 Display이면 'Display < Warning < Warning < Error < Fatal' 수준의 로그만 표시 됩니다. 로그 카테고리 표시 수준 LogAbilitySystem Display LogAbilitySystem..

[UE5] Game Ability System 디버깅 명령

showdebug abilitysystem 이 기능은 세 개의 "페이지"로 나뉩니다. 세 페이지 모두 현재 가지고 있는 게임플레이 태그를 표시합니다. AbilitySystem.Debug.NextCategory showdebug abilitysystem 명령으로 디버깅을 킨 상태에서 AbilitySystem.Debug.NextCategory 명령으로 세 페이지를 순환할 수 있습니다. AbilitySystem.Debug.PrevTarget 명령으로 이전 페이지로 순회 할 수도 있습니다. 첫 페이지 : 모든 어트리뷰트의 CurrentValue가 표시됩니다. 두 번째 페이지 : 모든 지속 시간 및 무한 게임플레이 이펙트와 스택 수, 해당 이펙트가 부여하는 게임플레이 태그, 부여하는 모디파이어가 표시됩니다. 세 ..

[UE5] 최적화를 위한 프로파일링 개요 및 편의 기능들

큰 범위 병목 지점 찾기 프로파일링은 큰 범위에서부터 시작하여 점차 범위를 좁혀가며 분석하는 것이 효율적입니다. 먼저 언리얼 엔진에서 제공하는 콘솔 명령어를 사용하여 큰 범위의 병목 지점을 쉽게 찾을 수 있습니다. 가장 먼저 확인해야 할 것은 어떤 쓰레드에서 병목 현상이 발생하는지, 혹은 GPU에서 발생하는지를 파악하는 것입니다. 이를 가장 잘 확인할 수 있는 방법은 'stat unit' 명령어를 사용하는 것입니다. stat unit은 항목을 구분하여 병목 지점을 쉽게 찾을 수 있도록 큰 범위로 보여줍니다. → 대부분의 경우 분석 시작의 처음은 'stat unit' 또한, stat unitgraph 콘솔 명령어를 사용하여 실시간 그래프와 함께 동일한 지표를 표시할 수도 있습니다. 60프레임을 목표로 한다..

[UE5] 최적화를 위한 프로파일링 사전 준비

독립형 게임으로(Standalone Game) 플레이 일반적으로 쉽게 프로파일링을 할 수 있는 방법은 'Standalong Game'으로 게임을 실행 하는 것입니다. 그렇지만, 좀 더 정확한 프로파일링은 하기 위해서는 패키지 빌드로 게임을 실행해야 겠습니다. 프로파일링 사전 준비 에디터 실시간 업데이트 모드 해제 에디터 최소화 독립형 게임으로(Standalone Game) 실행 후 'Unreal Editor'를 최소화 합니다. Frame Rate Smoothing OFF 프로젝트 세팅에서 다음과 같이 Frame Rate Smoothing을 꺼줍니다. VSync 끄기 콘솔 명령 : r.vsync 0 참고 : Unreal Engine의 VSync Physics Sub Stepping OFF 프로젝트 세팅에서..

실리콘밸리에선 어떻게 일하나요

책의 제목으로 '실리콘밸리에선 이떻게 일하나요'보다는 '메타에선 어떻게 일하나요'가 좀 더 어울립니다. 창업자의 경영 철학이 회사의 비전이 되어 회사 전체의 문화가 되고 이 문화가 인재들을 성장시키고 인재들을 모은다. 메타의 조직 문화는 '자율과 책임'이 뒷받침된 '인간중심'의 문화이다. 자율적인 업무 방식이 성공적으로 유지되기 위해서는 반드시 '책임'이 따라야 한다. bottom-up, 동등함, 공유, 인간중심 등의 키워드가 메타의 조직문화를 설명 한다. 탑다운은 한 정된 인원인 상위에 있는 리더들의 아이디어로, 바텀업은 훨씬 더 많은 사원들의 아이디어로 창의성이 발현된다. 당연히 창의적인 업종에 있다면 어느쪽이 그 성과가 더 좋을지는 어린아이들도 알 것이다. 물론 조직의 비전은 탑다운으로 정해야 겠습..

독서 리뷰 2023.04.23