SlideShare a Scribd company logo
애니메이션 블루프린트 기초
2019.3.9
데브루키 언리얼 스터디 ACA(박수찬)
http://www.free-powerpoint-templates-design.com
애니메이션 시스템
스켈레탈메시와 스켈레톤
UE4의 애니메이션은 만들어진 애니메이션을 재생하거나, 블렌딩하거나,
애니메이션의 특정 시점에 이벤트를 만들거나, 스테이트 머신 등을 사용해 로직
을 꾸미는 등 다양한 애니메이션 관련 기능을 지원한다.
스켈레톤
스켈레톤이란
캐릭터를 이루는 가상의 뼈대(뼈대를 정의하는 계층 구조)
를 스켈레톤이라 한다. 스켈레톤을 이루는 각각의 구성
요소를 본(Bone)이라 하며 스켈레톤 에셋은 본의 이름과
본끼리 이루는 계층구조의 리스트로 구성되어 있다.
(+ 원본 스켈레탈 메시의 초기 비율 등)
애니메이션 시퀀스
애니메이션 시퀀스란, 스켈레탈 메시에서 재
생할 수 있는 단일 애니메이션 에셋이며, 일
정 시점에서의 스켈레톤의 본의 위치,
회전값, 스케일값 등을 담고 있다.
애니메이션 시퀀스
즉 애니메이션은 특정한 스켈레톤의 시점별
위치값 정보이기 때문에, 스켈레톤을 공유할
수 있다면 다른 캐릭터의 애니메이션도 공유
받아 사용할 수 있다.
스켈레탈 메시
스켈레탈 메시
스켈레탈 메시란, 스켈레톤에 연관시켜서 애니메이션이 가능한 시각적
으로 볼 수 있는 3d 모델링 리소스를 의미한다.
만약 스켈레탈 메시의 구조가 크게 다르지 않거나, 조금 다르더라도 근본
적인 구조가 비슷하다면 스켈레탈 메시가 가진 스켈레톤 에셋은 서로 공
유하여 사용될 수 있다.
이전의 본 구성, 본의 작명방식,본의 계층 정보가 유지된
채로 추가적인 요소를 추가할 경우 스켈레톤 에셋의 공유
(즉 애니메이션의 공유)가 가능하다
본의 계층 정보가 바뀌었으므로 재활용 불가능
애니메이션 블루프린트
애니메이션 블루프린트
캐릭터의 애니메이션을 제어하는 블루프린트
애니메이션 블루프린트
애님 그래프
애니메이션의 로직 설계하여 스켈레탈 메시의 최종 포즈를 구하는데
사용된다. 애님 인스턴스의 값을 가져와 사용할 수 있다.
달리기 애니메이션 예제
파일 – 새로운 C++ 클래스 – 모든 클래스 표시 체크 -AnimInstance 생성
애님 인스턴스 생성
애니메이션 블루프린트 생성
애니메이션 블루프린트 생성
애니메이션 블루프린트
블렌드 노드
애니메이션의 자연스러운 전환을 위해, 애니메이션을 블렌딩 하는데
사용되며 애님 그래프에서 조작할 수 있다. 2가지 이상의 애니메이션
에 가중치나 시간값을 부여하여 애니메이션을 섞거나 전환하는데 사용
된다.
블렌드
2가지 애니메이션을 혼합한다. Alpha를 통해 A와 B 애니메이션의
가중치를 다르게 할 수 있다.
애디티브 블렌드
2가지 애니메이션을 더한다.
달리기(Base) + 재장전(Additive)
걷기(Base) + 탈진(Additive)
장점 : 애니메이션을 조합하여 재활용할 수 있다
단점 : 단순히 더하는 방법이기 때문에 원하는 애니메이션을
얻을 수 있다는 보장이 없다.
애디티브 블렌드
부울 변수로 블렌드 적용
Blend poses by bool
Bool 변수 값을 기준으로 애니메이션을 전환합니다. 블
렌드 시간을 적절히 조절하면 전환을 더욱 자연스럽게
할 수 있습니다.
0.1 이하로 지정 시 즉시 전환되는 것처럼 보입니다.
더욱 정교한 블렌딩이 필요하다면 블렌딩 스페이스를
이용한다.
http://api.unrealengine.com/KOR/Engine/Animation/
Blendspaces/index.html
너무 복잡해질 수 있다
유한 상태 기계(FSM)
상태(state)와 트랜지션, 룰(rule)로 구성되는
기계. 한 번에 하나의 상태만을 가질 수
있으며 전이 조건이 맞으면 다른 상태로 전이
할 수 있다.
스테이트 머신
애니메이션 리타겟
같은 스켈레톤을 공유하는 스켈레탈
메시 끼리는 애니메이션을 공유할
수 있다.
스켈레톤 에셋은 애니메이션을 재생
할 때 원본 스켈레탈 메시에 대응되
는 비율을 기준으로 비율을 정의하
기 때문에 비율이 다른(훨씬 작거나,
훨씬 크거나) 스켈레탈 메시는 재생
시 늘어나거나, 변형될 수 있다.
애니메이션 리타겟
그러므로 사용할 스켈레톤의 비율을 맞춰 주어야 하고, 이 작업을
‘애니메이션 리타기팅‘ 혹은 ‘스켈레톤 리타깃팅’이라고 한다.
애니메이션 리타겟
애니메이션 리타겟
스켈레톤이 다르다면?
다른 스켈레톤을 사용하더라도 애니메이션 리타겟을 적용할
수 있다.
애니메이션 리타겟
스켈레톤이 다르다면?
다른 스켈레톤을 사용하더라도
애니메이션 리타겟을 적용할 수
있다. 단, 이 떄는 ‘릭(Rig)'이라
는 에셋을 사용하여야 한다.
릭
한 스켈레톤에서 다른 스켈레톤으로 정보를 전달할 때 릭 애셋을 경유하여 정보를
전달한다. 그러므로 스켈레톤의 본을 릭의 노드에 셋업 시키는 과정이 필요하며,
이렇게 릭을 적용해 놓으면 다른 스켈레톤 사이에서도 리타게팅을 할 수 있다.
애니메이션 리타게팅
릭
릭
릭
릭
릭
애니메이션 리타게팅
애니메이션 노티파이
애니메이션 시퀀스 도중, 특정 시점에서 이
벤트를 발생시킬 수 있도록 구성할 수 있는
기능.
간단하게는 사운드 재생, 파티클 재생부터
블루프린트와 C++를 통해 다양하게 커스텀
할 수도 있다.
(ex. 걸을 때의 발소리, 흙먼지 등..)
Notify track을 우클릭 -> New notify로 생성
애니메이션 노티파이
스켈레톤(커스텀) 노티파이
스켈레톤 노티파이를 통해 애니메이션 블루프린트 혹은 C++에서 이벤트의
조건으로 활용하거나 여러 기능들을 구현할 수 있다.
블루프린트에서 Add Anim Notify Event 항목으로 가져온다.
c++에서는 AnimNotify_XXXXX(노티파이 이름) 으로 발동할 수 있다.
클로딩 시뮬레이션 노티파이(Clothing Simulatoin Notify)
노티파이를 통해 클로딩 시뮬레이션의 시작, 정지를 제어할 수 있다.
파티클 이펙트 재생
블루프린트를 사용하지 않고, 디테일 패널에서 파티클의 원점 등을 제어
사운드 재생
간단한 사운드를 재생할 수 있으며, 소리원점, 소리의 따라가기 여부 등을
설정할 수 있다.
등등...
애니메이션 노티파이
애니메이션 몽타주
산탄총의 재장전이나 입력에 따른 콤보 공격 등 애니메이션을 제어
할 때 사용된다.
애니메이션 몽타주
신규 추가 -> 애니메이션 -> 애니메이션 몽타주로 생성한다
몽타주를 사용하길 원하는 스켈레톤을 선택
애니메이션 몽타주
그 외의 기능들..
감사합니다.
출처 : 언리얼 엔진 4 문서
http://api.unrealengine.com/KOR/
이득우의 언리얼 C++ 게임개발의 정석

