fc2ブログ

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

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

2017年12月 | ARCHIVE-SELECT | 2018年02月

| PAGE-SELECT |

≫ EDIT

UE4 エディタでモデルをアクターに静的にアタッチする(アウトライナ上で設定)

キャラクターに武器をもたせたり、
アクセサリーなどのアタッチメントをキャラクターにくっつけるための方法です。

こちらを参考に。いつもお世話になってます!

・UE4 ソケットのアタッチをノードを使わずに行う
http://unrealengine.hatenablog.com/entry/2016/11/22/213000

今回の手法はBPやコンポーネントの制御もせず、
レベルに配置されたアクターやメッシュ同士をアウトライナ上でアタッチする方法です。

やりかたは簡単で
「アウトライナ上でアクターを選択して、他のアクターにドロップする」です。
メッシュをアタッチエディタで000
するとこんな感じで階層構造になってアタッチすることができます。

アタッチする場合は、アタッチ元の可動性の設定が
「ムーバブル」になってないといけないので注意してください。
静的アタッチ002
これはまた別のオブジェクトですが。

というわけでできたのがこちら。
メッシュをアタッチエディタで001

参考サイトの手順を踏んでいるのですが、ソケット選択がでてこないのですよね。
バージョン違いなのか、何か設定がいるのかちょっと不明です。
調べてみないとですね。

| UE4 | 11:44 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 エディタでモデルをアクターに静的にアタッチする(コンポーネントを追加して親ソケットを指定)

キャラクターに武器をもたせたり、
アクセサリーなどのアタッチメントをキャラクターにくっつけるための方法です。

こちらを参考に。いつもお世話になってます!

・UE4 ソケットのアタッチをノードを使わずに行う
http://unrealengine.hatenablog.com/entry/2016/11/22/213000

簡単にいうと「コンポーネントを追加」して、
「親ソケットを指定」してあげるといったものですね。

まずはアタッチ先のキャラクターのBPを開いて
アタッチしたいモデルのコンポーネントを追加しましょう。
静的アタッチ001
今回は「StaticMesh」コンポーネントを追加してみました。

そうしたら、追加したコンポーネントのメッシュを
「ムーバブル」に変更して、「親ソケット」を指定してあげましょう。
静的アタッチ002
今回は般若のお面のモデルを顔にアタッチしてみます。
顔に当たるので親ソケットには「Head」を指定しました。

ソケットは「スケルトンツリー」で確認することができます。
静的アタッチ004
グレイちゃんのスケルトンはこんな感じになってます。

そうしたら後は、「位置」「回転」「拡大・縮小」パラメータをいじって
いい感じの場所になるようにしてみます。
静的アタッチ003
プレビューで見ながら設定できるので楽ですね。

これだけでグレイちゃんに般若のお面をつけることができました。
静的アタッチ000
ゲームとしてつくるならエディタ上ではなく、
動的に読み込んでゲームで設定することになりそうですが
NPCだったりのキャラクターはこうやって構築してもいいかもしれませんね。
エディタで見ながら構築できますし。

これをBPでやったり、つけるためのソケットを新規で追加したりなどできそうなので
次はこれらを調べていこうかなと思います。

| UE4 | 14:38 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

UE4 ブループリントユーティリティ(Editor Utility Blueprint、Blutility)のエディタ拡張・エディタウィンドウを作ってみる

ゲームに使えるエディタ拡張を調べてる時に
ブループリントユーティリティ(Editor Utility Blueprint、Blutility)というのが
あるのがわかったのでテストしてみました。

ほぼこちらの記事をまんま実行しただけではあるのですが
やっぱり自分でやってみないとわからないようねってことでやってみました。

・【UE4】プランナーがBlutilityでジェネレータを作ってみた
http://anapurna.co.jp/ue4/325/

あとはこちらもとても参考にさせてもらいました!

・UE4 Blutilityによるお手軽なエディター拡張
http://unrealengine.hatenablog.com/entry/2016/10/05/215937

どうもBlutilityはデフォルトでは使えないようなので、まずはBlutilityを使えるようにします。
「プロジェクト設定」を開いて
Blutility作成000

「実験段階」の「Editor Utility Blueprints」にチェックを入れます。
Blutility作成001

これでBlutilityが使えるようになったのでブループリントを作成します。
新規作成のブループリントで
「ブループリントユーティリティ(Editor Utility Blueprint、Blutility)」を選択します。
Blutility作成002

親クラスは「GlobalEditorUtilityBase」を指定します。
Blutility作成003

これで「Editor Utility Blueprint」アセットが作成されました。
Blutility作成004

作成されたアセットはエディタ拡張のブループリントなので、ダブルクリックすると
実行されてウィンドウが開いてしまうので、このブループリントを編集する場合は
右クリックメニューの「ブループリントの編集」を選択します。
Blutility作成005

このブループリントに適当な関数を作成してみましょう。
Blutility作成006

編集しているブループリントウィンドウを閉じて、
編集したブループリントアセットをダブルクリックしてみましょう。
Blutility作成007
これだけで、さっき作成した関数のボタンが実装されています。
簡単!

あとは、この関数名のボタンを押すと、作成した関数の処理が実行されます。
Blutility作成008
ゲームを起動していなくても、実行されるのがエディタ拡張っぽくていいですね。

といった感じが基礎みたいです。
ちょっとさわってみた感じ、
ゲームを作るためのサポート機能(あくまでエディタの機能)であって
ゲーム実行中のデバッグ機能を作ることはできないのかなーという感触なんですが
ゲーム実行中のものにもアクセスできるといいなーと思ったり。
(うちが知らないだけかもですが)

C++を記述しないでも何かできそうなので、もう少しいろいろ調べてみたいですね。

| UE4 | 12:21 | comments:0 | trackbacks:0 | TOP↑

| PAGE-SELECT |