PresentationDocument.xml とは
PresentationDocument.xml とは
PresentationDocument.xml はプレゼン全体を定義します。プレゼンは複数ページを持ち、それぞれのページでアクションを実行できるようになっています。PowerPoint でいうところのスライドがページにあたり、ページをめくっていくことでプレゼンを行います。

ページアクションでは例えば以下のようなことが出来ます。
シーンの変更
スライドの表示
動画の再生
PresentationDocument.xml は XML という HTML に似た形式で書きます。
プレゼン定義ファイルの骨組み
プレゼン定義ファイルは以下のような骨組みになっています。
<Presentation Name="プレゼン名">
<Page Name="ページ名">
<!-- ページアクション -->
</Page>
<Page Name="ページ名">
<!-- ページアクション -->
</Page>
</Presentation>
ページを増やしたいときには <Page>~</Page>
をコピーすることで増やすことができます。
<!-- ページアクション -->
のところに、任意のページアクションを並べることでプレゼンの中身を構築できます。
ページアクション一覧
シーン変更
<ChangeScene Scene="シーン名" />
シーンは Hall_dome2
Ikebukuro
360Theater
Showroom
が指定できます。
プレゼン用アセットとはで作ったシーンも読み込めます。その場合のシーン名は .Windows
や .Android
を含まないファイル名となります。
スライド表示(静止画)
<Slide Target="スクリーンオブジェクトID" File="ファイル名" />
スクリーンオブジェクトID はシーンにあらかじめ置かれたスクリーンの ID を指定します。ファイル名はスライドのファイル名を指定します。ファイルは PresentationDocument.xml
と同じ階層においてください。
スライド(動画)
<Slide Target="スクリーンオブジェクトID" File="ファイル名" />
<PlaySlideVideo Target="スクリーンオブジェクトID" />
<StopSlideVideo Target="スクリーンオブジェクトID" />
スクリーンオブジェクトID はシーンにあらかじめ置かれたスクリーンの ID を指定します。ファイル名は動画のファイル名を指定します。対応しているのは mp4 です。
ファイルは PresentationDocument.xml
と同じ階層においてください。
<Slide>
は読み込み、<PlaySlideVideo>
が再生 <StopSlideVideo>
が停止です。読み込みと再生を別ページにすることで、読み込みによるラグを抑えることができます。
<Page Name="ビデオ読み込み">
<Slide Target="Screen" File="Video.mp4" />
</Page>
<Page Name="ビデオ再生">
<PlaySlideVideo Target="Screen" />
</Page>
<Page Name="ビデオ停止">
<StopSlideVideo Target="Screen" />
</Page>
<StopSlideVideo>
を忘れないようにしてください。欠けている場合ページを巻き戻す時に再生されません。
HUD 表示切り替え
<ShowHUDScreen Opacity="不透明度 0.0~1.0" />
<HideHUDScreen />
頭に追従する HUD の表示を切り替えます。HUD にスライドやビデオを表示するには、Target として HUDScreen
を指定してください。
VRビデオ
<LoadVRVideo Target="VRスクリーンオブジェクトID" StereoFormat="3D方式" File="動画ファイル名" />
<PlayVRVideo Target="VRスクリーンオブジェクトID" />
<StopVRVideo Target="VRスクリーンオブジェクトID" />
スライドとほぼ同じで、360動画を読み込みます。
ファイルは PresentationDocument.xml
と同じ階層においてください。
StereoFormat には以下の値を設定出来ます。
none : 視差なし
sidebyside : 左右分割
overunder : 上下分割
<StopVRVideo>
を忘れないようにしてください。欠けている場合ページを巻き戻す時に再生されません。
アニメーション
<AnimBool Target="Animator のついたオブジェクトID" Param="パラメータ名" Value="True|False" />
シーンに置かれたオンオフのアニメーションを実行することができます。True と False は対になるようにしておくと、ページを巻き戻す時でもきちんと動きます。
警告エリア
<ShowWarning Target="ターゲット名(任意)" X="X位置" Y="Y位置" Z="Z位置" Width="幅(Xスケール)" Height="高さ(Yスケール)" Depth="奥行き(Zスケール)" />
<HideWarning Target="ターゲット名" />
警告エリアを表示・非表示にします。ターゲット名はシーンに置かれているものと被らなければ任意です。
プレハブ読み込み
プレゼン用アセットとはで作ったプレハブを読み込みます。
<LoadPrefab ID="ID(任意のもの)" Prefab="プレハブ名" X="X位置" Y="Y位置" Z="Z位置" Rotation="回転(度)" />
<UnloadPrefab ID="ID" />
プレハブ名は .Windows
や .Android
を含まないファイル名です。
オブジェクトの表示・非表示切替
<SetActive Target="ターゲット名(任意)" Value="True|False" />
指定したターゲット名のオブジェクトの表示(True)、非表示(False)を切り替えます。
シーンロード時対象のオブジェクトがアクティブである必要があります。
トランジションアニメーションの変更
<SetTransition Target="ターゲット名(任意)" Pattern="任意の値" />
指定した値に該当するトランジションアニメーションに切り替えます。以降ChangeSceneを実行すると指定したアニメーションでトランジションアニメーションが再生されます。
Pattern
アニメーション
0
アニメーションなし
1
ウォールトランジション
2
ゼリートランジション
3
ブリンクトランジション
4
ムービートランジション
全天球画像の読込・表示
<LoadPanoramicPicture Target="ターゲット名(任意)" Left="左目画像" Right="右目画像" Layout="2D|3D"/>
<PlayPanoramicPicture Target="ターゲット名(任意)" FadeTime="フェードイン/アウトの時間(sec)"/>
<StopPanoramicPicture Target="ターゲット名(任意)" FadeTime="フェードイン/アウトの時間(sec)"/>
全天球画像を読み込み、表示します。Layoutには2D、3Dのどちらかを指定します。
2D : 視差なし
3D : 視差あり
2D、3Dに応じて用意する画像の枚数が異なります。
Left : 左目画像 及び 2D指定時に表示する画像
Right : 右目画像
画像は事前に4分割した画像を用意しておく必要があります。

