スケルタルメッシュやスケルトンの編集画面を開くと、ボーンの名前と階層構造は確認できるのですが、ボーンインデックスは確認できません。
見つからないので Editor Utility Widget(以下、EUW) でボーンインデックスビュワーを作りました。
動作環境
Unreal Engine 5.5 Preview, 5.5
Visual Studio 2022
Windows 11 Home
スケルタルメッシュやスケルトンの編集画面を開くと、ボーンの名前と階層構造は確認できるのですが、ボーンインデックスは確認できません。
見つからないので Editor Utility Widget(以下、EUW) でボーンインデックスビュワーを作りました。
動作環境
Unreal Engine 5.5 Preview, 5.5
Visual Studio 2022
Windows 11 Home
Unreal Engine のエディタでスケルタルメッシュやマテリアルなどを選択するときに使うウィジェットがあります。
アイキャッチ画像で示した通りですが、マテリアルやスケルトンなんかを選択するときも、このウィジェットが使われています。
これ、よく見るウィジェットなので、Editor Utility Widget(以下、EUW)でも簡単に使えるだろう…と思い、EUW のデザイナー画面で「パレット」にないか探してみるのですが見つかりません。
実はこれ、ウィジェット(UWidget)ではなく、スレート(Slate)です。
スレートについて細かい説明は割愛しますが、このままでは、Editor Utility Button ウィジェットなどのように、デザイナー画面でキャンバスパネルなどに配置することができません。
本稿では、このスレートをウィジェットとして使えるようにする方法を共有します。
C++ を使う必要があるため、EUW の実装に詳しいテクニカルアーティストやエンジニアが対象となります。
動作環境
Unreal Engine 5.4.4, 5.5 Preview
Windows 11 Home
Visual Studio 2022
アイキャッチ画像のマネキンはスケルタルメッシュを使っていません。
アニメーションする「スタティック」メッシュです。
公式の City サンプルで使われている AnimToTexture は、VAT(Vertex Animation Texture) によってスタティックメッシュ化したキャラクターにアニメーションさせることができるプラグインです。
本稿では、このプラグインを使って、スケルタルメッシュをアニメーション付きスタティックメッシュに変換する手順と、VAT を使う上で必要になる補足情報について共有します。
動作環境
Unreal Engine 5.4.3 および 5.4.4
Windows 11 Home
本稿では Unreal Engine 5 の C++ を使って複数の子 Editor Utility Widget(エディタユーティリティウィジェット、以下 EUW) を、ひとつの親 EUW にはめ込んで表示する方法について共有します。
EUW のマニアックな使い方に興味があるエンジニア向けです。
動作環境
Unreal Engine 5.4.3 および 5.4.4
Windows 11 Home
Visual Studio 2022
続きを読む 【UE5】複数の EditorUtilityWidget を組み合わせてひとつのウィジェットを構築する方法【C++】
本稿はコード設計に興味があるエンジニアを対象としています。
本稿では、UE5 C++ の LineTraceMultiByProfile 関数を使った際に、私が分かりにくいと感じた点について調査し、分かったことを共有したいと思います。
Unreal Engine の C++ の使い方を習得している方が対象となります。
動作環境
Visual Studio 2022
Unreal Engine 5.4.1
Windows 11 Home
Sonar Lint を使わなければ気づかなかったシリーズ
Sonar Lint で警告を食らう度に記事を書いてる気がしますが、有用な情報なのでスルーしない方が良いと思います。
ナビメッシュを使ってパス検索しつつ、プレイヤーを追いかけるだけのAIを作ろうとしたのですが、
「最低限何をすれば良いのか?」
…という情報は、調べても出てきませんでした。
調査しながら試行錯誤して、動作するものを作成。
そこから不要な部分を削ることで、
「何が必要なのか?それは何故必要なのか?」
…が分かりましたので、本稿で共有したいと思います。
本稿は初心者向けです。
C++ は使用せず、ブループリントを使用します。
動作環境
UE 5.4 と 5.3.2
Windows 11 Home
.Net には、マルチスレッドの処理を使いやすくした Task クラスがありますが、使いやすいとは言え、かなりの知見が必要になります。
System.Threading.Tasks 名前空間には、クラスだけでも以下の種類があります。
.Net 8.0 の System.Threading.Tasks 名前空間に含まれるクラスの一部
※タップまたはクリックすると大きい画像で表示します。
.Net のような、あらゆるシチュエーションで使えるように構成された API では、多種多様な機能を用意するのは正しいと思います。
ただ、スレッドプールの恩恵をつまみ食いしたいようなときには、学習コストが高すぎます。
そこで、学習コストをほとんど必要としないマルチスレッド用クラスを作りました。
少数を100倍とか10000倍とかして整数で扱う手法です。
浮動小数 3.14 ⇒ 固定少数 314
今のゲーム開発では使わなくなったんじゃないでしょうか。
正確には「固定少数点数」ですが、長いので「固定少数」と呼ぶことにします。
メリット
1.昔のハードウェアでは float や double より int の方が計算が速かった。
2.float や double 特有の誤差が出ない。
デメリット
1.int を float や double に変換するのが面倒。
2.速度の問題なら、今のハードウェアでは float か double で良い。
3.誤差の問題なら、誤差が出ない実数型を使えば良い。