fc2ブログ

凛(kagring)のUE5/UE4とゲーム制作と雑記ブログ

2016 年から UE4 / 2021年から UE5 を触り始めました。勉強したもののメモ用ブログです。ゲーム制作に関するメモや雑記とか色々あります。C++ での Qt、Unity もほんの少しあります。

2021年05月 | ARCHIVE-SELECT | 2021年07月

| PAGE-SELECT | NEXT

≫ EDIT

UE4 マテリアル(Material)の Time ノードで一定の周期を繰り返す(Time、Period)

マテリアル(Material)の Time ノードで一定の周期を繰り返す方法です。

こちらを参考にさせていただきました。

「Time」ノードという時間を使うことができるマテリアルのノードがあるのですが
これの詳細で「Period」の値を設定することで、一定の周期を繰り返すことができます。
マテリアルTimeノード000
こちらが「Time」ノードです。

この「Time」ノードの詳細で「Period」を設定します。
マテリアルTimeノード002
1.0 であれば 0.0~1.0(秒)を繰り返すといったものになります。
※1.0 以上になった場合は 0.0 に戻る

上記をこんな感じで使ってみました。
マテリアルTimeノード001
透明度に対して Time ノードを使って 0.0~1.0 を繰り返すといったものです。
1.0 になった場合は 0.0 に戻ります。

結果はこんな感じに。
無事透明度が 0.0 から 1.0 に変化しているのを繰り返すのがわかります。

ちなみにこの Time ノードの Period の使い方ですが、こういう考えもあるようです。

こちらも覚えておいたほうがが良いかもですね。

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 スタティックメッシュ(Static Mesh)で簡単なコリジョン(単純コリジョン)を設定する

スタティックメッシュ(Static Mesh)に簡単なコリジョン(単純コリジョン)を設定する方法です。

こちらを参考にさせていただきました。

・スタティックメッシュでコリジョンをセットアップする
https://docs.unrealengine.com/ja/WorkingWithContent/Types/StaticMeshes/HowTo/SettingCollision/index.html

・【第3回】ジオメトリブラシを使う
https://note.com/miccanote/n/nd236bfc61af8

今回は簡単なコリジョンの設定なので
あらかじめ指定されているコリジョンを割り当てることになります。

まず、スタティックメッシュでこんな感じのものがあるとします。
ブラシをスタティックメッシュに変換してコリジョンを付ける003
これに簡単なコリジョンをセットアップしていきます。

「コリジョン」メニューから「ボックス単純化コリジョンを追加」を選択します。
ブラシをスタティックメッシュに変換してコリジョンを付ける001

すると、詳細タブにこんな感じで形状別にコリジョンが追加されます。
ブラシをスタティックメッシュに変換してコリジョンを付ける004
今回は「ボックス単純化コリジョンを追加」だったので
「Boxes」のところのデータ配列が追加
されていますね。

・球体簡素化コリジョン
・カプセル簡素化コリジョン
・ボックス簡素化コリジョン

上記が単純なコリジョンとして用意されているものになります。

プレビューの方でもコリジョンが確認できるのですが
デフォルトでは表示がオフになっているので表示するように変更します。

ツールバーの「コリジョン」を押して、
「単純コリジョン」と「複雑なコリジョン」にチェック
をいれます。
ブラシをスタティックメッシュに変換してコリジョンを付ける000
※今回は単純コリジョンだけなので「単純コリジョン」だけのチェックでも問題ありません。

これでコリジョンが緑色のワイヤーフレームで表示されます。
ブラシをスタティックメッシュに変換してコリジョンを付ける002
無事コリジョンが作成されているのがわかりますね。

コリジョンを削除したい場合は以下の方法で削除できます。

コリジョンのうちの1つを選択して [Delete] キーを押すか、
[Collision (コリジョン)] ドロップダウンメニューから [Delete Selected Collision (選択したコリジョンを削除)] を選択してひとつづつ削除するか、
または [Collision] メニューで [Remove Collision (コリジョンを取り除く)] を選択してメッシュ上ですべてのコリジョンを取り除きます。
すべてのコリジョンメッシュを取り除いてよいかを確認するポップアップが表示されます。[Yes] をクリックするとスタティックメッシュからコリジョンが取り除かれます。


