This repository has been archived by the owner on Oct 6, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 23
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add a globe to the homepage which kicks ASS
- Loading branch information
Showing
8 changed files
with
151 additions
and
2 deletions.
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
// Handles loading the events for <model-viewer>'s slotted progress bar | ||
const onProgress = (event) => { | ||
const progressBar = event.target.querySelector('.progress-bar'); | ||
const updatingBar = event.target.querySelector('.update-bar'); | ||
updatingBar.style.width = `${event.detail.totalProgress * 100}%`; | ||
if (event.detail.totalProgress === 1) { | ||
progressBar.classList.add('hide'); | ||
event.target.removeEventListener('progress', onProgress); | ||
} else { | ||
progressBar.classList.remove('hide'); | ||
} | ||
}; | ||
document.querySelector('model-viewer').addEventListener('progress', onProgress); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<model-viewer src="earth.gltf" ar ar-modes="webxr scene-viewer quick-look" camera-controls poster="poster.webp" shadow-intensity="1" exposure="0.5" camera-orbit="-458.1deg 66.27deg 0.1432m" field-of-view="30deg" auto-rotate> | ||
<div class="progress-bar hide" slot="progress-bar"> | ||
<div class="update-bar"></div> | ||
</div> | ||
<button slot="ar-button" id="ar-button"> | ||
View in your space | ||
</button> | ||
<div id="ar-prompt"> | ||
<img src="https://modelviewer.dev/shared-assets/icons/hand.png"> | ||
</div> | ||
</model-viewer> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
:not(:defined) > * { | ||
display: none; | ||
} | ||
|
||
html { | ||
height: 100%; | ||
} | ||
|
||
body { | ||
margin: 0; | ||
padding: 0; | ||
width: 100%; | ||
height: 100%; | ||
} | ||
|
||
model-viewer { | ||
width: 100%; | ||
height: 90%; | ||
background-color: #ffffff; | ||
} | ||
|
||
|
||
.progress-bar { | ||
display: block; | ||
width: 33%; | ||
height: 10%; | ||
max-height: 2%; | ||
position: absolute; | ||
left: 50%; | ||
top: 50%; | ||
transform: translate3d(-50%, -50%, 0); | ||
border-radius: 25px; | ||
box-shadow: 0px 3px 10px 3px rgba(0, 0, 0, 0.5), 0px 0px 5px 1px rgba(0, 0, 0, 0.6); | ||
border: 1px solid rgba(255, 255, 255, 0.9); | ||
background-color: rgba(0, 0, 0, 0.5); | ||
} | ||
|
||
.progress-bar.hide { | ||
visibility: hidden; | ||
transition: visibility 0.3s; | ||
} | ||
|
||
.update-bar { | ||
background-color: rgba(255, 255, 255, 0.9); | ||
width: 0%; | ||
height: 100%; | ||
border-radius: 25px; | ||
float: left; | ||
transition: width 0.3s; | ||
} | ||
|
||
#ar-button { | ||
background-image: url(ar_icon.png); | ||
background-repeat: no-repeat; | ||
background-size: 20px 20px; | ||
background-position: 12px 50%; | ||
background-color: #fff; | ||
position: absolute; | ||
left: 50%; | ||
transform: translateX(-50%); | ||
white-space: nowrap; | ||
bottom: 16px; | ||
padding: 0px 16px 0px 40px; | ||
font-family: Roboto Regular, Helvetica Neue, sans-serif; | ||
font-size: 14px; | ||
color:#4285f4; | ||
height: 36px; | ||
line-height: 36px; | ||
border-radius: 18px; | ||
border: 1px solid #DADCE0; | ||
} | ||
|
||
#ar-button:active { | ||
background-color: #E8EAED; | ||
} | ||
|
||
#ar-button:focus { | ||
outline: none; | ||
} | ||
|
||
#ar-button:focus-visible { | ||
outline: 1px solid #4285f4; | ||
} | ||
|
||
@keyframes circle { | ||
from { transform: translateX(-50%) rotate(0deg) translateX(50px) rotate(0deg); } | ||
to { transform: translateX(-50%) rotate(360deg) translateX(50px) rotate(-360deg); } | ||
} | ||
|
||
@keyframes elongate { | ||
from { transform: translateX(100px); } | ||
to { transform: translateX(-100px); } | ||
} | ||
|
||
model-viewer > #ar-prompt { | ||
position: absolute; | ||
left: 50%; | ||
bottom: 60px; | ||
animation: elongate 2s infinite ease-in-out alternate; | ||
display: none; | ||
} | ||
|
||
model-viewer[ar-status="session-started"] > #ar-prompt { | ||
display: block; | ||
} | ||
|
||
model-viewer > #ar-prompt > img { | ||
animation: circle 4s linear infinite; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters