widgetの表示が更新されず、またactorがdestoryした際もクライアント側は残ったままになる | UE4&5 Forum | Tech Stadium Forum

widgetの表示が更新されず、またa...
 
通知
すべてクリア

widgetの表示が更新されず、またactorがdestoryした際もクライアント側は残ったままになる  

  RSS

Student
(@student)
メンバー Moderator
結合: 4年前
投稿: 1351
30/04/2023 8:55 am  

最終課題の制作の中での質問になります。

サーバーとクライアントで実行を試しながら進めているのですが、
widgetの表示が更新されず、またactorがdestoryした際もクライアント側は残ったままになります。
widget側のBPに追加したカスタムイベントをサーバーで実行にして、そのwidgetを読み込んでいるBP(今回はEnemyのBP)で常にアップデートしているのですが、
クライアント側に反映されるために必要な設定箇所のあたり等お教えいただく事は可能でしょうか。


引用
Teacher
(@admin)
メンバー Admin
結合: 5年前
投稿: 1318
30/04/2023 8:56 am  

EnemyBPのHP変数がレプリケーションされてるか確認してみてください。よろしくお願いいたします。
変数のレプリケーション項目がチェックされてないと変数が同期化されないです。


返信引用
Student
(@student)
メンバー Moderator
結合: 4年前
投稿: 1351
30/04/2023 8:56 am  

ありがとうございます。
BPでは意識できておりましたが、C++側でHPを実装していたためレプリケーションの意識ができていませんでした。
以下のプロパティと各種関数の設定をすることで同期できるようになりました。


UPROPERTY(Replicated)


float Current_HP;

void AEnemyCharacterBase::GetLifetimeReplicatedProps(TArray& OutLifetimeProps) const

{ Super::GetLifetimeReplicatedProps(OutLifetimeProps);

// リプリケートするプロパティを定義

DOREPLIFETIME(AEnemyCharacterBase, Current_HP);

}

また、widgetの削除処理についてですが、サーバーで実行をマルチキャストにしたところ解決いたしました。

This post was modified 2年前 by Student

返信引用
共有:
タイトルとURLをコピーしました