This commit is contained in:
rewin
2024-01-12 20:59:31 +03:00
parent 49db8a5fef
commit bd8cd88c50
5 changed files with 12 additions and 15 deletions
+5 -8
View File
@@ -1,10 +1,7 @@
use bevy::{math::Affine3A, prelude::*};
use bevy::prelude::*;
use bevy_mod_picking::prelude::*;
use crate::{
interaction::TransformSpace,
math::{IsNonUniform, MatrixExtras, VecExtras},
};
use crate::interaction::TransformSpace;
#[derive(Component, Reflect)]
pub(super) struct TransformGizmo {
@@ -35,7 +32,7 @@ impl TransformGizmoBundle {
let name = Name::new("TransformGizmo");
let marker = TransformGizmo {
target,
transform_space: space.clone()
transform_space: space
};
match space {
@@ -48,7 +45,7 @@ impl TransformGizmoBundle {
name,
marker,
spatial: SpatialBundle {
global_transform : GlobalTransform::from(transform.clone()),
global_transform : GlobalTransform::from(transform),
transform,
..default()
},
@@ -63,7 +60,7 @@ impl TransformGizmoBundle {
name,
marker,
spatial: SpatialBundle {
global_transform : GlobalTransform::from(transform.clone()),
global_transform : GlobalTransform::from(transform),
transform,
..default()
},
+2 -2
View File
@@ -146,7 +146,7 @@ fn spawn_gizmo(
fn sync_gizmo_transform(
mut cmd : Commands,
mut q_gizmo : Query<(&mut Transform, &TransformGizmo)>,
mut q_targets : Query<&GlobalTransform>
q_targets : Query<&GlobalTransform>
) {
for (mut transform, gizmo) in q_gizmo.iter_mut() {
if let Ok(target) = q_targets.get(gizmo.target) {
@@ -191,7 +191,7 @@ fn normalize_gizmo_scale(
let Ok(cam_xform) = q_cam_xform.get_single() else {
return;
};
let Ok((mut xform, world_xform)) = q_gizmo.get_single_mut() else {
let Ok((mut xform, _)) = q_gizmo.get_single_mut() else {
return;
};
+1 -1
View File
@@ -196,7 +196,7 @@ pub(super) fn on_rotation_start(
let hit_point = event.hit.position.unwrap();
cmd.entity(ent).insert((
InitialTransform(world_xform.clone()),
InitialTransform(*world_xform),
InitialHitPoint(hit_point),
LastHitPoint(hit_point),
LastRotation {
+2 -2
View File
@@ -1,9 +1,9 @@
use bevy::{
ecs::system::EntityCommands, math::vec3, pbr::NotShadowCaster, prelude::*,
math::vec3, pbr::NotShadowCaster, prelude::*,
render::view::RenderLayers,
};
use bevy_mod_picking::prelude::{
Drag, DragEnd, DragStart, Listener, ListenerInput, On, Out, Over, Pointer,
Drag, DragEnd, DragStart, Listener, On, Out, Over, Pointer,
};
use crate::{interaction::TransformSpace, MainCamera};
+2 -2
View File
@@ -84,10 +84,10 @@ pub fn init(viewport_size: ViewportSize) {
))
.add_systems(
Startup,
(move |mut cmd: Commands, mut ew: EventWriter<LoadSceneEvent>| {
move |mut cmd: Commands, mut ew: EventWriter<LoadSceneEvent>| {
cmd.insert_resource(SkyboxId("gum_trees_4k".to_string()));
ew.send(LoadSceneEvent("bookcase".to_string()));
})
}
);
// Only for registering components for undo