summaryrefslogtreecommitdiff
path: root/world/src/mesh.rs
diff options
context:
space:
mode:
Diffstat (limited to 'world/src/mesh.rs')
-rw-r--r--world/src/mesh.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/world/src/mesh.rs b/world/src/mesh.rs
index 4067fb8..c4a6372 100644
--- a/world/src/mesh.rs
+++ b/world/src/mesh.rs
@@ -328,6 +328,12 @@ pub fn import_mesh(
debug!("dispersion is {d}");
}
+ // if node.name() == Some("fog") {
+ // eprintln!("{:#?}", p.material().volume().is_some());
+ // eprintln!("{:#?}", p.material().ior());
+ // eprintln!("{:#?}", p.material().transmission().is_some());
+ // }
+
let g_attenuation = p.material().volume().map(|v| {
let ref_dist = v.attenuation_distance();
let att = Vec3A::from_array(v.attenuation_color().map(
@@ -352,6 +358,11 @@ pub fn import_mesh(
let g_double_sided = bool_to_opt(p.material().double_sided(), "double sided");
+ let hint_volume = bool_to_opt(
+ g_attenuation.is_some_and(|a| a.length() > 0.01),
+ "volume hint",
+ );
+
let hint_hide_first_person = bool_to_opt(
many_head_bones | vrm.hide_first_person.contains(&node.index()),
"hide first person hint",
@@ -399,6 +410,7 @@ pub fn import_mesh(
tex_occlusion,
hint_hide_first_person,
hint_mirror,
+ hint_volume,
// not supported by gltf
hint_static: None, // TODO Set when instancing
va_transmission: None,