문제를 만난 계기
언리얼 강의를 듣던 도중 총구 화염을 구현하는 부분이 있었다.
강의가 언리얼엔진 4 기반으로 되어있던 지라 언리얼엔진 5에서는 사용되지 않는 함수와 파일을 사용했다(deprecated).
그리고 5에서는 Niagara System 이라는걸 사용하기에 관련 함수를 사용하기 위해 #include "NiagaraFunctionLibrary.h" 파일을 인클루드 했는데, 분명 해당 파일이 존재하는데도 파일을 찾을 수 없다는 문제가 생겼다.
원인
언리얼 엔진에서 Build.cs 파일이 c++프로젝트의 빌드 설정을 정의하는데, 의존성 설정 역할을 한다.
특정 모듈을 사용하고자 한다면 이름을 추가해야 하는것.
그런데 private와 public 모듈로 구분되어 있는데 이건 뭘까?
모듈간에 서로의 내용이 필요한 경우는 public, 단일 모듈에서만 사용되면 private라고 한다.(gpt)
(Niagara를 private에 넣어도 컴파일 하는데는 문제가 없었다.)
해결
프로젝트파일/Source/프로젝트명.Build.cs 파일 안에
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "EnhancedInput"});
위와같은 부분이 있는데, 여기에 "Niagara"를 추가해주면 해결이 된다.
'개발환경 > Unreal' 카테고리의 다른 글
| 언리얼 프로젝트에 콘텐츠 추가 에러 해결 (0) | 2026.03.19 |
|---|---|
| Cannot open source file 에러 해결 (0) | 2025.01.04 |
| Unreal Error C4067 해결 방법 (0) | 2024.11.19 |
| Unreal Error C4668 해결 방법 (0) | 2024.11.18 |
| Unreal EngineBuildBatchFilesBuild.bat: command not found 해결 방법 (0) | 2024.11.18 |