トランジションアニメーションの単体再生
<Transition Target="Transition" Param="Open|Close"/>
シーンを切り替えずトランジションアニメーションを再生します。再生するアニメーションはSetTransiitonで指定した内容に依存します。
Close : 開始アニメーションを実行
Open : 終了アニメーションを実行
アバターを半透明切替
<AvatarTransparentEnable/>
<AvatarTransparentDisable/>
アバターの表示を半透明/不透明に切り替えます。
エリアの移動
<MovePosition FromX="移動元X" FromY="移動元Y" FromZ="移動元Z" ToX="移動先X" ToY="移動先Y" ToZ="移動先Z" Width="横幅" Depth="奥行"/>
プレイエリアを移動します。移動元と移動先を指定します。範囲の長さ横幅は移動アニメーション中に表示される床のサイズを指定します。
移動エリアの表示
<ShowMovePosition FromX="移動元X" FromY="移動元Y" FromZ="移動元Z" ToX="移動先X" ToY="移動先Y" ToZ="移動先Z" Width="横幅" Depth="奥行"/>
指定した座標、サイズでエリアの表示を行います。
アプリケーションの名称、バージョン、ビルド日時を表示
<ShowAppInfo Target="ターゲット名(任意)" X="X座標" Y="Y座標" Z="Z座標"/>
<HideAppInfo Target="ターゲット名(任意)"/>
現在実行しているアプリケーションの名称、バージョン、ビルドした日付を画面上の任意の場所に表示します。
プレイエリアの変更
<PlayArea Width="幅" Height="高さ" Depth="奥行"/>
プレイエリアの領域を変更します。
トランジションVRビデオ
<LoadVRVideoForTransition StereoFormat="3D方式" File="動画ファイル名" />
トランジションに使用する、360動画を読み込みます。
ファイルは PresentationDocument.xml
と同じ階層においてください。
StereoFormat には以下の値を設定出来ます。
none : 視差なし
sidebyside : 左右分割
overunder : 上下分割
コントローラーを画面に表示/非表示
<ShowNavigationPanel/>
<HideNavigationPanel/>
オブジェクトを操作するコントローラーを画面に表示します。コントローラーの形状は教師役と生徒役で異なります。
コントローラーにイベントをアタッチ
<SetControllableObject TargetName="オブジェクトID"/>
コントローラーのボタンで操作するオブジェクトを設定します
TargetNameに割り当てるオブジェクトはControlableObjectを継承したクラスを持ったオブジェクトに限定されます。
コントローラーのボタンを無効
<DisableNavigationButton Param="ボタン"/>
指定したボタンを無効にします。
LeftArrow : 左矢印キー
RightArrow : 右矢印きー
TopArrow : 上矢印キー
DownArrow : 下矢印キー
Prev : 戻るキー
Next : 進むキー
6DoF/3DoF切り替え
<SwitchDoF DoF="DoFのモード" X="X座標" Y="Y座標" Z="Z座標" Time="切り替え時間1"/>
DoFには以下の値を設定します。
6DoF or3DoF
3DoFは指定した座標に移動して3DoFに切り替わります。6DoFでは座標は無視され、6DoFに戻ります。
アンケートの質問を追加する
<AddQuestion Text="質問文" Button1="回答1" Button2="回答2" Button3="回答3" Button4="回答4" Button5="回答5"/>
アンケートの質問を追加します。
アンケートを開始する
<StartQuestion/>
アンケートを開始します。表示される質問文、回答はAddQuestionで追加した順番です。
アンケートを終了する
<FinishQuestion/>
アンケートを終了します。
最終更新
役に立ちましたか?