Fixed sprite rotation

master
Mark 2024-01-14 10:38:07 -08:00
parent 6406fd8786
commit 0289031c88
Signed by: Mark
GPG Key ID: C6D63995FE72FD80
2 changed files with 7 additions and 7 deletions

View File

@ -48,10 +48,10 @@ fn vertex_main(
vertex.position.y * scale
);
// Apply rotation
// Apply rotation (and adjust sprite angle, since sprites point north)
pos = mat2x2(
vec2(cos(instance.angle), sin(instance.angle)),
vec2(-sin(instance.angle), cos(instance.angle))
vec2(cos(instance.angle - 1.5708), sin(instance.angle - 1.5708)),
vec2(-sin(instance.angle - 1.5708), cos(instance.angle - 1.5708))
) * pos;
// Correct for screen aspect, preserving height

View File

@ -227,7 +227,7 @@ impl Radar {
(radar_size / -2.0 - 10.0) + d.y,
)
.into(),
angle: 0.0,
angle: to_radians(90.0),
size,
color,
sprite_index: sprite.get_index(),
@ -245,7 +245,7 @@ impl Radar {
(radar_size / -2.0 - 10.0) - d.y,
)
.into(),
angle: to_radians(90.0),
angle: to_radians(180.0),
size,
color,
sprite_index: sprite.get_index(),
@ -263,7 +263,7 @@ impl Radar {
(radar_size / -2.0 - 10.0) - d.y,
)
.into(),
angle: to_radians(180.0),
angle: to_radians(270.0),
size,
color,
sprite_index: sprite.get_index(),
@ -281,7 +281,7 @@ impl Radar {
(radar_size / -2.0 - 10.0) + d.y,
)
.into(),
angle: to_radians(270.0),
angle: to_radians(0.0),
size,
color,
sprite_index: sprite.get_index(),