physis/layer/
env_set.rs

1// SPDX-FileCopyrightText: 2025 Joshua Goins <josh@redstrate.com>
2// SPDX-License-Identifier: GPL-3.0-or-later
3
4use binrw::{binread, binrw};
5
6use super::read_bool_from;
7
8#[binrw]
9#[brw(repr = i32)]
10#[derive(Debug, PartialEq)]
11pub enum EnvSetShape {
12    Ellipsoid = 0x1,
13    Cuboid = 0x2,
14    Cylinder = 0x3,
15}
16
17#[binread]
18#[derive(Debug)]
19#[br(little)]
20pub struct EnvSetInstanceObject {
21    pub asset_path_offset: u32,
22    pub bound_instance_id: u32,
23    pub shape: EnvSetShape,
24    #[br(map = read_bool_from::<u8>)]
25    pub is_env_map_shooting_point: bool,
26    pub priority: u8,
27    padding: u16,
28    pub effective_range: f32,
29    pub interpolation_time: i32,
30    pub reverb: f32,
31    pub filter: f32,
32    pub sound_asset_path_offset: u32,
33}