feat(field): interface

This commit is contained in:
Nova
2022-06-11 15:44:56 -04:00
parent c0df71a40f
commit 8e5f8c0088
2 changed files with 8 additions and 0 deletions

View File

@@ -1,4 +1,5 @@
use super::scenegraph::Scenegraph; use super::scenegraph::Scenegraph;
use crate::nodes::field;
use crate::nodes::spatial; use crate::nodes::spatial;
use libstardustxr::messenger::Messenger; use libstardustxr::messenger::Messenger;
use mio::net::UnixStream; use mio::net::UnixStream;
@@ -17,6 +18,7 @@ impl<'a> Client<'a> {
}); });
client.scenegraph.set_client(&client); client.scenegraph.set_client(&client);
spatial::create_interface(client.clone()); spatial::create_interface(client.clone());
field::create_interface(client.clone());
client client
} }
pub fn dispatch(&self) -> Result<(), std::io::Error> { pub fn dispatch(&self) -> Result<(), std::io::Error> {

View File

@@ -1,5 +1,6 @@
use super::core::Node; use super::core::Node;
use super::spatial::Spatial; use super::spatial::Spatial;
use crate::core::client::Client;
use anyhow::{anyhow, ensure, Result}; use anyhow::{anyhow, ensure, Result};
use glam::{vec2, vec3a, Vec3, Vec3A}; use glam::{vec2, vec3a, Vec3, Vec3A};
use libstardustxr::flex_to_vec3; use libstardustxr::flex_to_vec3;
@@ -138,3 +139,8 @@ pub trait Field {
fn spatial_ref(&self) -> &Spatial; fn spatial_ref(&self) -> &Spatial;
} }
pub fn create_interface(client: Rc<Client>) {
let mut node = Node::create(Rc::downgrade(&client), "", "field", false);
client.get_scenegraph().add_node(node);
}