More Related Content

What's hot

【Unite 2018 Tokyo】『CARAVAN STORIES』のアセットバンドル事例
【Unite 2018 Tokyo】『CARAVAN STORIES』のアセットバンドル事例【Unite 2018 Tokyo】『CARAVAN STORIES』のアセットバンドル事例
【Unite 2018 Tokyo】『CARAVAN STORIES』のアセットバンドル事例
UnityTechnologiesJapan002
 
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑MinGeun Park
 
DevRookie 언리얼 에셋과 패키지.pptx
DevRookie 언리얼 에셋과 패키지.pptxDevRookie 언리얼 에셋과 패키지.pptx
DevRookie 언리얼 에셋과 패키지.pptx
MUUMUMUMU
 
Red Hat Update Infrastructure 2.0
Red Hat Update Infrastructure 2.0Red Hat Update Infrastructure 2.0
Red Hat Update Infrastructure 2.0Etsuji Nakai
 
出張ヒストリア ブループリントを書くにあたって大切なこと
出張ヒストリア ブループリントを書くにあたって大切なこと出張ヒストリア ブループリントを書くにあたって大切なこと
出張ヒストリア ブループリントを書くにあたって大切なこと
historia_Inc
 
Hyper-V ネットワークの基本
Hyper-V ネットワークの基本Hyper-V ネットワークの基本
Hyper-V ネットワークの基本
Syuichi Murashima
 
