mirror of
https://codeberg.org/icewind/vbspview.git
synced 2026-06-03 18:24:09 +02:00
add option to disable prop loading
This commit is contained in:
parent
d8cb4acc49
commit
b00334b822
2 changed files with 12 additions and 7 deletions
|
|
@ -9,12 +9,14 @@ use three_d::{CpuModel, Positions, Vec3};
|
|||
use three_d_asset::{Geometry, Primitive, TriMesh};
|
||||
use vbsp::{Bsp, Handle};
|
||||
|
||||
pub fn load_map(data: &[u8], loader: &mut Loader) -> Result<Vec<CpuModel>, Error> {
|
||||
pub fn load_map(data: &[u8], loader: &mut Loader, props: bool) -> Result<Vec<CpuModel>, Error> {
|
||||
let (world, bsp) = load_world(data, loader)?;
|
||||
let props = load_props(loader, bsp.static_props())?;
|
||||
let mut models = Vec::with_capacity(props.len() + 1);
|
||||
let mut models = Vec::with_capacity(bsp.static_props().count() + 1);
|
||||
models.push(world);
|
||||
if props {
|
||||
let props = load_props(loader, bsp.static_props())?;
|
||||
models.extend(props);
|
||||
}
|
||||
Ok(models)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -30,8 +30,11 @@ use vmt_parser::VdfError;
|
|||
struct Args {
|
||||
/// Path of the demo or map file
|
||||
path: String,
|
||||
/// Name of the player to follow
|
||||
/// Name of the player to follow, when using a demo file
|
||||
player: Option<String>,
|
||||
/// Disable loading and showing props in the map
|
||||
#[arg(long)]
|
||||
no_props: bool,
|
||||
}
|
||||
|
||||
#[derive(Debug, Error)]
|
||||
|
|
@ -101,13 +104,13 @@ fn main() -> Result<(), Error> {
|
|||
.load(&format!("maps/{}.bsp", demo.map))?
|
||||
.ok_or(Error::ResourceNotFound(demo.map.clone()))?;
|
||||
|
||||
let models = load_map(&map, &mut loader)?;
|
||||
let models = load_map(&map, &mut loader, !args.no_props)?;
|
||||
play(window, DemoCamera::new(demo), models)
|
||||
} else {
|
||||
let mut loader = Loader::new()?;
|
||||
let map = fs::read(args.path)?;
|
||||
|
||||
let models = load_map(&map, &mut loader)?;
|
||||
let models = load_map(&map, &mut loader, !args.no_props)?;
|
||||
play(window, FirstPerson::new(0.1), models)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue