Merry(29)
-
200530 Detail Layout 커스텀
TIL 인데 드문드문 글이 작성되어 아쉽긴 하지만, 분량채우기로 간략하게만 타이틀만 적기엔 의미가 부족해 보여서 고민이다. 지금보다는 더 자주 기록하는 습관을 가져야 할 것 같다. 디테일 레이아웃을 커스텀하며 알게된 정보들을 의식의 흐름대로 정리 ! 1. Layout 의 구성요소들은, PropertyHandle 단위로 접근한다. 구성요소는 class, struct 들의 멤버변수들이라고 생각하면 된다. PropertyHandle 이 텍스트파일의 fp 로 문자들에 접근하는 느낌이다. IPropertyHandle 이 Base Interface 이다. 구성요소 타입에 따라 Handle Interface 는 다형성을 가진다. IPropertyHandleArray IPropertyHandleSet IProperty..
2020.05.30 -
Blueprint 에서 지원하는 UPROPERTY type
처음 이 이슈를 인지했던건 Array 컨테이너에 TWeakObjectPtr 을 사용했을 때 였던 것 같다. 특정 멤버변수를 UPROPERTY 지정자로 마킹해서 Blueprint 로 노출시키고자 할 때, 멤버변수의 타입이 Blueprint 에서 지원하는 UPROPERTY 타입이 아니면, UHT Parser 단에서 컴파일 에러를 내게끔 되어있다. 타입 바꾸는 비용은 대부분 크지 않기 때문에, 큰 일은 아니겠지만서도 신나게 코딩했던 시간들이 아깝게 느껴졌던 것 또한 사실이였다. 그래서 사전에 Blueprint 가 지원하는 UPROPERTY 타입을 알고 있어야겠단 생각이 들어 찾아뒀던 것을 지금에서야 기록해둔다. 언리얼 문서는 찾아보았는데 따로 없었던 걸로 기억한다. 코드이기 때문에 엔진 버전이 바뀌면 언제든지..
2020.05.18 -
UE4 GitHub 으로 설치하기
언리얼 가이드 문서대로 진행했다. https://docs.unrealengine.com/ko/GettingStarted/DownloadingUnrealEngine/index.html 언리얼 엔진 소스 코드 내려받기 소스 코드 저장소에 접속하여 언리얼 엔진 최신 빌드를 다운로드하는 법에 대한 단계별 안내입니다. docs.unrealengine.com 많은 브랜치가 있는데, 가장 안정적이고 지속적으로 최신버전을 따라 갈 수 있도록 release 브랜치로 설치했다. 1. 가이드 페이지에서 안내하는 Github for Windows 를 다운받아 보긴 했지만, git bash 숙련도도 높힐겸 git command 를 통해서 설치를 진행했다. https://help.github.com/en/github/gettin..
2020.05.11 -
200325 UE4 애니메이션 에셋 브라우저 Column 추가
1. 애니메이션 에디터의 에셋 브라우저 커스텀 애니메이션 에셋 브라우저 ( 이하 에셋 브라우저 )에는 딱 두 가지 Column 만 노출되게끔 되어있다. 그 두 가지는 에셋명, 에셋경로 이다. ( 주석으로 친절히 써져있다. 우린 이름이랑 경로 빼곤 다 숨길꺼야 ) 하지만, UPROERTY() 중에서, AssetRegistrySearchable 타입이면 에셋 브라우저 Column 으로 추가되는 것이 디폴트다. 그래서 이미 엔진코드에서 정의된 프로퍼티들은 모두 숨겨지도록 한딴함땀 목록을 구성해서 에셋 이름,경로만 노출되게 하고 있다. AssetRegistrySearchable ? 언리얼은 에셋을 모두 로드하면 부하가 심하니, 에셋 관리에 필요한 최소한의 데이터만 에디터가 실행시점에 메모리에 올려둔다. 이 데이..
2020.03.26 -
200324 UE4 ( 애니메이션 에디터 커스텀 삽질 등 )
1. 애니메이션 에디터의 프리뷰 스켈레탈메시에 재생 중인 AnimationAsset 의 프로퍼티값에 따라 특정 Component 를 붙히려고 시도 -발생 이슈 처음 열었던 애니메이션 에셋 에서는 프로퍼티값 변경도 잘 적용되고 문제없는데, 애니메이션 에셋만 바꾸면 붙혔던 컴퍼넌트가 안보임. -이슈 원인 애니메이션 에셋이 바뀔 때, PreviewMesh 쪽에 Preview 를 목적으로 Attach 시켜두었던 컴퍼넌트를 제외하고는 모두 Detatch 시키고 Destory 까지 시킴. 생각해보면 애님노티파이에 따라 파티클이나 기타 컴퍼넌트들이 PreviewMesh 에 Attach 될 것이고, 애니메이션이 바뀌면 이전 애니메이션에 Attach 시켜뒀던 것들을 모두 클리어 시키는게 당연한데.. 오만가지 시나리오로 ..
2020.03.25 -
UObject 의 Outer
언리얼 오브젝트 ( 이하 UObject ) 를 생성 할 때 마주치는 것 중 하나가 Outer 라는 개념인데, 언리얼의 Outer 설명문구를 봐도 이해가 잘 안되었습니다. Outer 란? 생성중인 UObject 에 대한 Outer 로 설정할 UObject Outer 의 사전적의미도 이해하기 좀 난해했습니다. 처음엔 어림잡아 '이 UObject 를 생성 시킨 녀석' 이라고 감이 올랑말랑 했던 기억이 있습니다. 그래서 샘플코드나 여러 책에서 this 포인터를 넣어주면 된다고 하지만, nullptr 을 지정하는 경우도 있고 무작정 this 를 넣기에는 영 찜찜했습니다. UObject 생성 할 때 말고도 언리얼에서 제공하는 함수 중에 Outer 를 인자로 받는 것들이 많은데, 이 때도 this 를 넣는게 맞나? ..
2020.03.23