use rustraight::prelude::*;
fn asset(rel: &str) -> String {
format!("{}/検証素材/{}", env!("CARGO_MANIFEST_DIR"), rel)
}
fn main() {
init(WindowConfig {
title: String::from("05_subscreen"),
width: 800,
height: 500,
screen_width: 800,
screen_height: 500,
..Default::default()
});
let sprite = load_screen(&asset("images/sprite.png"));
let sub = create_screen(160, 160);
while advance_frame() {
draw_fill(MAIN_SCREEN, Color::rgb(15, 15, 20));
clear(sub);
draw_fill(sub, Color::rgb(30, 60, 30));
draw_circle(sub, 80, 80, 60, Color::CYAN, true);
draw_screen(sub, 48, 48, sprite);
draw_text(sub, 4, 4, "sub", Color::WHITE);
draw_screen(MAIN_SCREEN, 40, 40, sub);
draw_text(MAIN_SCREEN, 40, 210, "create_screen -> draw_screen(MAIN_SCREEN, sub)", Color::WHITE);
let angle = (elapsed_time() as f32 * 45.0) % 360.0;
draw_screen_ex(MAIN_SCREEN, 320, 40, sub, DrawScreenParams {
scale_x: 1.2, scale_y: 1.2, rotation: angle, alpha: 1.0, flip_x: false, flip_y: false,
});
draw_text(MAIN_SCREEN, 320, 260, "サブスクリーンにも拡縮/回転が効く", Color::WHITE);
let (w, h) = screen_size(sub);
draw_text(MAIN_SCREEN, 40, 300, format!("screen_size(sub): {w}x{h}"), Color::WHITE);
}
}