use bevy::{
math::{mat3, vec2, vec3, Mat3},
prelude::*,
};
#[derive(Debug, Clone, Copy)]
pub struct TileProjection {
pub projection: Mat3,
pub tile_anchor_point: Vec2,
}
pub const IDENTITY: TileProjection = TileProjection {
projection: mat3(
vec3(1.0, 0.0, 0.0),
vec3(0.0, -1.0, 0.0),
vec3(0.0, 0.0, 1.0),
),
tile_anchor_point: vec2(0.0, 0.0),
};
pub const AXONOMETRIC: TileProjection = TileProjection {
projection: mat3(
vec3(0.5, -0.5, 0.5),
vec3(0.5, 0.5, -0.5),
vec3(0.0, -1.0, 0.0),
),
tile_anchor_point: vec2(0.0, 0.5),
};