Async await完全に理解した
Async await完全に理解したAsync await完全に理解した
Async await完全に理解した
asuka y
 
軽い! 速い! サーバを選ばない! Ruby製CMS "nanoc"
軽い! 速い! サーバを選ばない! Ruby製CMS "nanoc"軽い! 速い! サーバを選ばない! Ruby製CMS "nanoc"
軽い! 速い! サーバを選ばない! Ruby製CMS "nanoc"
Go Maeda
 
FIWARE Connecting to IoT
FIWARE Connecting to IoTFIWARE Connecting to IoT
FIWARE Connecting to IoT
fisuda
 
AWS Black Belt Tech シリーズ 2015 AWS Device Farm
AWS Black Belt Tech シリーズ 2015 AWS Device FarmAWS Black Belt Tech シリーズ 2015 AWS Device Farm
AWS Black Belt Tech シリーズ 2015 AWS Device Farm
Amazon Web Services Japan
 
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormationAWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormation
Amazon Web Services Japan
 
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
Unity Technologies Japan K.K.
 
Day 1 with Amazon Web Services - AWSご利用開始時に最低限おさえておきたい10のこと
Day 1 with Amazon Web Services - AWSご利用開始時に最低限おさえておきたい10のことDay 1 with Amazon Web Services - AWSご利用開始時に最低限おさえておきたい10のこと
Day 1 with Amazon Web Services - AWSご利用開始時に最低限おさえておきたい10のこと
Amazon Web Services Japan
 
【Unite Tokyo 2018 Training Day】ProBuilderで学ぶレベルデザイン ProBuilderをマスターしよう!
【Unite Tokyo 2018 Training Day】ProBuilderで学ぶレベルデザイン ProBuilderをマスターしよう!【Unite Tokyo 2018 Training Day】ProBuilderで学ぶレベルデザイン ProBuilderをマスターしよう!
【Unite Tokyo 2018 Training Day】ProBuilderで学ぶレベルデザイン ProBuilderをマスターしよう!
Unity Technologies Japan K.K.
 
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
UnityTechnologiesJapan002
 
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
 
