diff options
| author | Valentin Popov <valentin@popov.link> | 2026-06-23 21:32:50 +0300 |
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2026-06-23 21:32:50 +0300 |
| commit | 9cc24e715db81edbe21c0d04aadd00f11dddecb8 (patch) | |
| tree | 08a1262dea86bcd7ec58c6494cedd001c45a78fe /apps | |
| parent | f8e447ffee746cfe6580cc0e78a8a225aa39b546 (diff) | |
| download | fparkan-9cc24e715db81edbe21c0d04aadd00f11dddecb8.tar.xz fparkan-9cc24e715db81edbe21c0d04aadd00f11dddecb8.zip | |
fix: close stage 0-2 synthetic gates
Diffstat (limited to 'apps')
| -rw-r--r-- | apps/fparkan-cli/Cargo.toml | 1 | ||||
| -rw-r--r-- | apps/fparkan-cli/src/main.rs | 32 | ||||
| -rw-r--r-- | apps/fparkan-game/Cargo.toml | 2 | ||||
| -rw-r--r-- | apps/fparkan-game/src/main.rs | 38 | ||||
| -rw-r--r-- | apps/fparkan-headless/src/main.rs | 19 | ||||
| -rw-r--r-- | apps/fparkan-viewer/src/main.rs | 29 |
6 files changed, 103 insertions, 18 deletions
diff --git a/apps/fparkan-cli/Cargo.toml b/apps/fparkan-cli/Cargo.toml index 90b26da..76d319a 100644 --- a/apps/fparkan-cli/Cargo.toml +++ b/apps/fparkan-cli/Cargo.toml @@ -6,6 +6,7 @@ license.workspace = true repository.workspace = true [dependencies] +fparkan-assets = { path = "../../crates/fparkan-assets" } fparkan-corpus = { path = "../../crates/fparkan-corpus" } fparkan-prototype = { path = "../../crates/fparkan-prototype" } fparkan-inspection = { path = "../../crates/fparkan-inspection" } diff --git a/apps/fparkan-cli/src/main.rs b/apps/fparkan-cli/src/main.rs index 043a21c..b86486c 100644 --- a/apps/fparkan-cli/src/main.rs +++ b/apps/fparkan-cli/src/main.rs @@ -1,11 +1,30 @@ #![forbid(unsafe_code)] +#![cfg_attr( + test, + allow( + clippy::cast_possible_truncation, + clippy::cast_possible_wrap, + clippy::cast_precision_loss, + clippy::expect_used, + clippy::float_cmp, + clippy::identity_op, + clippy::too_many_lines, + clippy::uninlined_format_args, + clippy::map_unwrap_or, + clippy::needless_raw_string_hashes, + clippy::semicolon_if_nothing_returned, + clippy::type_complexity, + clippy::panic, + clippy::unwrap_used + ) +)] #![allow(clippy::print_stderr, clippy::print_stdout)] //! `FParkan` command-line tools. +use fparkan_assets::extend_graph_report_with_visual_dependencies; use fparkan_corpus::{discover, render_report_json, report, DiscoverOptions}; use fparkan_inspection::inspect_archive_file; use fparkan_inspection::ArchiveInspection; -use fparkan_assets::extend_graph_report_with_visual_dependencies; use fparkan_prototype::build_prototype_graph_report; use fparkan_resource::{resource_name, CachedResourceRepository}; use fparkan_runtime::{ @@ -135,12 +154,7 @@ fn inspect_prototype(args: &[String]) -> Result<(), String> { let roots = [resource_name(key.as_bytes())]; let (graph, resolved, mut report) = build_prototype_graph_report(&repository, vfs.as_ref(), &roots); - extend_graph_report_with_visual_dependencies( - &repository, - &mut report, - &graph, - &resolved, - ); + extend_graph_report_with_visual_dependencies(&repository, &mut report, &graph, &resolved); println!("{}", prototype_inspect_json(&key, &graph, &report)); Ok(()) } @@ -234,7 +248,9 @@ fn inspect_archive(args: &[String]) -> Result<(), String> { ); Ok(()) } - ArchiveInspection::Unsupported => Err(format!("{}: unsupported archive magic", path.display())), + ArchiveInspection::Unsupported => { + Err(format!("{}: unsupported archive magic", path.display())) + } } } diff --git a/apps/fparkan-game/Cargo.toml b/apps/fparkan-game/Cargo.toml index bac3397..a134a8b 100644 --- a/apps/fparkan-game/Cargo.toml +++ b/apps/fparkan-game/Cargo.toml @@ -6,6 +6,8 @@ license.workspace = true repository.workspace = true [dependencies] +fparkan-assets = { path = "../../crates/fparkan-assets" } +fparkan-platform = { path = "../../crates/fparkan-platform" } fparkan-render = { path = "../../crates/fparkan-render" } fparkan-platform-winit = { path = "../../adapters/fparkan-platform-winit" } fparkan-render-vulkan = { path = "../../adapters/fparkan-render-vulkan" } diff --git a/apps/fparkan-game/src/main.rs b/apps/fparkan-game/src/main.rs index 7ea7d0e..6f132e5 100644 --- a/apps/fparkan-game/src/main.rs +++ b/apps/fparkan-game/src/main.rs @@ -1,16 +1,37 @@ #![forbid(unsafe_code)] +#![cfg_attr( + test, + allow( + clippy::cast_possible_truncation, + clippy::cast_possible_wrap, + clippy::cast_precision_loss, + clippy::expect_used, + clippy::float_cmp, + clippy::identity_op, + clippy::too_many_lines, + clippy::uninlined_format_args, + clippy::map_unwrap_or, + clippy::needless_raw_string_hashes, + clippy::semicolon_if_nothing_returned, + clippy::type_complexity, + clippy::panic, + clippy::unwrap_used + ) +)] #![allow(clippy::print_stderr, clippy::print_stdout)] //! `FParkan` rendered game composition root. +use fparkan_assets::PreparedVisual; +use fparkan_platform::WindowPort; +use fparkan_platform_winit::WinitWindow; use fparkan_render::{ - DrawCommand, DrawId, GpuMaterialId, GpuMeshId, IndexRange, RenderBackend, - RenderCommand, RenderCommandList, RenderPhase, + DrawCommand, DrawId, GpuMaterialId, GpuMeshId, IndexRange, RenderBackend, RenderCommand, + RenderCommandList, RenderPhase, }; -use fparkan_platform_winit::WinitWindow; use fparkan_render_vulkan::VulkanBackend; use fparkan_runtime::{ - create, frame, load_mission, EngineConfig, EngineMode, EngineServices, MissionRequest, - MissionAssets, loaded_mission_assets, + create, frame, load_mission, loaded_mission_assets, EngineConfig, EngineMode, EngineServices, + MissionAssets, MissionRequest, }; use fparkan_vfs::DirectoryVfs; use fparkan_world::WorldSnapshot; @@ -89,6 +110,7 @@ fn run(args: &[String]) -> Result<String, String> { )) } +#[cfg(test)] fn render_snapshot_commands(snapshot: &WorldSnapshot) -> RenderCommandList { render_snapshot_commands_with_assets(snapshot, None) } @@ -115,8 +137,10 @@ fn render_snapshot_commands_with_assets( GpuMeshId(u64::from(handle.slot) + 1) }; let material = prepared - .and_then(|visual| visual.primary_material_id()) - .map_or(GpuMaterialId(1), |material_id| GpuMaterialId(material_id.raw())); + .and_then(PreparedVisual::primary_material_id) + .map_or(GpuMaterialId(1), |material_id| { + GpuMaterialId(material_id.raw()) + }); let draw_id = snapshot .tick .0 diff --git a/apps/fparkan-headless/src/main.rs b/apps/fparkan-headless/src/main.rs index b78a7dc..c28b51b 100644 --- a/apps/fparkan-headless/src/main.rs +++ b/apps/fparkan-headless/src/main.rs @@ -1,4 +1,23 @@ #![forbid(unsafe_code)] +#![cfg_attr( + test, + allow( + clippy::cast_possible_truncation, + clippy::cast_possible_wrap, + clippy::cast_precision_loss, + clippy::expect_used, + clippy::float_cmp, + clippy::identity_op, + clippy::too_many_lines, + clippy::uninlined_format_args, + clippy::map_unwrap_or, + clippy::needless_raw_string_hashes, + clippy::semicolon_if_nothing_returned, + clippy::type_complexity, + clippy::panic, + clippy::unwrap_used + ) +)] #![allow(clippy::print_stderr, clippy::print_stdout)] //! `FParkan` headless runtime entrypoint. diff --git a/apps/fparkan-viewer/src/main.rs b/apps/fparkan-viewer/src/main.rs index ee96ab5..783ef92 100644 --- a/apps/fparkan-viewer/src/main.rs +++ b/apps/fparkan-viewer/src/main.rs @@ -1,10 +1,29 @@ #![forbid(unsafe_code)] +#![cfg_attr( + test, + allow( + clippy::cast_possible_truncation, + clippy::cast_possible_wrap, + clippy::cast_precision_loss, + clippy::expect_used, + clippy::float_cmp, + clippy::identity_op, + clippy::too_many_lines, + clippy::uninlined_format_args, + clippy::map_unwrap_or, + clippy::needless_raw_string_hashes, + clippy::semicolon_if_nothing_returned, + clippy::type_complexity, + clippy::panic, + clippy::unwrap_used + ) +)] #![allow(clippy::print_stderr, clippy::print_stdout)] //! `FParkan` asset viewer composition root. use fparkan_inspection::{ - inspect_land_file, inspect_model_from_root, inspect_texture_from_root, ArchiveInspection, LandFileKind, - MapInspection, NresEntrySummary, + inspect_land_file, inspect_model_from_root, inspect_texture_from_root, ArchiveInspection, + LandFileKind, MapInspection, NresEntrySummary, }; use fparkan_render::{ build_commands, CameraSnapshot, DrawId, GpuMaterialId, GpuMeshId, IndexRange, RenderPhase, @@ -151,7 +170,11 @@ fn inspect_map(args: &[String]) -> Result<String, String> { }, )?; - Ok(render_map_inspection_json(&file.display().to_string(), &kind, &inspection)) + Ok(render_map_inspection_json( + &file.display().to_string(), + &kind, + &inspection, + )) } fn render_map_inspection_json(path: &str, kind: &str, inspection: &MapInspection) -> String { |
