mirror of
https://github.com/storytold/storyteller-bevy.git
synced 2026-10-16 00:03:29 +00:00
6ca2a992e5
This PR integrates asset retrieval from the Storyteller.ai back-end API, and begins implementing long-term scene saving and storage. ### Media retrieval Instead of fetching raw asset URLs, going forward, media files from remote sources (e.g., in URL parameters) should be specified with a path like the following: ``` remote://<token>.<filetype> ``` where * `token` is a media token (e.g., "m_70b77neq9jsgmy5v31mekzchcbd223") * `filetype` is a file extension appropriate for the type of file being fetched (e.g., "gltf") The `remote` protocol will be recognized by a [custom asset reader](https://github.com/storytold/storyteller-bevy/blob/70726db111f6ccafd47feb055c5546540fef1786/studio/src/remote/reader.rs) which will retrieve the file by calling a Storyteller API endpoint. ### Scene storage Additionally, this PR begins laying the groundwork for storing/retrieving Bevy scenes to/from the backend instead of solely in-memory. This work is still incomplete -- as of this PR, a button has been added to the web UI allowing the user to download the scene file locally for testing/debugging purposes. ### Test URL Media retrieval from the backend can be tested by [visiting this URL](https://deploy-preview-49--storyteller-studio.netlify.app/?mode=viewer&mixamo=remote://m_70b77neq9jsgmy5v31mekzchcbd223.gltf) in Chrome with the `--disable-web-security` flag (to bypass CORS errors)
37 lines
521 B
SCSS
37 lines
521 B
SCSS
:host {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 0.75rem;
|
|
padding: 0.5rem 1rem;
|
|
border-radius: 0.5rem;
|
|
|
|
font: {
|
|
family: "Fira Sans", sans-serif;
|
|
size: 15px;
|
|
weight: 500;
|
|
}
|
|
line-height: 1.5;
|
|
|
|
pointer-events: auto;
|
|
cursor: pointer;
|
|
user-select: none;
|
|
|
|
background: #0006;
|
|
color: #FFFC;
|
|
backdrop-filter: blur(16px);
|
|
transition: {
|
|
property: background, color;
|
|
duration: 0.1s;
|
|
timing-function: linear;
|
|
}
|
|
}
|
|
|
|
:host(:hover) {
|
|
background: #0008;
|
|
color: #FFFF;
|
|
}
|
|
|
|
.icon {
|
|
fill: currentColor;
|
|
}
|