forked from StrafesNET/strafe-project
bsp_loader: generate prop matrix with euler angles
This commit is contained in:
parent
c1bc5cc1c0
commit
dfb3526ec1
@ -93,6 +93,7 @@ pub fn convert<'a>(
|
|||||||
|
|
||||||
//declare all prop models to Loader
|
//declare all prop models to Loader
|
||||||
let mut prop_models=bsp.static_props().map(|prop|{
|
let mut prop_models=bsp.static_props().map(|prop|{
|
||||||
|
const DEG_TO_RAD:f32=std::f32::consts::TAU/360.0;
|
||||||
//get or create mesh_id
|
//get or create mesh_id
|
||||||
let mesh_id=mesh_deferred_loader.acquire_mesh_id(prop.model());
|
let mesh_id=mesh_deferred_loader.acquire_mesh_id(prop.model());
|
||||||
let placement=prop.as_prop_placement();
|
let placement=prop.as_prop_placement();
|
||||||
@ -103,7 +104,7 @@ pub fn convert<'a>(
|
|||||||
integer::mat3::try_from_f32_array_2d((
|
integer::mat3::try_from_f32_array_2d((
|
||||||
glam::Mat3A::from_diagonal(glam::Vec3::splat(placement.scale))
|
glam::Mat3A::from_diagonal(glam::Vec3::splat(placement.scale))
|
||||||
//TODO: figure this out
|
//TODO: figure this out
|
||||||
*glam::Mat3A::from_quat(glam::Quat::from_array(placement.rotation.into()))
|
*glam::Mat3A::from_euler(glam::EulerRot::XYZ,prop.angles.pitch*DEG_TO_RAD,prop.angles.yaw*DEG_TO_RAD,prop.angles.roll*DEG_TO_RAD)
|
||||||
).to_cols_array_2d()).unwrap(),
|
).to_cols_array_2d()).unwrap(),
|
||||||
valve_transform(placement.origin.into()),
|
valve_transform(placement.origin.into()),
|
||||||
),
|
),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user