This makes the [New Bevy Renderer](#2535) the default (and only) renderer. The new renderer isn't _quite_ ready for the final release yet, but I want as many people as possible to start testing it so we can identify bugs and address feedback prior to release. The examples are all ported over and operational with a few exceptions: * I removed a good portion of the examples in the `shader` folder. We still have some work to do in order to make these examples possible / ergonomic / worthwhile: #3120 and "high level shader material plugins" are the big ones. This is a temporary measure. * Temporarily removed the multiple_windows example: doing this properly in the new renderer will require the upcoming "render targets" changes. Same goes for the render_to_texture example. * Removed z_sort_debug: entity visibility sort info is no longer available in app logic. we could do this on the "render app" side, but i dont consider it a priority.
27 lines
578 B
Rust
27 lines
578 B
Rust
use bevy_math::Vec2;
|
|
|
|
/// A rectangle defined by two points. There is no defined origin, so 0,0 could be anywhere
|
|
/// (top-left, bottom-left, etc)
|
|
#[repr(C)]
|
|
#[derive(Default, Clone, Copy, Debug)]
|
|
pub struct Rect {
|
|
/// The beginning point of the rect
|
|
pub min: Vec2,
|
|
/// The ending point of the rect
|
|
pub max: Vec2,
|
|
}
|
|
|
|
impl Rect {
|
|
pub fn width(&self) -> f32 {
|
|
self.max.x - self.min.x
|
|
}
|
|
|
|
pub fn height(&self) -> f32 {
|
|
self.max.y - self.min.y
|
|
}
|
|
|
|
pub fn size(&self) -> Vec2 {
|
|
Vec2::new(self.width(), self.height())
|
|
}
|
|
}
|