[UE5.6.1]UE5ぷちコン24応募作品COURSE DE LAPINS ラパンレーサー(こーす・で・らぱんず・らぱんれーさー)で使った技術とexeダウンロード

愛車のスズキアルトラパン(フランス語でうさぎ)のスピード感あふれる10台でのレースゲームを作りました。
敵のドライビングはAIコントローラーで実装したが、AIMoveToは使っておらずコーススプラインとの距離を測りながらアクセルとステアリングを調整するようなつくりで軽いです。
リアルタイムにランキングを表示するソート関数などを作成しました。

Windows向けビルドパッケージデータ、ゲームをプレイできるデータのダウンロードはこちら。

https://drive.google.com/file/d/1yRsaz6yZp01v0PC6BPTaEUct1vyWFZ2K/view?usp=sharing

作るうえで使った技術

2日は悩んで頑張って作り出した UE5 BluePrint の 構造体の配列のソートでいい方法

使っているシェーダーは3DnchuさんのLV_StylizedPP_ExampleのScreenSpaceHatching_Example

をカスタムしたものです。
https://3dnchu.com/archives/stylized-post-process-for-ue5/

使い方

調整方法

Boostの仕上げ方は Set Max Engine Torque でやった。通常500にしてブースト時10000にして差をつけた。10000以上にするとトルク(時間当たりのねじり力)が強すぎて車体が左右ブレするのは少しならいいんだが、完全にぶれて曲がってしまう様子。
500トルクでは200KM/hぐらいだが10000トルクでは270KM/hぐらいまで加速できるようになる。

Boost中にタイヤがロックしてしまう問題があったが、ブーストモーションにキーがはいっていたのが問題だと思ったが+Wheelの動きとBoostのモーションをLayered Blend Per Boneでブレンドして解決した。

再生にはAnimation PlayでなくPlay Montageを使った

管理用プロジェクトデータ

https://drive.google.com/file/d/1JZ–xzs_nwxSSnMVfAo83y20_DhXE_u-/view?usp=drive_link

[UE554]Spring Controllerで『アレ』を揺らすときの欠点ジャンプでの不具合をシンプルに改善した。

ずっとKawaiiPhysicsばっかり触ってたけどC++プロジェクトにしたくないときに便利な

Anim Dynamics 関連ノード の中にSpring Controllerがあります。

IsFalling にNOTをつないでBoolをAlphaにつなぎます。

設定値は以下の通りです。ボーン以外の参考にしてください。

[ue5.3.2]最適化用 debug shader 重い、Texture重いとか 最適化UE5night デバッグ&チューニングナイトのメモ

ライティングあり>最適化ビューモード>シェーダー複雑度

level選択してサイズマップすれば重い原因がわかる。

マップの中で重いテクスチャなどを見つける Level>サイズマップ
詳細はこちら↓

https://dev.epicgames.com/documentation/ja-jp/unreal-engine/cooking-content-and-creating-chunks-in-unreal-engine

Niniteは雑にStaticMeshアセットに全部使ってしまった方が軽いらしい。

: プロジェクト設定->入力->Console->Console Keysでキーを追加。
デフォルトで「`」が割り当たっているが、日本語キーボードだと打つことが出来ないため、「@」キーを追加しておく。

@stat anim でどの処理が何秒つかってるかが見れる

他コマンドはこちら

https://historia.co.jp/archives/1342

@fpsでstat FPSを選ぶとFPSが表示できる

Build Configurationの内容DevelopmentやShippingなどを判別して毎のEventを取得できる。

テクスチャ>アセットアクション>プロパティマトリクスでMaximam Texture Sizeと検索して1024してみたりとか。

フレームレートを固定する。

プロジェクト設定>検索>FrameRate

こんな設定にしたら40FPSでかつキャラクタきれいに見えた

最終的に選んだ設定これだけ贅沢にして24FPS 

マテリアル品質もやりようある。

#UE5night デバッグ&チューニングナイトを開催してくださったぽちおさんならびに沢山の解答をくださった方々に感謝です。

関連

Unreal Engine 5: How To Fix “Video Memory Has Been Exhausted” (Temporary Fix For Development)

https://dev.epicgames.com/community/learning/tutorials/yrl7/unreal-engine-5-how-to-fix-video-memory-has-been-exhausted-temporary-fix-for-development

https://qiita.com/UENight/items/f75c48acd3794edcd7da

[UE5.3.2]Widgetを表示したり消したりしてshippingでは2重に表示されたりをどうにか解決したメモ。

基本はサチナシさんの教えてくれたこの二つのブログ

なんだけど結局どっちもやんなきゃ解決しなかったよ

変数初期化+ガベージコレクション+ブールでの判断

どこからでも呼べるようにGameModeにかいてるんだけど、こんなかんじで大丈夫だった。

ちなみに中身はあんまり関係ないけど乗せておく

WBP_NextText

イベントグラフ1

イベントグラフ2

イベントグラフ3

関数 If AnimSHow Hide

関数 Talker to Anim

関数 Set Text Function

おわり。

[UE5] メリーゴーランドに座らした人の制御なかなかうまくいかないです。

ControlRigシーンで作ったFBXはそのままは使えない pelvisがずれてました DCCツールで直してモーションは完成

座らせて固定するのは、座っているアニメーションをAnimMontageで指定しながら、コリジョンを無効化した状態でAttachActorToActor(or Component)を使用すれば可能です。

[UE5][UQ]アンリアルクエストのセーブゲームが存在するのに存在しないって言われるのなんでしたっけ? ちなみにプロジェクト内でゲームモードをUQのBP_GameModeにすれば動くが新たに作ったゲームモードだと動かない。解答

解答

SaveName変数のデフォルト値「RankingData」が入ってるか?
SaveNameのデフォルト値が Get SaveNameで使われてるか?

リファレンスの検索で最後に出てくる

WBP_Rankingで Cast して自分のゲームモードを読んでるか?

できた

[UE5.4][controlrig] controlrigの回転制限したい場合など回転要素の分解ノードなんですが To RotatorもFrom Rotator 見つからない件 

To RotatorもFrom Rotator もTo Euler From Euler になりました。!

https://sites.google.com/site/seikodevmemo/top/UE4AC2019-2-1224-ConrtolRig-Main/EyeControlSequence

のサイトのおまけ

ですが、UE5.4ではこうなりました。(下のノードちょっと工事中です。)

で直して着地したのがこれ(失敗)

これでやっと落ち着いた。(回転制限のclampの固定値では制御しきれなかった)

さらにスカートの長さをもものrotationから調節して解決

どうにか完成してよかった。

[UE5.4.2] Editor Revision Control Helpersが追加されてUE5のBrueprint上でチェックインができるようになったみたい!

Checkout AssetとCheckout Directoryは前からあったが。

Editor Scripting
Asset
f Checkout Asset
f Checkout Directory
Editor Revision Control Helpers
f Check in File

1つのファイルをPERFORCEにチェックイン=アップロード+読み取り専用へ

f Check in Files

複数のファイルをPERFORCEにチェックイン=アップロード+読み取り専用へ

f Check Out File

1つのファイルをPERFORCEにチェックアウト=自分だけ書き込み許可

f Check Out or Add File

1つのファイルをPERFORCEにチェックアウトまたはファイルを追加+自分だけ書き込み許可