먼저 AIController 블루프린트에서 주인공 캐릭터를 발견했을 때를 이벤트 디스패처로 처리한다.
그리고 주인공 캐릭터 BP에서 처리한 이벤트를 호출하여 디텍트 이벤트로 바인드 한다.
이렇게 처리하면 AI가 주인공을 발견했을때만 이벤트가 일어난다.
이것을 이용해 몬스터가 주인공에게 뛰어 올때 자동으로 무기를 장착하도록 처리했다.
먼저 AIController 블루프린트에서 주인공 캐릭터를 발견했을 때를 이벤트 디스패처로 처리한다.
그리고 주인공 캐릭터 BP에서 처리한 이벤트를 호출하여 디텍트 이벤트로 바인드 한다.
이렇게 처리하면 AI가 주인공을 발견했을때만 이벤트가 일어난다.
이것을 이용해 몬스터가 주인공에게 뛰어 올때 자동으로 무기를 장착하도록 처리했다.
IDE 프로그램(라이더 같은..)에서 프로젝트를 실행하고, 메뉴에서 Editor / Game 을 골라서 디버그 및 실행이 가능해 진다.
말그대로 Editor 로 선택 시 언리얼엔진과 에디터에서 실행되게 되고, Game을 선택시 최종 패키징 된 빌드가 실행되게 된다.
타깃과 구성 별로 고를 수 있으며, 최대한 많은 문제를 잡아 내기 위해서는 Debug 모드로 실행하는게 좋은데, 여러가지 문제를 뒤지느라 프레임이 많이 떨어지게 된다.
반대로 Shipping 모드로 할 경우 디버그가 아예 안되게 막혀있고, 프레임이 가장 잘 나오게 된다.
포인터 개념을 이해하자. (0) | 2024.11.26 |
---|---|
AutogenShaderHeaders.ush 삭제 조심 (0) | 2024.11.25 |
소스코드 빌드 성공 후 각 폴더의 역할을 잘 파악하자. (0) | 2024.11.23 |
패키징시 플러그인 충돌과 GameFeatureData 를 주의하라. (0) | 2024.11.20 |
visual studio 2022 가 잘못 깔렸을 경우 다시 까는 방법 (0) | 2024.11.18 |
이 에러가 날 힘들게 하고 있다...;;
UObject 의 수가 한도치를 넘어서서 에러가 발생했다는 건데.. 내 씬이 이렇게가지 무겁게 셋팅이 안되어있는데, 도무지 영문을 모르겠다..;.;
열심히 문제를 찾아봐야겠네.. 어딘가에서 오브젝트가 무한 증식하고 있는 듯 하다.
* 해당 문제해결
- 첫째로는 GC를 자주 발동시켜 문제를 완화 - 하지만 게임내 렉을 일으킬수 있어 좋은 방법 아님.
- 완전 해결된 이유 - 주인공 애니메이션을 정리하면서 자동 해결.
referencing 잘못된 애니나 오브젝트들이 UObject를 증가시키게 되므로 잘못 연결된것들을 고치면 자동으로해결.
Unreal - Location Volume 을 쓰지 말자. (0) | 2024.11.27 |
---|
게임 시작할 때의 위치나 퀘스트 완료후의 위치를 Location Volume 을 활용해서 위치를 지정했다..
그런데 얘가 뒤통수를 쳤다.
에디터상에서는 위치값을 매우 잘 잡아 주지만 패키징 빌드후에는 전혀 엉뚱한 곳으로 캐릭터를 워프시킨다.. 젠장.
전부 Actor 로 다시해서 문제를 해결했다.. 황당.
LowLevelFatalError Maximum number of UObjects (0) | 2024.11.27 |
---|
엔진 코드 중에 UniquePtr.h 라는 포인터 처리 코드가 있습니다.
코드에서 포인터를 사용할 경우 해당 헤더파일을 반드시 참조하게 되어 디버그에러시 해당 파일과 잘못연결되어 에러를 뱉는 경우가 허다합니다.
메모리에 올렸다 해제했다를 잘해야 하는데, 그러지 못한 경우 해당 코드에서 문제를 일으키는 것입니다.
포인터의 개념을 잘 숙지하여 해당 코드와 문제가 일으나지 않도록 관리하는 것이 필요합니다.
자, 이제 포인터에 대해서 자세히 알아봅시다..
포인터는 **"다른 변수의 메모리 주소를 가리키는 변수"**라고 생각하면 됩니다. 조금 더 쉽게 말하면, 포인터는 다른 데이터가 저장된 위치를 기억하는 변수예요.
포인터를 주소로, 그리고 변수를 집이라고 생각해볼게요.
예를 들어, 집(변수) 안에 사람이 살고 있다고 하면, 포인터는 그 사람이 살고 있는 집의 위치를 알려주는 주소를 기억하고 있는 거예요.
여기서:
포인터가 중요한 이유는 메모리의 직접적인 접근과 효율적인 데이터 처리를 가능하게 하기 때문이에요.
패키지 빌드 성공 후 디버그 방법. (0) | 2024.11.28 |
---|---|
AutogenShaderHeaders.ush 삭제 조심 (0) | 2024.11.25 |
소스코드 빌드 성공 후 각 폴더의 역할을 잘 파악하자. (0) | 2024.11.23 |
패키징시 플러그인 충돌과 GameFeatureData 를 주의하라. (0) | 2024.11.20 |
visual studio 2022 가 잘못 깔렸을 경우 다시 까는 방법 (0) | 2024.11.18 |
엔진을 실행할 때 SM6를 사용할 경우 AutogenShaderHeaders.ush 파일이 Game\Intermediate\ShaderAutogen\PCD3D_SM6\
폴더에 생성되게 됩니다.
쿠킹 테스트 중 C:\Users\User\AppData\Local\Temp\UnrealShaderWorkingDir 폴더에 생성된 파일과 충돌이 발생하길래 삭제한 적이 있습니다。
그 이후 엔진 실행 중 셰이더 컴파일이 안되서 따로 백업해 둔 프로젝트가 있어서 간신히 위기를 넘어 간 적이 있습니다.
위 파일을 단순히 덮어씌운다고 해결되지도 않기 때문에 지우는 순간 프로젝트를 영영 잃게 될 수 있기 때문에 신중함이 필요합니다.
셰이더 쿠킹 문제가 터졌을 땐 캐싱 파일들을 바로 지우지 않고, 엔진과 게임 폴더내에 있는 Intermediate / DerivedDataCache / Saved 폴더를 제거후 엔진을 다시 실행하는 방식으로 접근하는 것이 가장 좋은 방법입니다.
패키지 빌드 성공 후 디버그 방법. (0) | 2024.11.28 |
---|---|
포인터 개념을 이해하자. (0) | 2024.11.26 |
소스코드 빌드 성공 후 각 폴더의 역할을 잘 파악하자. (0) | 2024.11.23 |
패키징시 플러그인 충돌과 GameFeatureData 를 주의하라. (0) | 2024.11.20 |
visual studio 2022 가 잘못 깔렸을 경우 다시 까는 방법 (0) | 2024.11.18 |
각각의 폴더를 잘 파악해야 패키지 빌드를 잘 성공 시킬 수 있다.
1. 엔진폴더와 게임 폴더의 구분을 잘 파악하자.
* 1번은 엔진을 실행하는데 필수로 필요한 파일들이 있으며, 빌드 성공시에 해당 폴더의 \Engine\Binaries\Win64 폴더로 이동하여 UnrealEditor.exe 파일을 실행하면 엔진이 실행하게 된다.
* UE5.sln 파일을 실행한 후 IDE 프로그램에서 디버그나 빌드를 눌러도 실행된다.
* 아래는 Engine 폴더 내부인데, 빨간 줄을 친 부분은 엔진을 실행하는 데 필수 요소 들은 아니며 엔진을 실행하거나 하는등의 바이너리화 작업중에 발생하는 파일들이다. 따라서 엔진을 다른 컴퓨터나 폴더로 옮길수 해당 폴더들은 제외하고 옮겨도 실행하는데 문제가 없다.
* 2번은 엔진 실행후 해당 엔진을 통해 만들어진 게임 폴더들이다. 아래 폴더 구조를 통해 상세히 알아 보자. 먼저 여기서도 엔진과 마찬가지로 아래의 빨간색으로 표시된 폴더들은 구동시 반드시 필요한 폴더가 아니다.
1. Content 폴더 : 게임실행시 블루프린트와 아트어셋 데이터들이 생성되는 장소이다. 엔진코드나 플러그인을 딱히 건드리지 않았을 경우 해당 폴더만 옮겨도 게임내부의 어셋들을 다른 프로젝트에서 확인이 가능하다. 하지만, 안되는 경우도 꾀 있으니 해당 폴더만으로 모든작업된 내용이 똑같이 발동 될거라 섣불리 생각하지는 말자. 예를들어 tag나 Default.ini 등에서 바뀌어진 정보는 해당 폴더에 있지 않다.
2. Plugins 폴더 : 게임실행 후 설치한 플러그인나 외부적으로 제작한 플러그인들이 생성되는 장소이다. 해당 폴더에 설치된 내용이 있고, game.uproject 파일에서 true / false 설정을 할 수 있다. 다만 언리얼에서 기본 제공하는 플러그인들은 uproject 파일에서 true 했을 경우에 거의 잘 되긴 하지만 외부에서 가져온 플러그인들은 Source에서 제어해줘야만 정상 작동하는 PlugIns들도 있다는 것을 주의하자.
3. Source 폴더 : 소스코드 빌드된 엔진에서 가장 중요한 부분이라 생각하면 될거 같다. 요 부분에서 엔진 코드 / 게임 코드 / 플러그인 코드 등을 C++ 로 제어하게 된다. IDE 프로그램에서 처리되는 모든 소스코드가 이곳을 통해 이루어진다고 보면 된다. 그만큼 민감하게 예민한 곳이라 적절하게 코드작업이 이루어지지 않을 경우 빌드에러가 발생하여 게임 / 엔진 모두가 망가질수 있음을 주의하자. Unreal C++ 코딩 카테고리에서 참고사항을 잘 확인하며 신중하게 작업을 진행해야 한다.
포인터 개념을 이해하자. (0) | 2024.11.26 |
---|---|
AutogenShaderHeaders.ush 삭제 조심 (0) | 2024.11.25 |
패키징시 플러그인 충돌과 GameFeatureData 를 주의하라. (0) | 2024.11.20 |
visual studio 2022 가 잘못 깔렸을 경우 다시 까는 방법 (0) | 2024.11.18 |
게임개발을 위해 언리얼 소스코드 빌드부터 알고 넘어갑시다. (2) | 2024.11.16 |
PublicIncludePaths.AddRange(new string[] {
"MyProject/NewFolder"
});
PrivateDependencyModuleNames.AddRange(collection: new string[]
{
"MoviePlayer",
"ProceduralMeshComponent",
"Slate",
"AnimGraphRuntime",
"TraceLog",
"MotionWarping",
"MovieScene",
"DeveloperSettings",
"SQLiteCore",
"SignificanceManager",
"AnimationLocomotionLibraryRuntime",
"MovieSceneTracks",
"PhysicsControl",
"SignalProcessing",
"PoseSearch",
"PhysicsCore"
});
C++ 자동으로 선언된 매크로를 사용하는 법과 위치 정보 (0) | 2024.11.20 |
---|---|
jetbrain 라이더를 활용하자! (0) | 2024.11.19 |
언리얼 C++ 코드 작성시 주의 사항들 정리. (0) | 2024.11.19 |
마지막 패키징에 실패할 때 치명적인 오류가 없었지만, 플러그인 관련 warning 만으로도 패키징을 실패할 수 있음을 알았습니다.
{
"Name": "ModularGameplay",
"Enabled": true
},
"Plugins": [
{
"Name": "PlasticSourceControl",
"Enabled": false
}
]
포인터 개념을 이해하자. (0) | 2024.11.26 |
---|---|
AutogenShaderHeaders.ush 삭제 조심 (0) | 2024.11.25 |
소스코드 빌드 성공 후 각 폴더의 역할을 잘 파악하자. (0) | 2024.11.23 |
visual studio 2022 가 잘못 깔렸을 경우 다시 까는 방법 (0) | 2024.11.18 |
게임개발을 위해 언리얼 소스코드 빌드부터 알고 넘어갑시다. (2) | 2024.11.16 |
외부에서 제작된 코드를 옮기거나 할때에 아래 그림처럼 사전 정의된 매크로를 사용하는 경우가 종종 있을 수 있다.
하지만, 문제는 해당 Class는 어디서 찾았는지 알길이 없다는 것이다..;;
그 이유는 프로젝트 이름을 참조하여 자동으로 생성되는 매크로이기 때문이다.
위치는
개인프로젝트폴더\Intermediate\Build\Win64\x64\UnrealEditor\Development\ 개인프로젝트폴더\
의 Definitions. 개인프로젝트폴더 .h 파일안에 아래처럼 숨겨져 있다.
build.cs 파일의 역할이 중요하다. (0) | 2024.11.22 |
---|---|
jetbrain 라이더를 활용하자! (0) | 2024.11.19 |
언리얼 C++ 코드 작성시 주의 사항들 정리. (0) | 2024.11.19 |
비주얼 스튜디오로 작업하다 보면 매우 엄격하게 컴파일 감시를 하다보니 코드 한줄 잘 못 써도 바로 프로젝트가 터지는 일을 빈번히 겪게되어 아무 작업도 못하는 지경에 이르게 된다..;; 라이더를 사용하여 좀더 릴렉스하게 코드 작업을 진행해 보자.
다운 링크 : Rider: The Cross-Platform .NET IDE from JetBrains
언리얼 프로젝트에서 Source Code 작업을 Rider UProject로 선택해 준다.
라이더의 좋은점.
build.cs 파일의 역할이 중요하다. (0) | 2024.11.22 |
---|---|
C++ 자동으로 선언된 매크로를 사용하는 법과 위치 정보 (0) | 2024.11.20 |
언리얼 C++ 코드 작성시 주의 사항들 정리. (0) | 2024.11.19 |
언리얼 코드 작성은 유니티에서 작업하던거와는 신중함의 무게가 다르다.. 아래 사항들을 유의하며 코드 작성을 해야 한다.
PublicIncludePaths.AddRange(new string[] {
"MyProject/NewFolder"
});
build.cs 파일의 역할이 중요하다. (0) | 2024.11.22 |
---|---|
C++ 자동으로 선언된 매크로를 사용하는 법과 위치 정보 (0) | 2024.11.20 |
jetbrain 라이더를 활용하자! (0) | 2024.11.19 |
Visual Studio가 제거된 후에도 관련 파일과 캐시가 남아있을 수 있습니다. 이를 제거하려면:
주의: 레지스트리를 잘못 수정하면 시스템에 문제가 생길 수 있습니다. 레지스트리를 수정하기 전에 반드시 백업하세요.
Visual Studio 설치 관리자도 제거하려면:
컴퓨터를 재부팅한 뒤 Visual Studio와 관련된 파일이 완전히 삭제되었는지 확인합니다.
이 과정을 통해 Visual Studio를 완전히 제거할 수 있습니다.
이후에 샘플 프로젝트를 c++ 로 만들어 패키징까지 해보고 이상이 없는 지 체크한다.
이후에 패키징이 정상적으로 되고, 실행도 온전히 된다면 기본적인 구성은 어느정도 완료됐다고 보면 된다.
이제 기존 소스코드 받은 5.4.4 의 Setup.bat / GenerateProjectFiles 를 실행한뒤 다시 ue5.sln 파일을 실행한다.
* 이 때 새 프로젝트가 비주얼스튜디오가 열릴 때 신뢰할 수 없는 소스들을 열면 불안하게 프로젝트가 열려 빌드가 되지않을 수 있어 열지 않는것이 좋다.
* 추가 설치가 필요하다고 뜰 때는 추가 설치를 진행해 준다.
포인터 개념을 이해하자. (0) | 2024.11.26 |
---|---|
AutogenShaderHeaders.ush 삭제 조심 (0) | 2024.11.25 |
소스코드 빌드 성공 후 각 폴더의 역할을 잘 파악하자. (0) | 2024.11.23 |
패키징시 플러그인 충돌과 GameFeatureData 를 주의하라. (0) | 2024.11.20 |
게임개발을 위해 언리얼 소스코드 빌드부터 알고 넘어갑시다. (2) | 2024.11.16 |
등등의 이유로 필요하지만, 간단한 1인 게임을 만들기 위해서는 굳이 필요하지 않다고 여겨지고, 최소한 오픈 월드 RPG 이상의 환경 구축이 필요한 게임에서만 하는게 좋지 않을까 싶습니다.
왜냐? 너무 어렵고 진입 장벽이 높음.. 하다가 지쳐버림.
1. Git이랑 연동해서 하는법
요 페이지와 아래 페이지를 통해 GitHub 의 계정을 언리얼과 연동하는 작업을 먼저 진행한다.
언리얼 엔진 소스 코드 다운로드하기 | 언리얼 엔진 5.5 문서 | Epic Developer Community | Epic Developer Community
위 페이지에서 가장 눈여겨 보아야 할 부분. - 아래의 충족여건이 안되면 링크를 타고 가도 404 Page Error 어쩌구 뜨면서 연결이 안된다.
언리얼 개인 계정 페이지에서 아래와 같이 Git Hub 와 연동이 되어야 한다.
잘 모를 땐 GitHub 내 언리얼 엔진 - Unreal Engine 페이지에서 아래의 FAQ를 잘 확인하며 하나씩 잘 따라가는 것도 좋다.
위의 계정연결을 성공하고 나서 소스 코드 브랜치 중 EpicGames/UnrealEngine 으로 들어가 원하는 버전을 선택한다. 나는 5.4.4를 선택했다.
여기서 이제 두가지 방법으로 소스코드 빌드를 할 수 있게 되는데, Git 브렌치를 이용하여 Repository를 복사하여 내 Repsitory를 이용하는 방법 그리고 그냥 Zip 파일을 받아서 내 하드에 풀고 Setup.bat 파일로 하는 방법
첫 째, GitHub 데스크탑을 이용하여 내 Repository를 이용하는 방법
GitHib Desktop 앱을 이용하면 좀더 손쉽게 Repository를 이용할 수 있다.
위 까지 성공하고 Clone Reprository를 실행하면 아래 화면이 뜨면서 언리얼 엔진을 내 Repository에 가져오기 시작한다.
위의 처리가 완료되고 폴더가기를 누르면 내 로컬 컴퓨터에 Engine 브랜치가 다운 받아진것을 확인할 수 있습니다.
두 번째, 그냥 Zip 파일을 받아 압축을 풀고 Setup.bat 파일을 실행한다. 전 그냥 이방식을 추천합니다.
EpicGames/UnrealEngine: Unreal Engine source code 페이지에서 Zip 파일을 받아 압축을 푼다.
어디 드라이브가 됐든 최상위에 압축을 풀고 1. Setup.bat / 2. GenerateProjectFiles 를실행한다. 최상위 폴더에 풀지 않으면 경로에러로 압축이 안풀릴수 있다.
Setup은 30분~1시간, GenerateProjectFiles는 10초면 된다.
언리얼 빌드를 시작하기 전에 VisualStudio 2022를 받고, 아래 해당 되는 것들을 설치합니다.
주소 - Visual Studio 2022 IDE - 소프트웨어 개발자를 위한 프로그래밍 도구
그런 후 UE5.Sln 파일을 실행하고 솔루션 'UE5'에 마우스 오른쪽 버튼을 누르고 솔루션 빌드를 시작합니다.
위 작업은 최종 작업으로서 최소2시간에서 컴퓨터 사양따라 반나절 이상 소모되는 경우도 있으니 주무시기전에 하거나 다른 일을 하고 오시는 것을 추천드립니다.
여기까지 진행후 빌드 성공이 뜨면 나만의 커스텀 엔진을 생성하는데 성공하게 되고, Engine/Binaries/Win64 폴더에서 UnrealEditor를 실행하면 커스텀 엔진이 실행되게 되고, 거기서 프로젝트를 새로 만들면 나만의 엔진에서 나만의 게임을 만들수 있게 됩니다.
추가설치가 뜰땐 시키는데로 하는게 좋습니다.
문제점 - 소스코드 완료 후 오류가 많을 경우 버전들을 픽스하여 다시 설치한다.
비주얼 스튜디오 추가 구성과 도움이 필요할 땐 아래사이트를 참고하면 도움이 됩니다.
언리얼 엔진용 Visual Studio Code 구성 | 언리얼 엔진 5.5 문서 | Epic Developer Community | Epic Developer Community
포인터 개념을 이해하자. (0) | 2024.11.26 |
---|---|
AutogenShaderHeaders.ush 삭제 조심 (0) | 2024.11.25 |
소스코드 빌드 성공 후 각 폴더의 역할을 잘 파악하자. (0) | 2024.11.23 |
패키징시 플러그인 충돌과 GameFeatureData 를 주의하라. (0) | 2024.11.20 |
visual studio 2022 가 잘못 깔렸을 경우 다시 까는 방법 (0) | 2024.11.18 |
ALC(Advanced Locomotion Component)의 오리지날은 Unarmed 에서만 3인칭 뷰를 지원하고, Weapon을 들면 1인칭뷰로 강제 전환되다보니 RPG 게임에 활용하는데에 있어 다소 아쉬움이 있습니다.
해당 페이지에서는 오리지날에서 제공하는 방식의 무기 교체 방식이 아닌 3rd 뷰에서 무기 교체가 되도록 설계된 것을 소개하여 RPG게임에 참고할 수 있도록 가이드 하도록 하겠습니다.
작동 방식 개요
Advanced Locomotion Component - 개인 개발 프로젝트 (0) | 2024.06.04 |
---|---|
Advanced Locomotion Component 의 부족한 기능 추가 개발 (0) | 2024.06.04 |
Advanced Locomotion Component (UE5) 가이드 - 5 ( Unarmed / Anim Curve / Anim Notify) (0) | 2024.05.28 |
Advanced Locomotion Component (UE5) 가이드 - 4 ( Unarmed / Anim Blueprint ) (0) | 2024.05.24 |
Advanced Locomotion Component (UE5) 가이드 - 3 ( Unarmed / CT_Cmpt_Locomotion ) (0) | 2024.05.24 |
어드벤스드 로코모션 컴포넌트에서 가장 중요한 플러그인인 'Animation Locomotion Library' 의 기능을 적극적으로 활용해서 Start 모션과 Stop 모션을 구현하고 있습니다.
위 기능을 사용하는 스테이트를 자세히 확인하기 위해서는 아래 포스팅의 'Start 스테이트' 와 'Stop 스테이트' 부분을 보면 더 자세히 확인할 수 있다.
https://tartist.tistory.com/177
그래서 결론적으로 캐릭터의 각방향의 Start 모션은 아래의 다섯개이며(뛰기만, 걷기포함하면 10개) 에서 각 모션별로 필요한 커브는 Distance / RemainingTurnYaw / TurnYawWeight 세가지이다.(정면Start는 회전하지 않으므로 Distance 만)
각각의 커브가 없을경우에 어떻게 작동하게 되는지 확인해 봅시다.
Advanced Locomotion Component - 개인 개발 프로젝트 (0) | 2024.06.04 |
---|---|
Advanced Locomotion Component 의 부족한 기능 추가 개발 (0) | 2024.06.04 |
Advanced Locomotion Component (UE5) 가이드 - 4 ( Unarmed / Anim Blueprint ) (0) | 2024.05.24 |
Advanced Locomotion Component (UE5) 가이드 - 3 ( Unarmed / CT_Cmpt_Locomotion ) (0) | 2024.05.24 |
Advanced Locomotion Component (UE5) 가이드 - 2 ( Unarmed / 캐릭터 BP) (0) | 2024.05.23 |
기본적으로 Ct_Cmpt_Locomotion 에서 보내주는 이벤트 정보를 바인딩하여 Data Table에서 가장 적절한 모션을 찾아 뿌려주는 기능에 초점이 맞춰져 있습니다.
이벤트 내용은 이전 페이지를 참고하여 Ct_Cmpt_Locomotion 에서 보내주는 이벤트 디스패처 내용을 참고하여 반복적인 내용은 줄이도록 하겠습니다.
ExtendedPose는 무기를 들었을 때나 TurnInPlace등에서 사용되는 모션에 사용되는 추가 포즈 처리라 UnArmed 에서는 사용되지 않아서 없애도 문제가 발생하지 않음.
start 스테이트에 들어오는 조건
cycle 스테이트에서는 루프모션이 잘 처리하는데 초점이 맞춰져 있다. 해당 스테이트에도 불필요한 부분을 걷어내고 가이드를 진행해 가겠습니다.
점프의 시작 / 고점과 저점 / 떨어짐 / 착지 별로 스테이트가 돌아가게 됩니다.
Advanced Locomotion Component 의 부족한 기능 추가 개발 (0) | 2024.06.04 |
---|---|
Advanced Locomotion Component (UE5) 가이드 - 5 ( Unarmed / Anim Curve / Anim Notify) (0) | 2024.05.28 |
Advanced Locomotion Component (UE5) 가이드 - 3 ( Unarmed / CT_Cmpt_Locomotion ) (0) | 2024.05.24 |
Advanced Locomotion Component (UE5) 가이드 - 2 ( Unarmed / 캐릭터 BP) (0) | 2024.05.23 |
Advanced Locomotion Component (UE5) 가이드 - 1 (구조 파악) (0) | 2024.05.23 |
ALC(Advanced Locomotion Component) 에서 가장 중요한 기능을 하는 부분이 액터컴포넌트 블루프린트인 CT_Cmpt_Locomotion 입니다. 이 블루프린트에서 RPC( Remote Procedure Call(원격 프로시저 호출) )까지 사용하면서 데이터 통신을 하도록 설계되어 있고, 모션의 최종 결정을 하는데 있어서 중요한 정보들을 결정 짓게 합니다. 따라서 여기서 결정되는 모든 정보는 현재 플레이 중 메인 Pawn의 캐릭터 BP / 애님 BP와도 모두 공유하게 됩니다.
RPC에서 설정된 변수들은 데이터 테이블에 이미 등록되어 있는 정보들을 캐릭터의 실제데이터로 만들어주는 역할을 하게 됩니다.
다만 CT_Cmpt_Locomotion에도 역시나 너무나 많은 기능들이 있기 때문에, Unarmed 모드 주요 기능 처리 부분만 먼저 다루도록 하겠습니다.
Ct_Cmpt_Locomotion에서 Unarmed 모드를 작동하는데 필요한 이벤트는 위 정보만 있으면 됩니다. 나머지 이벤트 디스패처 내용들은 Unarmed가 아닌 다른 무기와 다른 로테이션 모드등에서 필요한 정보들이라 Unarmed에서는 필요하지 않은 정보들입니다. 다음 포스팅에서는 Anim Blueprint 작동 내용에 대해서 가이드해 드리도록 하겠습니다.
Advanced Locomotion Component (UE5) 가이드 - 5 ( Unarmed / Anim Curve / Anim Notify) (0) | 2024.05.28 |
---|---|
Advanced Locomotion Component (UE5) 가이드 - 4 ( Unarmed / Anim Blueprint ) (0) | 2024.05.24 |
Advanced Locomotion Component (UE5) 가이드 - 2 ( Unarmed / 캐릭터 BP) (0) | 2024.05.23 |
Advanced Locomotion Component (UE5) 가이드 - 1 (구조 파악) (0) | 2024.05.23 |
Advanced Locomotion V4 + RootMotion (직접 제작한 로코모션) (0) | 2024.05.22 |