Open3
[Resonite]タイマーに使えそうなコンポーネント&ProtoFlux一覧
AuthorityTimeBase
-
概要:ワールド時間を生成・操作する基準クロック。
BaseSpeedで進み方を加速/逆転し、_actualOffsetで任意のゼロ点を設定できる。自身をソースにするとDouble値の現在時刻を取得でき、一括ポーズやスローモーション演出に最適。 - 公式URL:https://wiki.resonite.com/Component:AuthorityTimeBase
-
カテゴリ:
Components > Utility - メモ:時間経過を管理するのに便利。一時停止やリスタート、巻き戻しもできる。(下に別途使い方メモあり)
CurrentDateTimeTextDriver
-
概要:システム日時を取得し、C#
DateTime書式で整形して指定テキストに出力するドライバ。Patternで書式指定、UseUTCでUTC/ローカル切替が可能。リアルタイム時計や日付表示パネルを手軽に作成可能。 - 公式URL:https://wiki.resonite.com/Component:CurrentDateTimeTextDriver
-
カテゴリ:
Components > Utility - メモ:手っ取り早く現在の時間を文字列で表示するのに便利
TextCountdownClock
-
概要:
CountdownTimeに「T+残り秒数」を書くとh:mm:ss形式でカウントダウン表示するタイマー。AllowNegativeで0以下も継続、TextTargetにTextRenderer.Textを接続するだけで動作。制限時間UIに最適。 - 公式URL:https://wiki.resonite.com/Component:TextCountdownClock
-
カテゴリ:
Components > Utility - メモ:テキストで表示するカウントダウンを作るには一番簡単
Panner(1D / 2D / 3D / 4D)
-
概要:
_speedと_repeatで決めた範囲を連続ループまたはPingPongしながら値を変化させるドライバ。UVスクロール、位置アニメ、発光強度の周期変化など「同じ動きを繰り返す」場面で活躍。 - 公式URL:https://wiki.resonite.com/Component:Panner1D(※2~4D も同様のURL末尾)
-
カテゴリ:
Components > Transform > Drivers - メモ:同じ動きを繰り返す場面で活躍、まさにそれ
Spinner
-
概要:対象の
RotationをFloat3速度で恒常回転させるコンポーネント。Rangeで角度上限を設定すると到達時に0へ巻き戻る。風車や車輪、UIダイヤルなど「一定速度で回す」演出を簡単に実装可能。 - 公式URL:https://wiki.resonite.com/Component:Spinner
-
カテゴリ:
Components > Transform > Drivers - メモ:一定速度で回転させる用
AxisPanner
-
概要:指定
Axis方向にSpeedで移動距離Rangeを往復させるパンナー。TimeBaseにAuthorityTimeBase等を指定すれば時間操作と同期可能。PositionとScaleを同時に駆動でき、動く床や昇降機に便利。 - 公式URL:https://wiki.resonite.com/Component:AxisPanner
-
カテゴリ:
Components > Transform > Drivers - メモ:AuthorityTimeBaseとの相性最高
「AuthorityTimeBase」の使い方
■ 概要
AuthorityTimeBase(オーサリティタイムベース)は、時間経過を取得するための便利なコンポーネント。
うまく使うと「カウントアップ」「カウント停止」「カウントダウン」などが簡単に作れる。
■ 基本の使い方
-
AuthorityTimeBaseを任意のスロットに追加。
- コンポーネントの場所
- Components>Utility>AuthorityTimeBase
- 公式Wiki
- コンポーネントの場所
- Fluxツールを装備してコンポーネント名部分をGrabしコンテキストメニューから
Sourceを選択するとdouble型の時間値を取得できる。
-
Base Speedを
1.0に設定すると、1秒に1ずつ増加するカウンターになる。-
Base Speed = 0でカウント停止。 -
Base Speed = 12で1秒に12増加。 -
Base Speed = -1で1秒に-1ずつ減少。
-
■ ProtoFluxでの初期化
-
ValueWriteノードを使ってAuthorityTimeBaseの値を0で書き込めば初期化できる。 -
この値は
double型なので、同じ型で書き込みを行う。 -
同時にタイマーを止めたければ
Base Speedにも0で書きこむ。(float型)
`)
■ ボタンでの操作(コンポーネントベース)
操作用ボタンを3つ用意:
- 再生ボタン(カウント開始)
- 一時停止ボタン(カウント停止)
- リセットボタン(完全初期化)

各ボタンの処理
● 再生(Base Speed = 1)
-
ButtonValueSetを使って、Base Speedに1.0をセット。
● 一時停止(Base Speed = 0)
- 同じく
ButtonValueSetで0.0をセット。
● リセット(全項目 = 0)
完全に初期化したいときは以下3項目すべてを 0 にする:
-
Base Speed(float) -
Active Speed(float) -
Offset(double)
これにより、完全に状態がリセットされて再スタートできる。
■ コンポーネントでカウント値の表示
手順:
-
ValueTextFormatDriverを使用してdouble型の値をテキストに変化する
- ただし
AuthorityTimeBaseから値を直接ValueTextFormatDriverに渡すのはできないのでいったんValueField<double>を用意して、中継する。
構成:

[AuthorityTimeBase] → [ValueDriver<double>] → [ValueField<double>] → [ValueTextFormatDriver]
-
ValueDriverで AuthorityTimeBase の値をValueFieldにドライブする。 -
ValueTextFormatDriverでValueField<double>の値をテキスト表示する。 -
Formatに{0}と入力すれば値が表示される。
■ 注意点と補足
-
AuthorityTimeBaseは内部的に「ワールド経過時間」を元に動作しており、再生・停止のたびにOffsetを自動調整してくれる。 - そのため、頻繁な再生・停止にも違和感なくスムーズに動作する。
タイマーで使えそうなProtoFlux
Stopwatch
-
概要:Start/Stop/Reset で経過秒を計測するストップウォッチ。走行中は
Timeが増え、停止で値を保持、Reset で 0 に戻る。 - 公式URL:https://wiki.resonite.com/ProtoFlux:Stopwatch
- カテゴリ:ProtoFlux > Time
-
メモ:まさにストップウォッチが簡単に作れる
World_Time_Double
- 概要:ワールドが開いてからの累計経過時間を秒(double)で連続出力するグローバル時計。
- 公式URL:https://wiki.resonite.com/ProtoFlux:World_Time_Double
- カテゴリ:ProtoFlux > Time
-
メモ:経過時間の管理とかでよく使う。Tの値を保持、後で改めてTの値を取得し保持していいた値と比較すれば経過時間がとれる。
TimeSpan_From_Seconds
-
概要:秒数(double)を
TimeSpan型に変換するノード。後続の TimeSpan 系処理や書式化を行う際の入口として使う。 - 公式URL:https://wiki.resonite.com/ProtoFlux:TimeSpan_From_Seconds
- カテゴリ:ProtoFlux > Time > TimeSpan
-
メモ:Tとセットでよく使う
TimeSpan_Seconds
-
概要:
TimeSpanから「秒」成分のみを int で抽出するノード。 - 公式URL:https://wiki.resonite.com/ProtoFlux:TimeSpan_Seconds
- カテゴリ:ProtoFlux > Time > TimeSpan
-
メモ:最終的に文字列として整形したいときによく使う。同じカテゴリに分、日、時、などがある。
To_String
- 概要:任意の値を文字列へ変換する汎用ノード。
- 公式URL:https://wiki.resonite.com/ProtoFlux:To_String
- カテゴリ:ProtoFlux > Strings
-
メモ:最終的に文字列可するときに使う。桁数を揃えたいとき仮に2桁ならFormatに
d2と入れればいい。
Fire_On_True
-
概要:
Boolがtrueになった瞬間にOnChangedを発火する。特定ユーザー限定監視もでき、条件付きトリガーを簡単に組める。 - 公式URL:https://wiki.resonite.com/ProtoFlux:Fire_On_True
- カテゴリ:ProtoFlux > Flow
-
メモ:時間になったらアラームを鳴らしたい、なんて時に使える。