일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 스마트포인터
- 애셋로드
- enumasByue
- 프로그래머스
- UML관련
- dataasset
- map
- 선택정렬
- C++최적화
- 자료구조
- 크리티컬섹션
- 정렬알고리즘
- C++
- 람다사용정렬
- unorder_map
- BFS
- UE_LOG
- 알고리즘
- moreeffectiveC++
- 강참조
- 델리게이트
- 데이터애셋
- 언리얼엔진구조체
- UELOG
- 언리얼가비지컬렉터
- 약참조
- stl
- 람다
- 정렬
- UE4 커스텀로그
- Today
- Total
목록델리게이트 (2)
기억을 위한 기록들
블루프린트에 있는 몽타주재생을 C++에서 사용할때 해당 노드 뒤에 있는 On Blend Out 과 On Completed를 C++에서 호출해야한다. 이럴 때 사용한 애님 인스턴스 클래스에 선언되어있는 델리게이트를 사용하면 된다. 언리얼 엔진 AnimInstance.h 47번줄부터 선언되어있는걸 확인할 수있다. 해당 델리게이트를 몽타주 재생한 함수에서 선언과 동시에 바인딩 해주었다. BindUObject로 바인딩 해주고 Montage_SetBlendingOutDelegate 함수와 Montage_SetEndDelegate 함수로 해당 델리게이트와 몽타주를 지정해주면 된다. 그리고 해당 몽타주를 재생하면 지정해준 함수두개에서 몽타주 애니메이션 재생 후 로그가 알맞게 출력된다. BlendOut이 Complet..
델리게이트(delegate)라는 단어를 사전에서 검색해보면 집단의 의사를 대표하는 대표자라고 나온다. 하지만 컴퓨터 프로그래밍에서 델리게이트는 함수를 안전하게 호출할 수 있는 기능을 의미한다. (먹는 사과도 애플이고 아이폰 만드는 회사도 애플인 그런 느낌...?) 사실 C++ 언어에서는 델리게이트라는 개념이 존재하지 않는다. 델리게이트는 C++ 의 다음 세대 언어인 C#에서 ( 정확히는 CLI 플랫폼 기반 ) 선보인 개념으로, 콜백 함수를 등록하기 위해 C 혹은 C++에서 사용한 함수 포인터가 문법이 복잡하고, 위험한 방식이었다면, 델리게이트는 간편한 문법과 안전성을 갖춰 콜백 함수를 호출하기 위해 고안. 델리게이트의 간편함과 안정성 외에도 이전 방식과 다른 큰 특징은 사전적 의미대로 집단의 의사를 대표..