BLOGブログ

2015.03.27UE4UE/ Blueprint

[UE4] 動きに緩急をつけるEaseノードの紹介

改訂バージョン: Unreal Engine 4.19

物体を一定のスピードで動かし続ける処理は簡単に実装できますが、現実世界には存在しない動きです。

リアルな動きを表現するには加速・減速はつきものですが、ゲームに実装しようとなると、ある程度複雑な処理を書く必要が出てきます。

この処理を非常に簡単に実装できるのが、UE4のEaseノードです。

今回はこのEaseノードの紹介をしていこうと思います。一覧表はこちら

 

Easeについてはこちらの記事にとても分かりやすく説明がありました。

KAYAC DESIGNER’S BLOG 面白法人カヤックのデザイナーブログ

これだけは抑えておきたい! jQuery や CSS の「イージング」の基礎知識

 

1.Easeノード

 

プロパティ

説明

Function

Liner

Step

Sinusoidal In

Sinusoidal Out

Sinusoidal in Out

Ease In

Ease Out

Ease in Out

Expo In

Expo Out

Expo in Out

Circular In

Circular Out

Circular in Out

14通りの補間方法を選択できる。

Alpha

0~1までの範囲で値を指定。

0に近いほどAに近い値になり、1に近いほどBに近い値になる。

A/B

A: スタートの値

B: ゴールの値

float / Vector / Rotator / Transform の4つが使える。 AとBは同じ型の組み合わせでないと使えない。

 

EaseのアルファにはAlphaに0から1に向かって一定の速度で増えていく数値を渡してやります。

 

 2.Easeの種類

①Liner

Liner

いわゆる線形補間で、時間に比例して値が増加していく。緩急は全くつかない。

 

②Step

 

このFunctionを選ぶとStepsの項目が追加され、Easeの段数を指定できる。

 

STEP2Step2段     Step4Step4段

一定時間経つと段階的に値が増える、時計の秒針のような感じの補間。

 

③SinIn

SinIn

式にCosを使った補間。徐々に加速していく。

 

④SinOut

SinOut

式にSinを使った補間。徐々に減速していく。

 

⑤SinInOut

SinInOut

前半はSin、後半はCosを使った補間。初めは加速して、途中から減速する。

 

⑥EaseIn

 

EaseIn・Out・InOutを選ぶとBlend Exp(指数)が指定できるようになる。

 

EaseInExp0.5Exp0.5     EaseInExp2Exp2     EaseInExp4Exp4

途中まではあまり動かず、山場を迎えると急に加減速する。

山場は、Expの値が大きいほど後ろになる。

 

⑦EaseOut

EaseOutExp0.5Exp0.5     EaseOutExp2Exp2     EaseOutExp4Exp4

途中まで加減速し、山場に差し掛かるとほとんど動かなくなる。

山場はExpの値が大きいほど手前に来る。

 

⑧EaseInOut

EaseInOutExp0.5Exp0.5     EaseInOutExp2Exp2     EaseInOutExp4Exp4

前半はEaseInの動き、後半はEaseOutの動きで補間

Expの値が大きいほど中間で動きの落差が激しくなる 。

 

⑨ExpoIn

ExpoIn

スタート時は遅いが、後半急激に加速する。

 

⑩ExpoOut

ExpoOut

スタートからすごく速く動き、急激に減速する。

 

⑪ExpoInOut

ExpoInOut

中間急激に加減速する。

 

⑫CircularIn

CircularIn

徐々に加速する。

 

⑬CircularOut

CircularOut

徐々に減速する。

 

⑭CircularInOut

CircularInOut

加速し、減速する。

 

 

3.一覧表

Liner

Liner

STEP

STEP2Step2段 Step4Step4段

Sin In

SinIn

Sin Out

SinOut

Sin In Out

SinInOut

Ease In

EaseInExp0.5Exp0.5 EaseInExp2Exp2 EaseInExp4Exp4

Ease Out

EaseOutExp0.5Exp0.5 EaseOutExp2Exp2 EaseOutExp4Exp4

Ease In Out

EaseInOutExp0.5Exp0.5 EaseInOutExp2Exp2 EaseInOutExp4Exp4

Expo In

ExpoIn

Expo Out

ExpoOut

Expo In Out

ExpoInOut

Circular In

CircularIn

Circular Out

CircularOut

Circular In Out

CircularInOut