일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 스마트 포인터
- 암시적 변환
- 오블완
- 영화
- Smart Pointer
- resource management class
- 다형성
- more effective c++
- implicit conversion
- 언리얼
- 메타테이블
- exception
- 비교 함수 객체
- 티스토리챌린지
- Vector
- 게임
- c++
- UE4
- Effective c++
- effective stl
- 반복자
- lua
- 상속
- 영화 리뷰
- 참조자
- reference
- operator new
- virtual function
- 루아
- 예외
- Today
- Total
목록개발/언리얼 엔진 (35)
스토리텔링 개발자
개요 언리얼의 에니메이션 에셋이라고 하면 종류가 다양합니다. 애니메이션 시퀀스, 몽타주, 애님 BP.. 사실 이름만으로는 각자 어떤 역할인지 감을 잡기가 힘듭니다. 그래서 정리해 봤습니다. 상세 애니메이션 시퀀스 왠지 애니메이션이라면 모션을 재생시키는 걸 연상하게 됩니다. 걷기나 달리기 등등의 것들이 있겠죠. 애니메이션 시퀀스가 바로 그런 에셋입니다. 모션 하나에 대한 애니메이션 에셋입니다. 풀어서 설명하면 스켈레탈 메시에 재생할 수 있는 단일 애니메이션 에셋입니다. 외부 3D 모델에서 만든 후 언리얼로 임포트해서 만들어집니다. 애니메이션은 본의 위치, 회전, 스케일 값(즉 트랜스폼)을 매 프레임 조절하는 것에 불과합니다. 즉, 애니메이션 시퀀스 안에 들어가있는 정보들은 이런 종류의 것이 전부입니다. 애..
개요 애님 노티파이의 디테일 패널에는 몽타주 틱 타입이라는 속성이 있습니다. Queued / Branching Point 로 선택 설정할 수 있습니다. 이 두 가지 설정에 따른 차이를 정리해 보겠습니다. 몽타주 틱 타입 몽타주의 틱이 어떻게 동작하는지를 각기 정의한 것입니다. 대기열 방식(Queued) 대기열 방식은 비동기 방식입니다. 즉, 여러가지 외부 요인으로 인해서 순위가 밀린다면 정확히 노티파이가 찍힌 그 시간에 플레이되지 않을 수도 있다는 의미입니다. 정확한 시점을 요하지 않는 보통의 애니메이션 노티파이는 이 기능으로 충분합니다. 분기점 방식(Branching Point) 분기점 방식은 동기식입니다. 대기열 방식과 다르게 정확한 시점이 필요한 기능의 경우 브랜칭 포인트를 사용해야 합니다. 다른 ..
개요 애니메이션 노티파이는 애니메이션과 함께 여러 동작들을 처리하고 싶을 때 사용하는 기능입니다. 아래에서 좀 더 깊게 알아보겠습니다. 애니메이션 노티파이란 애니메이션 시퀀스 특정 지점에서 이벤트를 발생시키는 기능입니다. 일반적으로 연출(이펙트(발자국 소리 등)나 파티클(흙먼지 등)을 스폰)에 사용합니다. 노티파이는 애니메이션 시퀀스의 노티파이 트랙 오른쪽 마우스를 눌러 추가할 수 있습니다. 기본적으로 엔진에서 범용적으로 사용 가능한 노티파이를 여럿 준비해 두었습니다. 또한 커스텀 노티파이를 생성하여 자신이 원하는 기능을 구현할 수도 있습니다. 애니메이션 노티파이 스테이트란 애니메이션 노티파이의 종류는 두 가지입니다. 애니메이션 노티파이 애니메이션 노티파이 스테이트 애니메이션 노티파이가 특정 시점(점)을..
개요 블루프린트에서는 로직을 한 덩어리로 묶을 수 있도록 하는 두 가지 방법을 제공합니다. 네, 매크로와 함수 입니다. 이 둘의 차이점은 어떻게 될까요? 매크로 vs 함수 이 매크로라는 단어에서는 친숙함에 물씬 느껴집니다. 네. C++에서 수없이 언급되는 개념이죠. 그저 아무 이유 없이 이름이 같을 리는 없을테고, 역시나 이 둘은 같은 개념입니다. 즉, BP의 매크로와 함수 는 C++의 매크로와 함수 대응 관계와 흡사합니다. 먼저 C++의 매크로와 함수를 비교해 보도록 합시다. C++ 함수 코드를 사용 단위로 구분하자면, 함수는 코드 뭉치의 최소 단위라고 할 수 있습니다. C++ 매크로 C++의 매크로는 컴파일 시 특정 코드(들)로 치환해줍니다. 코드 뭉치에 별명을 붙인다고 볼 수 있습니다. 단지 치환해..
개요 모프 타겟에 대해 알아보겠습니다. 모프 타겟 변형된 메시의 버텍스 위치들의 정보들 묶음을 뜻합니다. 주로 캐릭터의 표정을 표현하는 용도로 사용합니다. 정확히는 모프 타겟이란 3D Max에서 제공하는 기능의 이름입니다.(마야에서는 Blend Shape) 애니메이션 시퀀스 내에 fbx 파일의 모프 타겟을 임포트할 수 있으며, 가져온 모프 타겟을 블랜딩해서 자연스러운 표정을 연출할 수 있습니다. 임포트 fbx 파일로부터 모프 타겟을 임포트할 때는 다음 항목을 체크해 줍니다. 모프 타겟을 포함한 임포트 스켈레탈 메시의 이름은 기본적으로 루트 본의 이름으로 설정됩니다. 메시의 모프 타겟 프리뷰어를 통해 모프 타겟 값 설정 시 효과를 미리 확인해 볼 수 있습니다.
개요 언리얼 엔진에선 여러 에셋들로 사운드를 조합할 수 있습니다. 각 사운드 에셋에 대해 정리해 보았습니다. 사운드 에셋 종류 사운드 큐(Sound Cue) 사운드 큐는 사운드에서 가장 기본적인 에셋입니다. 사운드 웨이브(Sound Wave : 사운드 큐 에디터에 임포트된 오디오 파일)들을 다양한 노드를 통해 조작한 결과물 입니다. 실 사운드라고 봐도 무방합니다. 사운드 어테뉴에이션(Sound Attenuation) 감쇠(attenuation)를 담당하는 에셋입니다. 플레이어와의 거리에 따라 볼륨을 조절하는 프로퍼티 값들을 포함하고 있습니다. 반향 이펙트(Reverb Effect) 리버브 효과를 담당하는 에셋입니다. 리버브란 다른 부분에서 반사되어 울리는 소리를 뜻합니다. 예컨대 동굴에서 울리는 등의 효..
개요 DynamicRHI 헤더에는 해상도 등 화면에 대한 정보를 알아오는 인터페이스들이 모여 있습니다. 플랫폼 별 타겟 RHI를 프로젝트 설정 내부에서 설정할 수 있습니다. 여기서 RHI는 어떤 의미일까요. RHI란 플랫폼 별로 그래픽 API가 다를 수 있습니다. (윈도우에서는 DirectX, 모바일에서는 OpenGL) 그리고 각 API 별로 기능과 사용 방법(인터페이스)이 다릅니다. 하나의 사용법으로 각 API를 모두 통제하려면 그 API 모두를 아우르는 상위 인터페이스가 필요합니다. 그걸 뜻하는 것이 바로 RHI입니다. RHI는 그래픽 API들을 래핑한 공용 C++ 인터페이스입니다. 피쳐 레벨 플랫폼 별 그래픽 API는 성능 등의 이유로 지원하는 수준이 다를 수 있습니다. 그래서 RHI는 그 수준에 ..
개요파생 데이터 캐시란 무엇일까요? 에디터에서 새로운 레벨을 열고 실행할 때마다 '파생 데이터 캐시를 생성한다'는 메시지가 뜨곤 하는 게 퍼뜩 생각나는데요.그렇다면 에셋을 사용하기 위해 쌓이는 일종의 캐시를 의미하는 것일까요? 파생 데이터와 파생 데이터 캐시(DDC)파생 데이터(Derived Data)는 에셋을 사용하기 위해 생성되는 부가적인 데이터들입니다. 사실, 언리얼 에셋 사용을 위해선 이 파생 데이터가 반드시 필요합니다.쉐이더의 경우를 예로 들어보겠습니다. 쉐이더의 경우 렌더링하려면 쉐이더 컴파일이 필요합니다.그 컴파일 과정 후에 나온 데이터들이 있을 텐데요.그게 바로 파생 데이터입니다. 파생 데이터는 그 크기가 큰데다가, 에셋 변화가 있을 시 언제든 새로 재생성될 수 있습니다.그래서 체크인 ..