// Определение модулей
mod core;
mod worlds;
// mod components;
// mod entities;
// mod items;
// mod objects;
use bevy::{
window::WindowResolution,
prelude::*
};
use crate::core::{CorePlugin, app_state::AppState};
// use bevy_kira_audio::prelude::*;
// use systems::{
// camera::CameraPlugin,
// interface::UIPlugin,
// world::WorldSystem,
// };
// mod util;
// use iyes_perf_ui::prelude::*;
fn main() {
App::new()
// Init Resources - Установка фонового цвета приложения
.insert_resource(ClearColor(Color::srgb_u8(31, 31, 31)))
// ! .init_resource::<Settings>()
// Инициализация базового плагина, отвечающего за создание окна приложения с определённой конфигурацией
// Имя окна - SINT-et
// [Test] Стартовое разрешение окна - 1280 на 720
// Есть возможность изменения размера окна
// [Test] Включена Вертикальная синхронизация (у меня 144 герц) [AutoVsync]
// Установлен nearest фильтр, чтобы спрайты были несглаженные.
// .register_asset_source("Data", AssetSource::build()
// .with_reader(|| Box::new(FileAssetReader::new("Data")))
// )
.add_plugins((DefaultPlugins
.set(
WindowPlugin {
primary_window: Some(Window {
title: "SINT-et".to_string(),
resolution: WindowResolution::new(1280, 720),
resizable: false,
present_mode: bevy::window::PresentMode::AutoNoVsync,
..default()
}),
..default()
}
)
.set(ImagePlugin::default_nearest())
.build(),
// AudioPlugin
))
//.insert_resource(Msaa::Off)
// Инициализация основных плагинов приложения
// Инициализация загрузки ресурсов приложения
// .add_plugins(ResourcePlugin)
.add_plugins(CorePlugin)
//.add_plugins(WorldSystem)
.run();
}
// #[derive(Component)]
// struct UiInfo;