思考が離散

そこはかとない感ただよっている。いつなくなってもおかしくない。

ポーンの所有とポーンにHUDからアクセスするタイミング

はじめに

UE4で空のプロジェクトからポーンを置いて見た後、いろいろ苦戦してます。

ひとまず今回、覚えておいたほうが良さそうなつっかかりポイントをメモついでに記事にしました。

 

経緯

nmmn.hatenablog.com

 前回のこの記事のサンプルを参考にして、空のプロジェクトで写経っぽいことしてたんですが、いろいろ苦戦してつらい。

にたようなモノつくってとりあえずドラッグ・アンド・ドロップしてもうんともすんとも言わない…………。

 

ポーンの所有

現象

空のプロジェクトを作成して、ポーンのブループリントを作成してノードを作って動かした所、宇宙船がピクリとも動かない!

何故????

 

原因

作成したポーンのコントローラーがいない

(ポーンをレベルに置いておくだけでは、コントローラーが設定されないので入力を受け付けない)

 

解決

docs.unrealengine.com

上のサイトに行き着いたので、そんな感じにノードを作成。

レベルブループリントに直接置きました。

f:id:NMMN:20160214221520p:plain

そしたら動いた。

やったぜ!

(あれ?SetChinematicModeノードってなんだ……?どこかに書いてあったんだっけ……???わからないけど動いてるし、今はそっとしておこう……)

 

HUDからポーンへアクセスするタイミング

現象

ポーンの情報にHUDからアクセス出来ない!

GetControlledPawnしてるのに値はNone!!

ホワイ!?!??

 

原因

HUD作成時のConstructイベントの時点では、まだポーンをプレイヤーがコントロールしていないので、Noneが出る。タイミングの問題。

(似た問題に対してタイミングの問題じゃね?っていう英語フォーラムが出てきた気がするんだけど、URLを失念。検索ワードも失念)

 

解決

f:id:NMMN:20160214221937p:plain

コントロール後にHUDを作成した。

(他に良い解決方法がありそうだけど、今はとにかくこれでよし、としておく)

 

 

他にもポカミスやらなんやらでかなり時間を食ってますが、ひとまず移動だけならなんとか再現して、カスタマイズできるようになりました。

 

うーん。我ながら効率がよくないですね。

一度ゲーム作成に関するチュートリアルを通しでやったほうがいいかもしれない……。

 

では、また。