2024-04-23 13:21:26 +00:00
|
|
|
+++
|
|
|
|
date = "2024-01-29"
|
2024-05-29 02:35:07 +00:00
|
|
|
lastmod = "2024-05-27"
|
2024-04-23 13:21:26 +00:00
|
|
|
tags = ["ue", "m", "ue5"]
|
|
|
|
title = "ue"
|
|
|
|
slug = "ue"
|
|
|
|
+++
|
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
ここでは[epic games](https://www.epicgames.com/)の[unreal engine 5](https://www.unrealengine.com/ja/unreal-engine-5)の使い方をまとめます。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
|
|
|
ブログで説明しづらい部分が多いので[blueprintue](https://blueprintue.com/profile/ai/)を参考にしてください。
|
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
- repo : https://git.syui.ai/ai/ue
|
|
|
|
- blueprint : https://blueprintue.com/profile/ai
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
`ue5.4`がリリースされました。updateしてみましたが、色々と動かなくなっています。そして、前よりも頻繁に落ちるようになりました。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
動かなくなった箇所は以下の通り。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
1. 飛行するとカメラがモデル内部に入り込む / superhero fligth animations / ABP_flying, apply additive, scale
|
|
|
|
2. 飛行の上下左右の向きが反映されない / superhero fligth animations / ABP_flying, apply additive
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
今回、pluginとengineをupdateしたところ、髪の毛がモデルの内部に入り込むことがなくなりました。これにより[KawaiiPhysics](https://github.com/pafuhana1213/KawaiiPhysics)が不要になりました。なお、ue5.3でもこの現象がなくなっていることを確認しています。とはいえ、modelやplugin, engineなどあらゆる依存関係が考えられるので、あくまで個人的なケースです。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
ue5.4で最初から構築した手順を記録します。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
## vrm4u + superhero fligth animations
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:50:40 +00:00
|
|
|
まずは[vrm](https://vrm.dev/)を動かせるようにします。基本的なコントローラーは`superhero flight animations`を使用します。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
- [vrm4u](https://github.com/ruyo/VRM4U)
|
|
|
|
- [superhero fligth animations](https://www.unrealengine.com/marketplace/ja/product/superhero-flight-animations)
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
`ai.vrm`をimportするとして重要なファイルは以下の通り。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
```sh
|
|
|
|
# c:/project/yui
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
Content
|
|
|
|
├─SuperheroFlight
|
|
|
|
│ ├─Blueprints/Characters/BP_Player_UE5
|
|
|
|
│ └─Characters/Mannequins/Animations/ABP_Player_UE5
|
|
|
|
└─yui
|
|
|
|
├─BP_Player_ai
|
|
|
|
├─anim
|
|
|
|
│ └─ABP_Player_ai
|
|
|
|
└─model
|
|
|
|
├─SK_ai
|
|
|
|
└─RTG_ai
|
2024-04-23 13:28:33 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
Pluings
|
|
|
|
└─VRM4U
|
|
|
|
```
|
2024-04-23 13:28:33 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
まず`Content/yui/model`に`vrm`を入れます。インポートします。マテリアルタイプは`subsurface`を使用します。
|
2024-04-23 13:28:33 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
![](/m/post/ue/ue5_2024-05-28_125510.png)
|
2024-04-23 13:28:33 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
`Content/yui/model/RTG_xxx`を開きます。
|
2024-04-23 13:28:33 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
![](/m/post/ue/ue5_2024-05-28_130045.png)
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
ソースに`SuperheroFlight`のモデルを選択して、調整します。アニメが動くか確認してください。ポーズも重要です。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
`ABP_Player_UE5`を右クリックしてリターゲティングします。先ほど設定した`RTG_xxx`を指定してください。すべてのアニメを選択してリターゲティングを実行。`Content/yui/anim`に保存します。そこに`ABP_Player_xxx`ができます。ファイルの名前と場所はできる限り変更しないでください。バグって動かなくなり、再度リターゲティングしても動かないanimが生成されます。こうなるとvrmをインポートしなおさなければなりません。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
- `Content/yui/anim/ABP_Player_xxx`
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
v5.3では一括で全てリターゲティングできなかったのでanimを探して一つずつやっていました。これがasset側の変更かengine側の変更かはわかりません。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
次に`Content/SuperheroFlight/Blueprints/Characters/BP_Player_UE5`を複製して、`Content/yui/BP_Player_xxx`を作ります。そこで`ABP_Player_xxx`を読み込むようにします。MapのGameModeで`Content/yui/BP_Player_xxx`を使うようにします。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
```sh
|
|
|
|
Content/SuperheroFlight/Blueprints/Characters/BP_Player_UE5 -> Content/yui/BP_Player_xxx
|
|
|
|
```
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
![](/m/post/ue/ue5_2024-05-28_151451.png)
|
|
|
|
![](/m/post/ue/ue5_2024-05-28_151511.png)
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
ここでそれぞれのアニメーションを当てておきます。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
![](/m/post/ue/ue5_2024-05-28_151839.png)
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
### 飛行するとカメラがモデル内部に入り込む
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
再生してみると飛行が正常に動きません。カメラがモデル内部に移動します。これは`scale`が間違っているためです。`apply additive`が原因でそこのscaleを変更すると回避できます。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
また代わりに`blend bone by channel`を使用することでも回避できます。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
これはv5.4で発生し、v5.3では発生しません。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
- `Content/yui/anim/ABP_Player_xxx`
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
![](/m/post/ue/ue5_2024-05-28_132554.png)
|
|
|
|
![](/m/post/ue/ue5_2024-05-28_134214.png)
|
|
|
|
![](/m/post/ue/ue5_2024-05-28_134235.png)
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
また、`flying > flying state machine -> idle/hover`の`look_at`にエラーが出てるので`bone`の`j_bip_c_neck`を入れます。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
### 飛行の上下左右の向きが反映されない
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
飛行すると常に向きが一定になります。視点を動かしても変わりません。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
通常だと、視点を下に向けると、頭も下を向いて移動しますが、それがありません。下に移動してもずっと横飛行を行います。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
これは昔も見たことがある現象です。しかし、その時にどうやって修正したのか覚えていません。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
これもv5.4で発生し、v5.3では発生しません。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
### モデルを法線で強調する
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
モデルのoutline(法線)を強調する設定を行います。`Content/yui/model/SK_xxx`を開いて`レンダリング > overlay material`で以下のマテリアルを作成して適用します。
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
- `Content/yui/model/SK_xxx`
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
![](/m/post/ue/ue5_2024-05-28_135604.png)
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
<iframe src="https://blueprintue.com/render/t1xc2azx/" scrolling="no" allowfullscreen width="100%" height="400px"></iframe>
|
2024-04-23 13:21:26 +00:00
|
|
|
|
2024-05-29 02:35:07 +00:00
|
|
|
[blueprintue.com](https://blueprintue.com/blueprint/t1xc2azx/)
|
2024-04-23 13:21:26 +00:00
|
|
|
|