본문 바로가기

전체 글

(331)          글쓰기    
Skeleton Transform 본 변형 마우스를 드래그하면 캐릭터의 허리가 휘도록 해보겠다. 우선 BP_ThirdPersonCharacter를 BP_TPC로 카피한다. ABP_Many도 ABP_MannySkeletonRotate로 카피한다 BP_TPC의 AnimClass를 ABP_MannySkeletonRotate로 지정한다. 게임모드오버라이드에서 BP_TPC를 지정해준다. Play시 BP_TPC가 나타난다. BP_TPC에 roll과 pitch 변수를 float 타입으로 만든다. EventGraph의 Camera Input Block뒤에 Control Rotation의 Pitch와 Yaw를 저장할 Set Pitch Set Roll을 추가해준다. ABP_MannySkeletonRotate에 BeginPlay Event를 오버라이드하고 CastT..
Vehicle AI in UE5 1/6 https://www.youtube.com/watch?v=_RQuv0_pWFs 비히클 프로젝트를 만들고 컨텐츠밑에 AI 폴더를 만들자 AIController를 부모로하는 블루프린트를 만들자 이름은 AIC_VehicleAI GetControlledPawn을 추가하고 ReturnValue를 변수로 승격해주고 이름을 ControlledVehicle로 바꿔준다. Blueprint Interface를 만들고 이름을 BPI_isVehicle로 한다. 다음 4개의 펑션을 만들어 놓는다. 인터페이스는 이름만 들어어놓고 구현은 해당 클래스에서 한다. 컨텐츠브라우저의 VehicleAdvPawn을 연다. 인터페이스를 사용하기 위해 ClassSettings로 가 BPI_isVehicle을 추가해준다. 그럼 왼쪽 MyBluep..
Behavior Tree EQS - Unreal Document https://dev.epicgames.com/documentation/ko-kr/unreal-engine/environment-query-system-quick-start-in-unreal-engine 언리얼 엔진의 인바이런먼트 쿼리 시스템 퀵스타트 가이드 인바이런먼트 쿼리 시스템 퀵스타트 가이드는 EQS 및 AI로 작업하는 데 필요한 시스템과 툴을 빠르게 습득하도록 지원합니다. dev.epicgames.com 인바이런먼트 쿼리 시스템 퀵스타트 가이드 도큐멘터리 대로 따라 해봤으나 공격시 방향을 틀고 움직이지 않았다. BlackBoard에 Attack이라는 bool 변수를 추가혀여 접근시 Attack을 true로 해주고 공격을 하게 했고 그렇지 않을경우 false로해서 Move Input Positio..
designerd.tistory https://designerd.tistory.com/category/%E2%AD%90%20Unreal%20Engine '⭐ Unreal Engine' 카테고리의 글 목록 ... designerd.tistory.com
카메라시점변환 화면변환 https://blog.naver.com/chvj7567/222740993834 언리얼(Unreal) - 화면 변환(카메라, 캐릭터 변환) 1. 3인칭 템플릿으로 프로젝트를 생성한다. 2. 키 매핑 카메라 변환과 캐릭터 변환을 할 키를 매핑한다. 3.... blog.naver.com
언리얼개발 열정카페인 https://blog.naver.com/sjyfantasy/222364613019 언리얼 엔진 - 플레이어의 카메라 시점 변환 생각보다 카메라 컴포넌트로 제어하는 방법이 없어서 조금 오래걸렸다. 본래는 이것보다 더 많은 기... blog.naver.com
P470 IsPawnControlled()함수 - 전부 controlledPawn이 됨 void AABCharacter::BeginPlay() { // Changed in 4.21. copied from PostInitializeComponents() Super::BeginPlay(); if (!IsPawnControlled()) { ABLOG(Warning, TEXT("IsNotPawnControlled %s"),*GetName()); auto DefaultSetting = GetDefault(); int32 RandIndex = FMath::RandRange(0, DefaultSetting->CharacterAssets.Num() - 1); CharacterAssetToLoad = DefaultSetting->CharacterAssets[RandIndex]; auto ABGameInst..
이득우 언리얼 4.52이상 에러수정하기 https://github.com/smarthug/UE4-CPP-Book CHAPTER 6 203p ABCharacter.cpp Tick() From SpringArm->RelativeRotation = FMath::RInterpTo(SpringArm->GetRelativeRotation(), ArmRotationTo, DeltaTime, ArmRotationSpeed) To SpringArm->SetRelativeRotation(FMath::RInterpTo(SpringArm->GetRelativeRotation(), ArmRotationTo, DeltaTime, ArmRotationSpeed)); 204p ABCharacter.cpp ViewChange() From GetController()->Se..
비헤이버트리 AI Perception 비헤이비어 트리 퀵 스타트 가이드 에서는 플레이어를 보고 반응하여 추격하는 적 AI를 구성하는 방법을 학습합니다. 아래 예시 영상에서 볼 수 있듯이, 플레이어가 시야에서 사라지면 AI는 몇 초 후(원하는 대로 조정 가능) 추격을 포기하고 플레이어를 다시 발견할 때까지 주변을 랜덤하게 배회합니다. 가이드에 따라 학습을 마치면 다음과 같은 시스템을 이해할 수 있습니다. 블루프린트 비주얼 스크립팅(Blueprint Visual Scripting) AI 컨트롤러(AI Controller) 블랙보드(Blackboard) 비헤이비어 트리 비헤이비어 트리 서비스(Behavior Tree Service) 비헤이비어 트리 데코레이터(Behavior Tree Decorator) 비헤이비어 트리 태스크(Behavior Tr..
이득우 데모파일 버그및 빌드 방법 Resorce>Chapter13> ArennaBattleSetting폴더를 현재의 프로젝트 Source폴더로 옮긴다. ArenaBattle.Target.cs public class ArenaBattleTarget : TargetRules { public ArenaBattleTarget(TargetInfo Target) : base(Target) { ... ExtraModuleNames.AddRange( new string[] { "ArenaBattle", "ArenaBattleSetting" } ); } } ArenaBattleEditor.Target.cs public class ArenaBattleEditorTarget : TargetRules { public ArenaBattleEditorTarget..
프로젝트 설정 1. 프로젝트 설정 1.1. 소스 파일 정리 언리얼 소스 코드 구조 Classes : 언리얼 오브젝트 관련 헤더 Public : 외부에 공개하는 선언 파일 Private : 외부에 공개하지 않는 정의 파일 소스 코드 폴더에 Public과 Private 폴더를 만들어 .h 파일과 .cpp 파일을 옮겨보자. 솔루션을 재생성하면 프로젝트 구성이 바뀐 것을 확인할 수 있다. Build.cs이외에는 폴더에 다 들어간다. *.Target.cs : 게임 빌드와 에디터 빌드 설정 지정 1.2. 모듈 추가 주 게임 모듈 외에 다른 모듈을 게임 프로젝트에 추가하고 로직을 분리해 관리할 수 있다. 단, 추가 모듈은 자동으로 생성되지 않으므로 필요한 요소를 직접 추가해야 한다. 모듈 폴더와 빌드 설정 파일: 모듈 폴더와 모듈..
네비게이션 NPC공격추가하 ● NPC가 정찰하다가 플레이어 발견 시, 플레이어를 추격하는 기능은 발견할 때 플레이어의 정보를 블랙보드에 저장하도록 Object 타입으로 변수를 생성하면 된다.​ Object 타입에는 베이스 클래스(Base Class)를 지정할 수 있는데, 이때, 기반 클래스를 ABCharacter로 지정하면 된다. ​ ● NPC의 비헤이비어 트리의 행동 패턴은 플레이어를 발견 했는지 / 못했는 지에 따라 추격과 정찰로 나누어진다. 추격 / 정찰 중 하나의 상태를 선택하여 행동하므로, 시퀀스가 아닌 셀렉터(Selector) 컴포짓을 사용하여 로직을 구성해야한다. 두 상태 중 추격을 더 우선순위를 높게하고, 추격 상태가 되면 블랙보드의 Target 오브젝트를 향해 이동하도록 한다. ​ ● 다음으로, 정찰하다가 플레이어..