録画された動画とともに表示されるタイムラインにイベントを追加する機能です。
詳細は
Steamタイムライン、およびこのページの一番下のダイアグラム参照してください。
メンバー関数
ISteamTimeline
のメンバー関数は、グローバルアクセサー関数の
SteamTimeline
経由で呼び出されます。
SetTimelineStateDescription
void SetTimelineStateDescription( const char *pchDescription, float flTimeDelta );
名前 | 型 | 説明 |
pchDescription | const char * | SteamUtils()->GetSteamUILanguage() によって返される言語のローカライズされた文字列 |
flTimeDelta | float | この状態変更に適用する時間オフセット(秒単位)。 負の値は、過去に発生した イベントを示します。 |
タイムライン内の現在のゲーム状態の説明
(B)を設定します。
これらは、ユーザーがクリップを保存する際に、タイムライン上で特定の瞬間を見つけるのに役立ちます。
新しい状態の説明を設定すると、以前の説明が置き換えられます。
例として次のようなものがあります。
- シングルプレイヤーゲームにおけるワールド内のユーザーの位置
- マルチプレイヤーゲームにおけるラウンドのカウント
- スポーツゲームの現在のスコア
ClearTimelineStateDescription
void ClearTimelineStateDescription( float flTimeDelta );
名前 | 型 | 説明 |
flTimeDelta | float | この状態変更に適用する時間オフセット(秒単位)。 負の値は、過去に発生した イベントを示します。 |
タイムラインで以前に設定したゲームの状態をクリアします。
AddTimelineEvent
void AddTimelineEvent( const char *pchIcon, const char *pchTitle, const char *pchDescription, uint32 unPriority, float flStartOffsetSeconds, float flDurationSeconds, ETimelineEventClipPriority ePossibleClip ) ;
名前 | 型 | 説明 |
pchIcon | const char * | この時点でタイムラインに表示するアイコンの名前。 これは、ゲームのSteamworksパートナーサイトを通じてアップロードされたアイコンの1つ、またはシステムが提供するsteam_ で始まるアイコンの1つになります。 Steamタイムラインの概要で利用可能なアイコンのリストを参照してください。 |
pchTitle | const char * | SteamUtils()->GetSteamUILanguage() によって返される言語にローカライズされた、ゲーム提供の文字列。 |
pchDescription | const char * | SteamUtils()->GetSteamUILanguage() によって返される言語にローカライズされた、ゲーム提供の文字列。 |
unPriority | uint32 | タイムラインでアイコンが密集する場合に、どのアイコンを表示するかをUIが決定する際に使用される優先度を指定します。 優先度の値が大きいイベントは、優先度の値が小さいイベントよりも目立つように表示されます。 この値は0からk_unMaxTimelinePriority の間でなければなりません。 |
flStartOffsetSeconds | float | イベント開始に適用する時間オフセット(秒単位)。 負の時間は過去の イベントを示します。
このパラメーターの用途の1つは、後になって初めてその重要性が明らかになるイベントの処理です。 例えば、プレイヤーが他のプレイヤーに対して時間の経過とともにダメージ効果を発揮する攻撃を開始し、3.5秒後にそのプレイヤーが死亡する場合、ゲームは開始オフセットとして-3.5を渡し、効果を開始した時点からタイムラインにイベントが表示されるようにすることができます。 |
flDurationSeconds | float | イベントの持続時間(秒単位)。 即時イベントの場合は0を渡します。 |
ePossibleClip | ETimelineEventClipPriority | 動画クリップとしてユーザーに推奨しうるイベントをゲーム側から説明できるようにします。 |
これを使用すると、タイムライン上にイベント
(A)がマークされます。 イベントは、flDurationSecondsに渡された値に応じて、瞬時にマークされる場合もあれば、完了するまでに一定の時間を要する場合もあります。
例として次のようなものがあります。
- ボス戦
- カットシーン
- 大規模なチームファイト
- 新しい武器や弾薬を拾う
- ゴールを決める
ゲームは、
k_ETimelineEventClipPriority_Standard
または
k_ETimelineEventClipPriority_Featured
を
ePossibleClip
に渡すことで、クリップに適したイベントを推奨します。 プレイヤーはいつでも自分でクリップを作成できますが、これにより、ゲームがSteamにいくつかのオプションを提案し、プレイヤーにとってクリップ作成プロセスがより簡単になります。
SetTimelineGameMode
void SetTimelineGameMode( ETimelineGameMode eMode );
タイムラインバーの色を変更します
(C)。 各値の使い方は、
ETimelineGameModeを参照してください。
Enums
これらは、ISteamTimelineで使用するために定義された列挙型です。
ETimelineGameMode
タイムラインバーのセグメントの色を制御します。
ここにリストされている値の名前は、マルチプレイヤーゲームにマップされます。
ユーザーは(メニューから)ゲームを開始し、まずはキャラクター選択ロビーがあるマルチプレイヤーセッションに参加し、その後でマルチプレイヤーセッションが始まります。 これらの値は任意のタイプのゲームにマップすることもできます。
町やダンジョンを訪れるシングルプレイヤーゲームでは、プレイヤーが町でアイテムを購入しているときを
k_ETimelineGameMode_Menus
に設定し、
ダンジョンのロード中を
k_ETimelineGameMode_Staging
に、ダンジョンでモンスターと戦っているときを
k_ETimelineGameMode_Playing
に設定することができます。
名前 | 値 | 説明 |
k_ETimelineGameMode_Playing | 1 | プレイヤーはゲームを完全にロードしプレイ中です。 |
k_ETimelineGameMode_Staging | 2 | プレイヤーはマルチプレイヤーロビーにいます。 |
k_ETimelineGameMode_LoadingScreen | 4 | プレイヤーはロード画面を待っています。 |
ETimelineEventClipPriority
AddTimelineEventで使用され、注目のイベントが通常のイベントの前に表示されます。
名前 | 値 | 説明 |
k_ETimelineEventClipPriority_None | 1 | このイベントはクリップには適していません。 |
k_ETimelineEventClipPriority_Standard | 2 | ユーザーはこのイベントを中心にクリップを作成する場合があります。 |
k_ETimelineEventClipPriority_Featured | 3 | プレイヤーはこのイベント周辺でクリップを作成する可能性が高く、それらのクリップはk_ETimelineEventClipPriority_Standard 優先度のクリップよりも目立たせる必要があります。 |
ダイアグラム