今さら聞けない HANAのハナシの基本のほ
今さら聞けない HANAのハナシの基本のほ今さら聞けない HANAのハナシの基本のほ
今さら聞けない HANAのハナシの基本のほ
Koji Shinkubo
 
はじめての vSRX on AWS
はじめての vSRX on AWSはじめての vSRX on AWS
はじめての vSRX on AWS
Juniper Networks (日本)
 
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
Amazon Web Services Japan
 
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
동석 김
 

What's hot (20)

【Unite 2018 Tokyo】『CARAVAN STORIES』のアセットバンドル事例
【Unite 2018 Tokyo】『CARAVAN STORIES』のアセットバンドル事例【Unite 2018 Tokyo】『CARAVAN STORIES』のアセットバンドル事例
【Unite 2018 Tokyo】『CARAVAN STORIES』のアセットバンドル事例
 
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
 
DevRookie 언리얼 에셋과 패키지.pptx
DevRookie 언리얼 에셋과 패키지.pptxDevRookie 언리얼 에셋과 패키지.pptx
DevRookie 언리얼 에셋과 패키지.pptx
 
Red Hat Update Infrastructure 2.0
Red Hat Update Infrastructure 2.0Red Hat Update Infrastructure 2.0
Red Hat Update Infrastructure 2.0
 
出張ヒストリア ブループリントを書くにあたって大切なこと
出張ヒストリア ブループリントを書くにあたって大切なこと出張ヒストリア ブループリントを書くにあたって大切なこと
出張ヒストリア ブループリントを書くにあたって大切なこと
 
Hyper-V ネットワークの基本
Hyper-V ネットワークの基本Hyper-V ネットワークの基本
Hyper-V ネットワークの基本
 
Async await完全に理解した
Async await完全に理解したAsync await完全に理解した
Async await完全に理解した
 
軽い! 速い! サーバを選ばない! Ruby製CMS "nanoc"
軽い! 速い! サーバを選ばない! Ruby製CMS "nanoc"軽い! 速い! サーバを選ばない! Ruby製CMS "nanoc"
軽い! 速い! サーバを選ばない! Ruby製CMS "nanoc"
 
FIWARE Connecting to IoT
FIWARE Connecting to IoTFIWARE Connecting to IoT
FIWARE Connecting to IoT
 
AWS Black Belt Tech シリーズ 2015 AWS Device Farm
AWS Black Belt Tech シリーズ 2015 AWS Device FarmAWS Black Belt Tech シリーズ 2015 AWS Device Farm
AWS Black Belt Tech シリーズ 2015 AWS Device Farm
 
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormationAWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormation
 
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
 
Day 1 with Amazon Web Services - AWSご利用開始時に最低限おさえておきたい10のこと
Day 1 with Amazon Web Services - AWSご利用開始時に最低限おさえておきたい10のことDay 1 with Amazon Web Services - AWSご利用開始時に最低限おさえておきたい10のこと
Day 1 with Amazon Web Services - AWSご利用開始時に最低限おさえておきたい10のこと
 
【Unite Tokyo 2018 Training Day】ProBuilderで学ぶレベルデザイン ProBuilderをマスターしよう!
【Unite Tokyo 2018 Training Day】ProBuilderで学ぶレベルデザイン ProBuilderをマスターしよう!【Unite Tokyo 2018 Training Day】ProBuilderで学ぶレベルデザイン ProBuilderをマスターしよう!
【Unite Tokyo 2018 Training Day】ProBuilderで学ぶレベルデザイン ProBuilderをマスターしよう!
 
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
 
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
 
今さら聞けない HANAのハナシの基本のほ
今さら聞けない HANAのハナシの基本のほ今さら聞けない HANAのハナシの基本のほ
今さら聞けない HANAのハナシの基本のほ
 
はじめての vSRX on AWS
はじめての vSRX on AWSはじめての vSRX on AWS
はじめての vSRX on AWS
 
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
 
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
[Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
 

스켈레탈 메시 애니메이션 블루프린트