2017-04-21 6 views
0

ここに私の問題があります。私はすぐに行く関数を作成しようとしているだけでなく、ループを完了させると言う二番目のexec出力を持っています。[Unreal Engine 4] 2人の幹部が一緒に働くノードを作る

私はこれでこの作業を試みました:thread i googled

私はこのエラーを得て受け入れ答えでそれをやってみたら、私の問題があるしかし:

E0434 a reference of type "TEnumAsByte<EMyEnum> &" (not const-qualified) cannot be initialized with a value of type "EMyEnum" 

はfurthere以下が二答え、仕事があるが、それは常に最後の可能pin.Inフォームを消灯行きます私はそれの下に常に "FinishOutput"を発射する。私は両方のピンから出力するコードを強制することができます何らかの方法はありますか?ここでは、それは私のコードでどのように見えるかです:

.hファイル

UENUM(BlueprintType) 
enum class EMyEnum : uint8 
{ 
    Output, 
    FinishOutput 
}; 

UFUNCTION(BLueprintCallable, Category = "Test", Meta = (ExpandEnumAsExecs = "Branches")) 
     static void OutputTest(TEnumAsByte<EMyEnum>& Branches); 

それは、複数のExecの出力を持つことができますので、私は、マクロになるだろう

void UAudioController::OutputTest(TEnumAsByte<EMyEnum>& Branches) 
{ 
     Branches = EMyEnum::Output; 
//some code to execute before second output 
     Branches = EMyEnum::FinishOutput; 

} 
+0

ExpandEnumAsExecsは、排他的に1つの出力を選択します。 Blueprintシステムは、C++関数の最後に 'Branches'値をチェックし、BPノードからの1つの出力だけを起動します。私はあなたにお勧めします: 1)2つの別々のノードにコードを分割し、 'Sequence' Blueprintノードまたは と組み合わせてください。2)カスタムイベントで専用UObjectを作成します。それらのイベントをあなたの青写真にバインドして、C++から次々に発射することができます。 – JKovalsky

+0

それは私に良い音:3確かにそれを試してみよう! –

答えて

1

.cppファイル。これはコードではなく、青写真にあります。

+0

それは便利なヒントです。私はそれをすべてのコードにしたかったが、マクロがもっと簡単になるようだ。 –

関連する問題