【UE4】【C++】メモ:文字列の式を動的に計算する(FMath::Eval)【★★★☆】

※この記事で使用しているUnrealのVersionは04.26.0です。 FMathというクラスに「Eval( FString Str, float& OutValue )」という関数があります。 この関数は、文字列の式を計算してfloatで返してくれるようなものです。 ↓FunctionLibraryに実装してみた。 MyBlueprintFunctionLibrary.h MyBlueprintFunctionLibrary.cpp これをビルドして、適当に指揮を入れてみた結果↓ 1+2+3+4 =10.0 3+4*2-5 =6.0 以上

続きを読む

【UE4】メモ:レベル間をまたいだアクターの参照方法【★★】

※この記事で使用しているUnrealのVersionは04.26.0です。 例えば、適当なPersistentLevelに「A」というレベルと「B」というレベルをサブレベルにぶら下げたとします。 さらに、Actorクラスを継承したBlueprintを作成します。 作成したBPの中に、「Actor(Reference)」の型の変数を作成します。 出来たクラスを、先ほど作成したAというレベルとBというレベルに入れてみます。しかし、ActorReferenceの変数にお互いを入れることはできません。 では、Actorクラス内の変数をActor(SoftObjectReference)にしてみます。 […]

続きを読む

【UE4】【C++】メモ:EditorUtilityなクラスのCallInEditorが表示されない【★★★★】

※この記事で使用しているUnrealのVersionは04.26.0です。 例えば、EditorUtilityWidgetに「DetailViews」Widgetを入れ、そのターゲットオブジェクトにEditorUtilityObjectを生成して入れてあげます。 EditorUtilityObjectのクラスには、「CallInEditor」にチェックを入れた関数を用意します。 しかし、EditorUtilityWidgetを起動しても、CallInEditorを付けた関数のボタンは自動生成されません。 ObjectDetails.cppの この中の110行目のcontinue;をコメントアウ […]

続きを読む

【UE4】【C++】メモ:アニメーションエディターのフレームレート表示について【★★★★】

※この記事で使用しているUnrealのVersionは04.26.0です。 AnimSequenceの場合は、AnimSequenceのフレームレートを参照してTimelineのフレームレートは表示されます。 しかし、AnimMontage,AnimCompositeの場合は、フレームレートに関係なく30fps表示になってしまいます。 AnimModel.cppの55~65行目 に、AnimSequenceのときとそうでないときで処理が分けられているようです。 ここの直値の「30.0」を任意の値に変えると、AnimMontage、AnimCompositeでのTimeline表示が変わります。 […]

続きを読む

【UE4】Blueprintマル秘小細工集~ソースを書かないプランナーがBlueprintでどこまで深淵に至れるか?~【★★★】

※この記事で使用しているUnrealのVersionは04.26.0です。 ※この記事のサンプルプロジェクトは以下URLにアップされています。 サンプルプロジェクト 皆様お久しぶりです。 Unreal Engine 4 (UE4) Advent Calendar 2020 14日目の記事となります! 昨日は おかずさんの 【UE4】GUIフレームワーク「Dear ImGui」を使ってデバッグ・ツール用UIを作ってみよう! < 導入・基本編 > でした。お手軽に導入出来て色々便利そうでとてもよさそうですね! ということで14日目の記事は、4.26新機能系書こうかと思いましたが、それは […]

続きを読む

【UE4】EditorUtility上のWorldContextについて【★★☆】

※この記事で使用しているUnrealのVersionは04.25.3です。 ※この記事のサンプルプロジェクトは以下URLにアップされています。 サンプルプロジェクト WorldContextについて レベル【★★☆】 最近いろんな人(プログラマー)から「EditorUtility系のBPとかでWorldContextの取得ってどうやるの?」と聞かれることが多かったため、WorldContextについてここにまとめておきます。 普段Level BlueprintやActor Blueprint内で、例えば「Get All Actors of Class」関数を使うとします。 その際は特に不自由な […]

続きを読む

【UE4】Blueprintだけで、Editor上にメニューを追加する【★★★】