選択してメニューから行うのが良いかもですね。
ブラシをスタティックメッシュに変換してコリジョンを付ける005

形状が簡素だったり、とりあえずコリジョンを付けたい場合はこの方法でよい気がしますね。
複雑なコリジョンの付け方はまた別途調べたいと思います。

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 ジオメトリブラシ(Geometry Brush)を使って簡単な形状を作成する

ジオメトリブラシ(Geometry Brush)を使って簡単な形状を作成する方法です。

ジオメトリブラシ(Geometry Brush)についてはこちらが参考になると思います。

・Geometry Brush アクタ
https://docs.unrealengine.com/ja/Basics/Actors/Brushes/index.html

・UE4 ジオメトリブラシを使ってお手軽モデリング

https://unrealengine.hatenablog.com/entry/2014/09/26/214001

・【第3回】ジオメトリブラシを使う
https://note.com/miccanote/n/nd236bfc61af8

まずはジオメトリブラシアクターを配置してみます。
アクターを配置からジオメトリを選択して、使いたいジオメトリブラシを配置します。
ジオメトリブラシ000

適当にボックス(Box)を配置してみました。
ジオメトリブラシ004

モードから一番右側にある"ジオメトリの編集"を選択します。もしくはShift+5の同時押しでもOKです。


とあるので、ツールバーのモードから「ブラシ編集」を選択します。
名称が変わっているみたいですね。
ジオメトリブラシ001

するとこんな感じで頂点や面を編集できるモードに切り替わります。
ジオメトリブラシ005

あとは頂点を編集したりして形状を変化させます。
ジオメトリブラシ002

編集後に実行をしてみるとこんな感じにちゃんと編集結果が表示されます。
ジオメトリブラシ003
ちゃんとコリジョンまで変化しているのがすごいですね。

これはかなりレベルデザインに使えるんじゃないかなと思ったのですが
公式でこんなことが書かれています。

ジオメトリ ブラシはレベル デザインの仕上げ方法としては推奨しません。要件ではありませんが、作成の初期段階では便利な場合があります。

現在はあまり推奨されてはないのかもしれません。

ツイッターで疑問を書いたところ教えてもらいました!
形状だけなら有利でも、情報がとれないといろいろと不都合がでそうですね。
それが「仕上げ方法としては推奨しません」というところなのかなと思いました。

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 プロジェクト名を途中で変更する

プロジェクト名を途中で変更する方法です。

こちらを参考に…というかほぼそのままのメモです。

・UE4小ネタ : UE4のプロジェクト名変更方法について
https://pafuhana1213.hatenablog.com/entry/2015/05/13/002703

2015年5月12日現在(ver 4.7.6)、UE4エディタ上ではプロジェクト名を
変更することができません。少し面倒な手順を踏む必要があります。

とのことです。
この記事自体が古いのですが、ぐぐっても同じようなことしかでてこないので一緒かなと…。
あまり途中でプロジェクト名を変える必要性はないのかもしれませんね。

・ランチャーから複製する手法

まずは、ランチャー上のプロジェクトの右クリックメニューから「Clone」を選択します。
プロジェクト名の変更000
これですね。

Nameの箇所に新しいプロジェクト名を入力します。
あとは、Createを押すだけです。

とのことです。

この手法はとても簡単です。しかし、コピー分のHDD容量が必要になる上、
プロジェクト規模によっては、長時間待たされる問題があります。
(コピー + シェーダコンパイル + etc...)

また別の問題として、C++プロジェクトの場合はこの方法では上手くいかない「かも」しれません。
(サンプル数が1(=ぼく)なので、他の環境では上手くいくかもしれません… バージョンは4.7.5でした)


・プロジェクト内のファイルを弄る手法

これはUE4公式フォーラムの以下のスレッドで紹介されていた手法です。
How to change project and map names?


ここからはほぼ引用なので、元記事を読んだ方が早いと思われます。メモ用。

まずは、プロジェクトが置かれているフォルダを開きます。
先ほど紹介した右クリックメニューの「Show in folder」から開くのが楽だと思います。

