일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 크리티컬섹션
- UE_LOG
- 알고리즘
- BFS
- 선택정렬
- stl
- 델리게이트
- 자료구조
- 정렬
- 언리얼가비지컬렉터
- 정렬알고리즘
- UELOG
- map
- 강참조
- C++최적화
- 프로그래머스
- UML관련
- 람다사용정렬
- C++
- UE4 커스텀로그
- 약참조
- enumasByue
- 스마트포인터
- 애셋로드
- dataasset
- unorder_map
- 데이터애셋
- moreeffectiveC++
- 람다
- 언리얼엔진구조체
- Today
- Total
목록UnrealEngine (81)
기억을 위한 기록들
애니메이션 블루프린트에는 다양한 애니메이션 그래프들이 있다. 원하는 기능을 작동하는 애니메이션 그래프를 만들어보자 AnimGraphNode_Base 클래스를 상속받아 생성해준다. 만들어주게 되면 별 다른 내용은 없다. 우선 추가해줘야 할게 있는데 이 부분은 별도로 만들어서 #include 해줘도 된다. 여기서는 보기 편하게 같은 파일 안에 넣어주겠다. 그것은 바로, FAnimNode_Base 구조체를 상속받는 구조체이다. 간단히 설명하자면, FRunAnimNode는 애니메이션 그래프에서 해당 로직이 실행될 때, 실질적으로 연산되는 부분들이다. AnimGraphNode_Base는 그것들이 애니메이션 블루프린트에서 화면에 표시되도록 도와주는 역할이다. 우선, FRunAnimNode이라는 이름으로 만든 구조체..
- EffectorLocation 을 지정해주는 왼발 오른발 각각 함수 1개씩. - Alpha값을 정해주는 마찬가지로 왼발오른발 각각 함수 1개씩. - 왼발/오른발 관련 변수 각각3개 (EffectorLocatiom/JointTarget/FootAlpah)씩 3개 변수는 애니메이션 그래프에서 사용 된다. AnimInstance CPP 부분 크게 복잡한거 없다. 다만 생성자 부분 JointTarget 변수에 각각 지정된 Vector값을 넣어준다. 그리고 EffectorLocation 에는 새로 들어오는 값, 캐릭터 클래스에서 넣어주는 값으로 초기화해준다. Alpha 값도 마찬가지 캐릭터 클래스 Tick 함수 중 넣어주는것을 확인할 수 있다. 이제 애니메이션 그래프를 확인해보자 위에서 설정 해준, Effec..
https://www.youtube.com/watch?v=jJNXhmMyk-U 우선 글쓰기에 앞서 해당 영상을 학습하며, 작성한 글입니다. (해당 영상을 보면 진행 순서가 나옵니다. 해당 영상을 다 본 후에 작성하는 글입니다.) 우선 기본적으로 기존 3인칭 캐릭터 클래스와 애님인스턴스 클래스를 추가해준다. 캐릭터 클래스 부분 헤더파일 : 6개의 변수를 추가 해주었다. 왼발/오른발 BoneName을 가져오는 변수 2개, - LeftFootBoneName/RightFootBoneName 왼발/오른발 각각 본의 실제 위치를 갖고 있는 변수 , - LeftFootBoneRelativeLocation/RightFootBoneRelativeLocation 캐릭터 클래스의 상속 되어 있는 캐릭터 메시를 조정해주기 위..
UE4에서의 Lerp(float형) 해당 식은 간단하다. 예를들어 3에서 시작하여 18에 끝나는 숫자가 있다고 치자 (A=3,B=18) 우선 B-A를 하면 해당 함수식으로 가면 18(B)에서 3(A)을 빼면 15가 나온다. 그리고 찾을 지점의 퍼센트로 구한다고 가정 하고 70%를 구한다고 하면, 0.7로 바꿔주고(식에서의 V값) 15 X 0.7 =10.5(위에서의 V*(B-A))가 되고 시작지점(3, 즉 A)을 더 해주면(V*(B-A)+A) 13.5가 된다 즉, 위의 선의 70퍼센트 지점의 값은 13.5가 된다. 이런식으로 해당 선형보간은 A에서 B 두개의 값에서 A를 B로 보간한다는것은 두개의 값 사이에 위치한 값을 알려진 값(Alpha)으로 추정하는 것을 의미한다. float 외에도 ue4에는 vec..
다이나믹 델리게이트 특징 - 시리얼 라이즈 가능 (컴파일 할 필요 없이 이름으로 찾기 가능) - 블루프린트에서 사용 가능 - 성능 떨어짐 (모든 직렬화) 델리게이트 1. 멀티캐스트 - 리스너를 여러개 사용 가능 (브로드 캐스트 시 다양한 많은 클래스가 동시 사용) - 반환값이 없음 2. 싱글캐스트 이벤트 - 이벤트에는 리스너가 여러개 있을 수 있다.(멀티캐스트 델리게이트와 같음) - 이벤트에는 반환 값이 없음 - 밖의 클래스에서 브로드캐스트 할수 없음 - 블루프린트에서 작동하지 않음 정하는방법? 이벤트를 설정할지 델리게이트를 설정할지 정한다 ex) DECLARE_EVENT_OneParam(...) ex) DECLERE_DYNAMIC_MULTICAST_DELEGATE_OneParam(...) https:/..
파라곤 캐릭터들을 뒤적여 보던 중 애니메이션 슬롯에 Full Body, Upper Body 등의 용어가 있었다. 간단하게는 Full Body는 전신 애니메이션 Upper Body는 상체 애니메이션 같이 나뉘어 Full Body 애니메이션은 상체가 동작하면서 (ex 하체의 스텝밟기 등) 전신이 다 같이 사용되어야하며, Upper Body는 단순 상체를 이용한 공격, 손짓 등 상체만 행동 하더라더 어색한 점이 없는 애니메이션등을 레이어드 애니메이션(걸으면서 공격하기 등)으로 눠 놓은 것 같다. 이런 부분을 인지하며 스테이트머신을 만들때 슬롯 등 잘 나눠야겠다. https://docs.unrealengine.com/ko/Engine/Animation/AnimHowTo/AdditiveAnimations/inde..
* 쓰기에 앞서 누군가에게 알려주는 글이라기보다는 혼자 공부하며 정리하는 글쪽에 가까우니 해당 글을 100% 믿고 참고하시면 안됩니다. 틀린 부분이 있고 부족한 부분이 있을 수 있습니다. 지적 해주셔도 감사하겠습니다. * 언리얼엔진에서 사용하는 Trace(뜻 : 추적 ) 시스템을 알아보겠습니다. 사실 기본적인건 공식홈페이지 문서에서 잘 정리되어 있습니다. https://docs.unrealengine.com/ko/Engine/Physics/Tracing/Overview/index.html 트레이스 개요 언리얼 엔진 4 의 트레이스 시스템 개요입니다. docs.unrealengine.com BluePrint 우선 먼저 블루프린트 (이하 BP)에서 간단한 Trace 방법으로는 4가지가 있다. (우선 어느 클..
https://docs.unrealengine.com/ko/Platforms/Mobile/Android/SettingAndroidDeviceDevelopment/index.html 개발용 Android 디바이스 준비 UE4 로 개발에 사용할 Android 디바이스를 준비하기 위해 해야 하는 작업을 알아봅니다. docs.unrealengine.com 위 공식 문서내용과 같이 android에 준비를 해줍니다. 해당 설정을 완료하고 usb케이블과 핸드폰을 연결하면 엔진에서 하지만 저 안드로이드 아이콘을 누르면 아래와 같은 경고가 나온다. 해당 문서를 클릭하면 , https://docs.unrealengine.com/ko/Platforms/Mobile/Android/GettingStarted/index.html..
https://www.youtube.com/watch?v=mSRov77hNR4&list=PLZlv_N0_O1gYup-gvJtMsgJqnEB_dGiM4 언리얼엔진에서 제공되는 기초 C++ 강의 Battery Collector(이하 배터리 콜렉터)를 따라하다보면 나타는 문제점들이 발생한다. 그 문제로 배터리 콜렉터를 최근 버전으로 vs로 따라하면 제대로 실행이 되지 않는다.... 그 문제로 강의의 엔진 버전은 4.9버전이고 현재 기준으로 4.21까지(작성일 기준) 나온상태로써의 차이점이 존재하는데, 그 중 하나가 *IWYU(Include-What-You-Use) 이다. 쉽게 설명하자면 기존 구 버전에서는 C++ 프로젝트 생성시 Engine.h 및 UnrealEd.h 등 모든 게임 엔진에 필요한 소스등을 만든..