Brooks Palin
1ef2afc685
Added the ability to spawn a mannequin
2024-03-12 15:26:04 -06:00
Brooks Palin
ffba0b940f
Merge branch 'add-stuff-to-scene' into apply_animations
2024-03-12 00:42:46 -06:00
Brooks Palin
5e16a1197d
[BREAKING] BVH now loads into AnimationClips
2024-03-12 00:41:53 -06:00
Brandon Thomas
7d5c490874
CORS - add allowed frame ancestors for development
2024-03-10 05:13:48 -04:00
Brandon Thomas
9837363783
cleanup removal of iframe origin checks
2024-03-09 13:26:08 -05:00
Brandon Thomas
a958cc8283
remove origin checks - these might be the final CORS blockers
2024-03-09 13:10:08 -05:00
Brandon Thomas
b36ee00d73
frame-ancestors
2024-03-09 04:14:32 -05:00
Brandon Thomas
241c5cc25c
toml cors attempt 2 ( #85 )
2024-03-09 03:36:04 -05:00
Brandon Thomas
676b9f86a8
add netlify toml for CORS ( #84 )
2024-03-09 03:06:09 -05:00
Brandon Thomas
005b4fdba3
debug cors with logging ( #83 )
2024-03-09 02:45:48 -05:00
Brandon Thomas
26bbec58ec
cargo target documentation
2024-03-09 02:34:55 -05:00
Danny McGee
f07ac0c099
Replace calls to crypto.randomUUID
2024-03-08 19:58:20 -05:00
Danny McGee
9dfbcae134
Hotfix: Replace calls to crypto.randomUUID ( #82 )
...
`crypto.randomUUID` is only available in secure contexts (HTTPS), which
throws an error when trying to run in certain situations/browsers.
2024-03-08 19:56:19 -05:00
Brandon Thomas
33250e4627
fix CORS for certain hostnames ( #81 )
2024-03-08 18:34:33 -05:00
Danny McGee
f347ac783f
WIP Media Library dialog
2024-03-08 17:40:11 -05:00
Danny McGee
0642c1c370
Fix overlay issues
2024-03-08 17:39:13 -05:00
Danny McGee
e046e408b3
More endpoints
2024-03-08 17:37:07 -05:00
Danny McGee
30979fec96
Fix issues with framework decorators ( #79 )
...
This PR fixes issues with several of the decorator implementations in
`framework` and adds unit tests to specify and validate their
functionality.
2024-03-07 21:44:55 -05:00
Danny McGee
096e143d0a
Move super call
2024-03-07 21:37:19 -05:00
Danny McGee
78c2d0b294
session, media_files/list endpoints
2024-03-07 21:33:16 -05:00
Danny McGee
fc022b1b3a
Catch DOMException when accessing parent origin ( #80 )
2024-03-07 20:58:00 -05:00
Danny McGee
9b34a82323
Simple API wrapper
2024-03-07 19:26:01 -05:00
Danny McGee
326424347f
Move "Add to Scene" menu to studio-web
2024-03-07 14:58:32 -05:00
Danny McGee
0856caf0e0
Clean up trigger event handling
2024-03-07 14:47:23 -05:00
rewin
550a92eec1
Inspect for StandartMaterial ( #76 )
...
Allow to render StandartMaterial color and change in uniform way as
another components


2024-03-07 21:03:42 +03:00
Danny McGee
890ac13c2d
Fix build errors
2024-03-06 21:56:45 -05:00
Danny McGee
1ef112c232
Document URL params and app startup workflow ( #77 )
2024-03-06 21:38:11 -05:00
Danny McGee
7138320ac0
Cleanup
2024-03-06 21:37:40 -05:00
Danny McGee
a2c4c9eaac
Respect the autoClose property
2024-03-06 21:31:34 -05:00
Danny McGee
976e446f93
Formatting
2024-03-06 21:25:51 -05:00
Danny McGee
4a47b58f6e
Create "Add to Scene" menu
2024-03-06 21:19:28 -05:00
Danny McGee
183fab1d73
Low-hanging optimizations for CI pipelines ( #75 )
...
This PR attempts to avoid bankrupting the company by running 15 minutes
of unit tests on unchanged code or re-downloading
`@fortawesome/fontawesome-pro` 5 times for every PR commit.
2024-03-05 18:43:51 -05:00
Brooks Palin
9aaf15287a
Scaling Gizmo ( #72 )
...
This PR adds the Scaling Gizmo to the StoryTeller Engine.
Features
- Objects can now be scaled by Axis or Plane
Limitations
- Currently there is no implementation for combining the scale gizmo
with any of the other gizmo. This should be amended with further PRs.
Let me know if there is anything that I missed!
---------
Co-authored-by: Danny McGee <dannymcgee@gmail.com >
2024-03-05 16:16:01 -07:00
Danny McGee
970f5b25bd
Communication bridge to storyteller-frontend ( #74 )
...
This PR establishes a rudimentary communication protocol between
Storyteller Studio and the parent application (at fakeyou.com /
storyteller.ai) via the `Window.postMessage` API. An example of how this
protocol can be used from the parent application is here:
https://github.com/storytold/storyteller-frontend/commit/d36e2a9e5c162233d7bd194fdbaa26199bbf6f7a
2024-03-05 18:04:41 -05:00
rewin
add1e79fea
Logic for inspector field muts ( #73 )
...
Allow to send change events from typescript to bevy
Example (test)
```rust
CHANGE_FROM_UI.write_message(UpdateField {
component: "bevy_transform::components::transform::Transform".to_string(),
reflect_path: ".translation.x".to_string(),
value: 0.to_string(),
});
```
Function for typescript
```rust
#[wasm_bindgen(js_name = changeValue)]
pub fn change_value(msg: String) {
let Ok(msg) = serde_json::from_str::<UpdateField>(&msg) else {
error!("Failed to parse message: {}", msg);
return;
};
CHANGE_FROM_UI.write_message(msg);
}
```
2024-03-05 22:28:46 +03:00
Danny McGee
c9904a5293
Inspector frontend UI ( #68 )
...
This PR begins fleshing out the front-end UI for inspecting the selected
entity's components.
### Implemented
* Support for the `Name` component
* Placeholder/WIP support for the `Transform` component
### To-do
* Support for sending changes made in the inspector back to Bevy
* A slider/field combo widget for numeric values (can be adapted from
[this StackBlitz](https://stackblitz.com/edit/angular-wfikuy?file=src%2Ffloat-input%2Ffloat-input.component.ts ))
* Quat -> Euler angles conversion ([example math here](https://github.com/dannymcgee/3DGameMath/blob/5cb7a8ff9310565329e57751cd8b9c33e9bd4cb7/libs/Math/include/math/quat.inl.hpp#L56-L78 ),
or use a 3rd-party math library)
### Known issues
* Selecting entities from the hierarchy doesn't always update the
components list. I suspect this is the same issue as #39
2024-03-04 15:13:03 -05:00
Danny McGee
9875ea7cca
Progress bar for scene loading ( #71 )
2024-03-04 14:39:48 -05:00
rewin
3a27f3b881
Blocking buttons ( #69 )
...

---------
Co-authored-by: Danny McGee <dannymcgee@gmail.com >
2024-03-04 21:33:44 +03:00
Danny McGee
1f2bd9a6ae
Fix pipeline fails ( #70 )
...
* Removes some unused imports causing linter to fail
* Removes a redundant `InitAsset` variant that was accidentally included
in #57
2024-03-01 20:30:05 -05:00
Brooks Palin
e79a7d4f4c
Orbit Options ( #67 )
2024-03-01 00:51:12 -05:00
Brooks Palin
5cb23f0607
Headless mode Orbit ( #66 )
2024-03-01 00:20:32 -05:00
Brooks Palin
a2b2946678
Headless Mode fixes for the Backend ( #65 )
...
This PR brings some fixes that are needed for the backend to render
scenes.
2024-02-29 21:47:42 -07:00
Danny McGee
3413810773
Small batch of misc enhancements ( #64 )
...
This PR cherry-picks some improvements from #63 that are general-purpose
and not specifically related to IK.
* Some logic has been added to `AppElement` to track the currently
selected Scene Element
* `disabled` property has been added to `ButtonElement`, with custom
styling and accessibility features
* Tagging entities with their `SceneElement` type has been made more
robust and reliable (previously, it was possible for all entities to
appear in the hierarchy as "Generic" elements depending on the order of
system execution)
Additionally:
* Forces the Netlify CI pipeline to always used the latest stable Rust
version
2024-02-29 15:42:49 -05:00
rewin
ae88696213
Inspector: component view part ( #55 )
...
This PR allow to send entity components data to typescript with
inspector-dom event
Event data

Component register example

Read event example

This PR is the first step of new inspector backend logic
Next parts is:
- Allow to edit components fields
- Allow to show asset data (like show Handle<StandartMaterial> data)
- Allow to edit asset fields
2024-02-29 23:17:51 +03:00
Danny McGee
f31cf35da1
More Image Generator stuff ( #59 )
...
YOLO
2024-02-28 15:52:01 -05:00
Brandon Thomas
04ecc78059
fix ci script for demo ( #62 )
2024-02-28 15:50:12 -05:00
Danny McGee
61fa16bdba
Expose skeletal joints to frontend hierarchy ( #56 )
...
This PR exposes skeletal joint entities to the frontend hierarchy,
allowing the user to pose rigged models by selecting the joints and
transforming them.
Additionally, entity-type information (e.g., Mesh, Skeleton, Bone,
Light, etc.) has been added to the data structure passed to the
frontend, which is rendered with icons in the tree view.
2024-02-28 15:47:26 -05:00
Brandon Thomas
f938255426
CI build script for image gen demo ( #61 )
2024-02-28 15:39:38 -05:00
Danny McGee
d6c5d5d5bd
Image Generator Demo: UI/UX ( #58 )
...
This PR updates the UI/UX of the Image Generator Demo.
* Hierarchy moved to the left of the editor view instead of overlaying
it
* Hierarchy can now be resized
* Bevy canvas resizes trigger a screen-capture update
* Transform Toolbar now centered over the editor view instead of the
entire viewport
* Added Prompt and Seed text fields, with a refresh button for the Seed
2024-02-28 03:17:45 -05:00
Brooks Palin
343919a9f5
Allow Skybox to take a Color ( #57 )
...
This PR Adds the ability to set the color of the skybox using the URL
parameters.
- Now you can pass a color's hexadecimal number (without the #) in the
skybox parameter, and that will set the skybox to that color.
2024-02-28 00:11:37 -05:00