#contents

----
UE4.14.0

- リアルタイムに更新されない。パラメーターが変更された時とかだけテスト結果と表示が更新される。
- Outlinerでアクティブ化しないと表示されない
多分。


プレイヤーから遠いところのコスト表示。本来ならプレイヤーの周囲は0.0(赤)になる筈。歩き回っても更新されない。
&ref(eqs_testing_pawn01.png,,70%);


* ゲーム中もリアルタイムに更新されるように [#b5fc60ac]
+ [[こちら>http://com04.sakura.ne.jp/unreal/wiki/index.php?EQS-%A5%C6%A5%B9%A5%C8%BC%AB%BA%EE]]と同じようにC++のclassを作成
+ 親クラスに「EQS Testing Pawn」を指定する。
+ そのまま作成を進めてC++ファイルを追加する。Visual Studioで開かれる。
+ ヘッダーは下記のように。
 UCLASS()
 class TESTSEQUENCER_API AMyEQSTestingPawn : public AEQSTestingPawn
 {
 	GENERATED_UCLASS_BODY()
 
 public:
 	// BPに公開
 	UFUNCTION(BlueprintCallable, Category = "Damage")
 	void EQSQuery();
 
 public:
 };
+ ソースコードは下記のように
 #include "EnvironmentQuery/EQSRenderingComponent.h"
 
 AMyEQSTestingPawn::AMyEQSTestingPawn(const FObjectInitializer& ObjectInitializer)
 	: Super(ObjectInitializer)
 {
 	GetEdRenderComp()->bDrawOnlyWhenSelected = false;
 }
 void AMyEQSTestingPawn::EQSQuery()
 {
 	RunEQSQuery();
 }
+ エディターに戻ってCompile.
+ コンパイルに成功したら、今回作成したクラスを継承したBlueprintを作成する
&ref(eqs_testing_pawn02.png,,70%);
+ EventGraphを開いて、C++で追加したメソッドをTicksでコールする
-- Ticksの頻度が高いと更新負荷が高いので注意。
&ref(eqs_testing_pawn03.png,,70%);
+ 後はワールドに配置すると随時更新される
&ref(eqs_testing_pawn04.gif);

** メモ [#q1c44631]
AEQSTestingPawn::RunEQSQuery
が何かエディットされた時、まだクエリを走らせていない時しか呼ばれないようになってる。
なのでそれを強制的に呼ばせるようにメソッド追加した。

* Outlinerでアクティブ化しなくても常時表示されるようにする [#a23bb312]
+ リアルタイム更新と同じ方法でc++のクラスを作るまで。
+ ソースコードのコンストラクタに下記みたいな感じにする
 AMyEQSTestingPawn::AMyEQSTestingPawn(const FObjectInitializer& ObjectInitializer)
 	: Super(ObjectInitializer)
 {
 	GetEdRenderComp()->bDrawOnlyWhenSelected = false;
 }
+ エディターに戻ってCompile.
+ これでOutlinerで選択しなくても常時表示されるようになる

* おまけ [#a6d2f3d6]
上記2つをやると、ChildActorComponentにくっつけると一緒に動きながら表示できるようになる。
&ref(eqs_testing_pawn05.png,,70%);

    ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS