サンプルコード
URLに~?visible=false
というパラメターが付与されていた場合に、編集画面でアセット名myTargetObject
を持つオブジェクトを非表示にするサンプルコードです。
function init() { // 非表示の対象となるmyTargetObjectという名前を持つアセットを取得 const myTargetObjects = window.PALANAR.arAssets.filter(asset => asset.name === "myTargetObject") // URLのparamsを取得し、visibleがfalseであればmyTargetObjects[0]を非表示にする const urlParams = new URLSearchParams(window.location.search) const visible = urlParams.get('visible') if(visible === "false") { myTargetObjects[0].object3D.visible = false } } let timerCount = 0 window.onload = () => { // three.jsの描画の準備ができるまでwindow.PALANARは空のためsetIntervalで待ちます const timer = setInterval(() => { if(window.PALANAR && window.PALANAR.arAssets.length > 0) { clearInterval(timer) init() return } timerCount++ if(timerCount >= 30) { clearInterval(timer) alert("正常に読み込みが出来ませんでした。") } }, 1000) }
特定のアセットを取得する際は、コード内で指定しているname
と、
編集画面でアップロードした素材の名前が一致していることを確認してください。
オブジェクトの読み込みが完了すると window.PALANAR
に情報が格納されて操作が可能になるため、
読み込み完了を待つ window.onload = () => {...}
内の timer
処理は必要となります。init()
関数以降は任意の処理を記述いただけます。
編集画面と体験画面
非表示にしたいオブジェクトの名前を myTargetObject にします。
?visible=false
を付けたURLで体験画面にアクセスすると、名前を myTargetObject にしたオブジェクトが非表示になります。
コメント
0件のコメント
記事コメントは受け付けていません。