From 3331150162e34471bf0294bdb61a1a748cb94ee5 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Tue, 28 Jan 2025 14:50:56 +0100 Subject: server+world: tangent handedness --- world/src/mesh.rs | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) (limited to 'world/src/mesh.rs') diff --git a/world/src/mesh.rs b/world/src/mesh.rs index 4e6317d..0d90b82 100644 --- a/world/src/mesh.rs +++ b/world/src/mesh.rs @@ -20,10 +20,7 @@ use gltf::{Mesh, Node, buffer::Data}; use log::{debug, info}; use std::path::Path; use weareshared::{ - Affine3A, Vec3A, - resources::{Armature, MeshPart, Prefab}, - store::ResourceStore, - vec2, vec3a, + resources::{Armature, MeshPart, Prefab}, store::ResourceStore, vec2, vec3a, vec4, Affine3A, Vec3A }; pub fn import_mesh( @@ -69,7 +66,9 @@ pub fn import_mesh( .read_tangents() .map(|iter| { // TODO dont ignore handedness - let a = iter.map(|[x, y, z, _h]| vec3a(x, y, z)).collect::>(); + let a = iter + .map(|[x, y, z, h]| vec4(x, y, z, h)) + .collect::>(); debug!("{} vertex tangents", a.len()); store.set(&a) }) @@ -198,11 +197,7 @@ pub fn import_mesh( )?); } let mut tex_thickness = None; - if let Some(tex) = p - .material() - .volume() - .and_then(|t| t.thickness_texture()) - { + if let Some(tex) = p.material().volume().and_then(|t| t.thickness_texture()) { tex_thickness = Some(load_texture( "thickness", store, @@ -387,6 +382,6 @@ pub fn import_mesh( })?; prefab.mesh.push((trans, mesh)) - }; + } Ok(()) } -- cgit v1.2.3-70-g09d2