※この記事で使用しているUnrealのVersionは04.25.0 Preview6です。 ※この記事のサンプルプロジェクトは以下URLにアップされています。 サンプルプロジェクト UE4.24からしれっとエディター上のメニューを作成できる機能を追加されているのに気が付きました。 エディターのメニューを追加したりするのは、「Slate使わないといけないんでしょ…」と自分もやろうと思っていませんでした。 エディター拡張において大変有効的な機能だと思いますので、是非皆さんも参考にしてみてください。 Blueprintだけで、Editor上にメニューを追加する レベル【★★★】 まずは、メニューを […]

続きを読む

【UE4】VariantManagerでレベル上のPropertyを管理しよう【★】

※この記事で使用しているUnrealのVersionは04.25.0 Preview1です。 ※この記事のサンプルプロジェクトは以下URLにアップされています。 サンプルプロジェクト ※記事で使っているアセットは容量的にもライセンス的にも微妙だったので、記事の内容とは異なったチュートリアルとして作成してあります。 ※今回はラーニングにある「建築インテリアレンダリング」を使用しています。 前置き 4.21からある「Variant Manager」という機能ですが、あまり日本語情報がなさそうだったのと、4.25で改善されているようだったので記事にしてみました。 公式ドキュメント Variant M […]

続きを読む

【UE4】SimulatePhysicsを用いて起伏のある地形へのメッシュ配置をするツールを作る【★★】

※この記事で使用しているUnrealのVersionは04.24.2です。 ※この記事のサンプルプロジェクトは以下URLにアップされています。 サンプルプロジェクト 今回は、以前に「UE4何でも勉強会」で登壇させていただいたときに紹介させていただいた「SimulatePhysicsを用いたメッシュの配置」を行うツール(EditorUtilityWidget)を作成してみたいと思います。※勉強会の資料はこちらにあります。 第4回UE4何でも勉強会 in 東京 お疲れさまでした!~講演資料配布~ ※Editor Utility Widgetにつきましては、以下のリンクを参考にしてください。 Edi […]

続きを読む

【UE4】UE4Tips120選~勉強会にて配ったTipsカードの内容を一挙公開!~

先日開催いたしました「第4回UE4何でも勉強会 in 東京」にて、ご来場の皆様にお配りいたしました「UE4 Tips Card」のコンプリート版を一挙に公開したいと思います!(1人1枚配る前提だったので、似通ったのもあったりします^^;) 会場に来られた方も来られなかった方も、自分が知らない内容がないか一度チェックしてみてはいかがでしょうか? それでは以下UE4Tips120選をどうぞ!!(埋め込みPDFの下に、SlideShareのリンク、さらにブログにテキストとしても記載されていますので、お好みの方法でご覧ください) UE4Tips120選 ※UE4.24.2時点でのTipsとなります。 […]

続きを読む

第4回UE4何でも勉強会 in 東京 お疲れさまでした!~講演資料配布~

昨日に行われた、 Epic Games Japanのおかずさんが主宰する勉強会 第4回UE4何でも勉強会 in 東京 が無事終わりました! ご来場の方々並びに関係者の方々、誠にありがとうございました! 人前で話すことがほとんどないためプレゼンはものすごく雑でしゃべりも聞き取りにくかったと思います。(プランナーとしてどうなのというツッコミは勘弁して!) なので、以下に勉強会で使用した資料を公開いたしましたので、お手元でご確認いただければと思います。※Editor Utility Widgetでの制作事例の一部は、ブログの方で開設を交えてプロジェクトファイルを公開したいと思いますので、実装方法など […]

続きを読む

【UE4】Blueprintパラメーターの参照渡しについて【★★】

※この記事で使用しているUnrealのVersionは04.24.1です。 ※この記事のサンプルプロジェクトは以下URLにアップされています。サンプルプロジェクト 参照渡し? レベル【★★】 皆さんが普段使っているBlueprintでのパラメーター(String,Intなど)のピンは配列や連想配列などを除けば、大体が丸い形をしていると思います。 しかし、まれに「Increment」や「Set Member in~~~」「Get(ref)」などのノードは、ピンがひし形をしている部分があります。 これは、そのパラメーターの参照、つまりそのパラメーターそのもののデータであるということです。 多分この […]

続きを読む