そして、.uprojectファイルの名前を新しいプロジェクト名に変更します。
今回は「VangardUnityChan.uproject」を「hogehoge.uproject」に変更したとします。

次に、先ほど名前変更したファイルと同じ階層にある
configフォルダを開き、更にその中にあるDefaultEngine.ini
をテキストエディタなどで開きます。

開いた後に、以下の文を先頭に挿入して下さい。
既に[URL]がファイル内に書かれている場合は、その場所に追加して下さい。

[URL]
GameName=◯◯◯


※◯◯◯の部分には、新しいプロジェクト名を書いて下さい。 今回の場合ですと、hogehogeになります。

これで完了です。
1つ問題があるとすれば、パッケージング後の一部ファイルが変更前のプロジェクト名のままになっています。
ただ、ふつうの人は見ない場所なので、特に気にする必要はないと思います。
("Binaries\Win64\"内のexeファイル)


一旦メモ。

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 アンリアルエンジン4用アドベンチャーゲームキット(Adventure Kit)

便利そうなプラグインやアセットのメモです。

こちらの記事に詳しく書かれています。

・UE4 Adventure Kit - 基礎要素盛りだくさん!?アンリアルエンジン4用アドベンチャーゲームキット!
https://3dnchu.com/archives/ue4-adventure-kit/

紹介動画はこちら。


マーケットプレイスはこちら。

・Adventure Kit
https://www.unrealengine.com/marketplace/ja/product/adventure-kit

こちらにも詳しい説明があるようです。

・Adventure Kit
http://freetimestudio.github.io/Adventure-Kit/

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 スプライン生成プラグイン(Smart Spline Generator)

便利そうなプラグインやアセットのメモです。

こちらの記事に詳しく書かれています。

・Smart Spline Generator for Unreal Engine 4 - これ絶対便利でしょ!アンリアルエンジン4にて幅広く活用できるスプライン生成プラグイン!
https://3dnchu.com/archives/smart-spline-generator-ue4/

紹介動画はこちら。


マーケットプレイスはこちら。

・Smart Spline Generator
https://www.unrealengine.com/marketplace/ja/product/smart-spline-generator

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 ジオメトリブラシ(Geometry Brush)をスタティックメッシュ(Static Mesh)に変換する

ジオメトリブラシ(Geometry Brush)をスタティックメッシュ(Static Mesh )に変換する方法です。

ジオメトリブラシ(Geometry Brush)についてはこちらが参考になると思います。

・Geometry Brush アクタ
https://docs.unrealengine.com/ja/Basics/Actors/Brushes/index.html

・UE4 ジオメトリブラシを使ってお手軽モデリング

https://unrealengine.hatenablog.com/entry/2014/09/26/214001

ジオメトリブラシは編集可能なものですが、これをスタティックメッシュ(Static Mesh)に変換することができます。

変換についてはこちらを参考にさせていただきました。

・【第3回】ジオメトリブラシを使う
https://note.com/miccanote/n/nd236bfc61af8

まずはジオメトリブラシアクターを配置してみます。
ブラシをスタティックメッシュに変換004
これですね。

配置するとこんな感じになりました。
ブラシをスタティックメッシュに変換001
まだ編集可能な状態ですね。

配置したジオメトリブラシアクターを選択して
「スタティックメッシュを作成」ボタン
を押します。
ブラシをスタティックメッシュに変換000

すると変換したスタティックメッシュを保存するフォルダを要求されるので指定
「スタティックメッシュを作成」ボタンを押します。
ブラシをスタティックメッシュに変換002
フォルダはあらかじめ作っておくと安全なので作っておきます。

なお、変換するとジオメトリブラシには戻せませんので、念の為コピーしておくと安心です。

上記も気を付けたほうが良いと思われます。

するとこんな感じで指定したフォルダに指定した名前のスタティックメッシュが作成されました。
ブラシをスタティックメッシュに変換003

ジオメトリブラシの状態だと、マテリアルの設定とか何気にめんどくさかったので
形状がばしっときまった場合はスタティックメッシュに変換してから使うと良さそうな気がします。

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 UMGでデータテーブル(Data Table)から取得したテキストを改行ありで表示する(Shift+Enter)

UMGでデータテーブル(Data Table)から取得したテキストを改行ありで表示する方法です。

・第5回UE4ぷちコン】UE4初心者がUnrealEngineでノベルゲームを作ってみた
https://qiita.com/YuukiOgino/items/7922e178d27d21e0257f

データテーブルでは改行コードは文字列(\nなど)に変換されるため、Replaceで改行コードに変換をかけます。
ToにShift+Enterで改行が入力が入力できます。


ということで上記を試してみました。

まずはこんな感じの構造体をつくりました。
データテーブルの改行文字列表示000

この構造体を使ってデータテーブル(Data Table)を作りました。
データテーブルの改行文字列表示002
String については「\n」を改行コードとしています。

アセットはこんな感じに。
データテーブルの改行文字列表示001

まずは普通にデータテーブルのテキストを表示してみました。
データテーブルの改行文字列表示003

結果はこんな感じに。
データテーブルの改行文字列表示004
「\n」がそのまま表示されてしまっていますね。

参考サイトに書かれている通り、
データテーブルから取得したテキストの「\n」を改行コードに置き換えます。
データテーブルの改行文字列表示005

データテーブルでは改行コードは文字列(\nなど)に変換されるため、Replaceで改行コードに変換をかけます。
ToにShift+Enterで改行が入力が入力できます。

この部分ですね。

結果はこんな感じに。
データテーブルの改行文字列表示006
無事改行込みのテキストを表示することができました。

ここらへんは忘れそうなのでメモしておいた方が良いと思ったのでというところでした。

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 アセットのディスク上のフルパスを取得する(Get System Path)

アセットのディスク上のフルパスを取得する方法です。
※この機能は 4.26 以降で使うことができます。

こちらの記事を参考にさせていただきました。

・UE4 - UE4.26の新機能から便利そうなものをピックアップして紹介(Blueprints, UMG周りのみ)
https://kumasan-debug.hatenablog.com/entry/2020/12/08/100928

記事内で以下のように書かれています。

ディスク上のアセットへのフルパスを取得するための関数「GetSystemPath関数」を追加する


「Get System Path」ノードはこちら。
GetSystemPath002.jpg

実際に使ってみました。
GetSystemPath000.jpg

結果はこんな感じに。
GetSystemPath001.jpg
ちゃんとディスク上のフルパスが取得できているようです。

ちなみにですが、配置されたアセットを渡しても何も返ってこないようなので
ゲームプレイ時ではなく、エディタ用に公開されているものなのかもしれません。

ここらへんどういう時に使う想定なのかすごく知りたいです!

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 コメントノードの中にあるノードを動かさずにコメントノードだけを動かす(Move Mode、Comment、Group Movement)

コメントノードの中にあるノードを動かさずにコメントノードだけを動かす方法です。

こちらを参考にさせていただきました。

・【UE4】UE4Tips120選~勉強会にて配ったTipsカードの内容を一挙公開!~
https://kinnaji.com/2020/02/09/tips120/

BlueprintGraphEditorのコメントNodeのDetailで、
「Move Mode」を「Comment」にすることで、
コメント内にあるノードを動かさずにコメントNodeを動かすことができる。

と書かれていました。

こんな感じでコメントノード内にノードを配置してみました。
コメントウィンドウだけ動かす000
この状態のコメントノードを動かすと、中にあるノードも一緒に動きます。
※本来の想定している挙動

このコメントノードの詳細で「Move Mode」を「Comment」に変更します。
コメントウィンドウだけ動かす001

コメントノードの「Move Mode」を「Comment」にすることで
コメントノードを動かしたときに、中にあるノードは一切動かずコメントノードだけ動かす
ことができます。
コメントウィンドウだけ動かす002
こんな感じでコメントノードだけ動かすことができました。

元の挙動に戻したい場合は
コメントノードの「Move Mode」を「Group Movement」に変更
することで元に戻ります。

あまり使う機会はなさそうですが、一応覚えておくと手間が減るかもしれないかなと思いました。

| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑

| PAGE-SELECT | NEXT