タイトル: 毎秒実行するイベントの定義方法
SEOタイトル: UE5で毎秒実行するイベントの定義方法
Unreal Engine 5(UE5)で特定の処理を毎秒実行 する方法はいくつかあります。この記事では、最も一般的な2つの方法を詳しく解説します。
方法1: Event Tick を使用する
Event Tick は毎フレーム実行されるため、時間を管理することで1秒ごと にイベントを発火させることが可能です。
手順
1. 変数 Elapsed Time(float型) を作成
2. `Event Tick` で Delta Time を `Elapsed Time` に加算
3. `Elapsed Time` が `1.0` 秒以上なら処理を実行し、`Elapsed Time` をリセット
Blueprint の流れ
Event Tick(毎フレーム実行)
↓
Elapsed Time += Delta Time
↓
Elapsed Time >= 1.0 ?
→ Yes: 処理を実行し、Elapsed Time を 0 にリセット
→ No: 何もしない
メリット
✅ フレームレートに依存せず 正確な間隔で実行できる
✅ 時間の累積を管理しやすい
方法2: Set Timer by Event を使用する(推奨)
Set Timer by Event を使用すると、1秒ごと に自動的にイベントを発火させることができます。
手順
1. `Begin Play` で `Set Timer by Event` を設定
2. **間隔を `1.0` 秒に設定**
3. 実行したい処理を Custom Event に記述
Blueprint の流れ
Begin Play
↓
Set Timer by Event(間隔: 1秒, ループ: true)
↓
Custom Event(1秒ごとに実行)
メリット
✅ Event Tick を使わない ので処理負荷が低い
✅ `Pause Timer` や `Clear Timer` で一時停止・停止が可能
どちらの方法を選ぶべき?
✅ **正確に1秒ごとに実行したい** → **Set Timer by Event(方法2)がおすすめ**
✅ **時間の経過を管理しながら実行したい** → **Event Tick + Delta Time(方法1)**
どちらの方法も用途に応じて活用し、最適なイベント管理を行いましょう!