|
|
|
|
@ -1,7 +1,7 @@
|
|
|
|
|
|
|
|
|
|
use bevy::prelude::*;
|
|
|
|
|
use bevy::{pbr::wireframe::{Wireframe, WireframeColor}, prelude::*};
|
|
|
|
|
|
|
|
|
|
use crate::components::Velocity;
|
|
|
|
|
use crate::components::{ColliderDebug, Velocity, AABB};
|
|
|
|
|
|
|
|
|
|
pub(crate) fn update_movement(mut moving_objects: Query<(&Velocity, &mut Transform)>, time: Res<Time>)
|
|
|
|
|
{
|
|
|
|
|
@ -11,3 +11,44 @@ pub(crate) fn update_movement(mut moving_objects: Query<(&Velocity, &mut Transfo
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
pub(crate) fn update_colliders()
|
|
|
|
|
{
|
|
|
|
|
todo!()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
pub(crate) fn debug_draw_aabbs(
|
|
|
|
|
mut commands: Commands,
|
|
|
|
|
aabbs: Query<&AABB>,
|
|
|
|
|
mut meshes: ResMut<Assets<Mesh>>,
|
|
|
|
|
mut materials: ResMut<Assets<StandardMaterial>>
|
|
|
|
|
){
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// TODO: Spawn one of these for each collider in the scene,
|
|
|
|
|
// need to set the scale, rotation and translation to match the AABB
|
|
|
|
|
|
|
|
|
|
// TEST CUBE
|
|
|
|
|
// Spawns a cube with a colored wireframe and partially transparent body
|
|
|
|
|
// Should be able to update the material on the fly to change the colors
|
|
|
|
|
// to red when the AABB is intersecting another AABB
|
|
|
|
|
let cube_mesh_handle: Handle<Mesh> = meshes.add(Cuboid::default());
|
|
|
|
|
commands.spawn((PbrBundle {
|
|
|
|
|
mesh: cube_mesh_handle,
|
|
|
|
|
material: materials.add(StandardMaterial {
|
|
|
|
|
base_color: Color::Rgba { red: 0.0, green: 1.0, blue: 0.0, alpha: 0.25 },
|
|
|
|
|
alpha_mode: AlphaMode::Blend,
|
|
|
|
|
..default()
|
|
|
|
|
}),
|
|
|
|
|
transform: Transform::from_xyz(0.0, 7.25, -1.0)
|
|
|
|
|
//.with_rotation(Quat::from_rotation_y(45.0))
|
|
|
|
|
.with_rotation(Quat::from_rotation_x(45.0)),
|
|
|
|
|
..default()
|
|
|
|
|
},
|
|
|
|
|
Wireframe, WireframeColor { color: Color::GREEN },
|
|
|
|
|
));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
pub(crate) fn debug_update_colliders(colliders: Query<&ColliderDebug>)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|