Skip to content

Commit 613c7be

Browse files
committed
Activate linear filtering for PBR textures
1 parent a4b43fe commit 613c7be

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

ViroFBX/VROFBXExporter.cpp

+31
Original file line numberDiff line numberDiff line change
@@ -1404,6 +1404,12 @@ void VROFBXExporter::exportMaterial(FbxSurfaceMaterial *inMaterial, bool compres
14041404
diffuse->add_color(static_cast<float>(1.0));
14051405
diffuse->add_color(static_cast<float>(1.0));
14061406
diffuse->add_color(static_cast<float>(1.0));
1407+
1408+
diffuse->set_wrap_mode_s(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1409+
diffuse->set_wrap_mode_t(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1410+
diffuse->set_minification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1411+
diffuse->set_magnification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1412+
diffuse->set_mip_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
14071413
}
14081414
else {
14091415
diffuse->add_color(static_cast<float>(albedoColor[0]));
@@ -1425,6 +1431,11 @@ void VROFBXExporter::exportMaterial(FbxSurfaceMaterial *inMaterial, bool compres
14251431
metalness->add_color(metalnessValue);
14261432
if (useMetalnessMap) {
14271433
metalness->set_texture(metalnessMap);
1434+
metalness->set_wrap_mode_s(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1435+
metalness->set_wrap_mode_t(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1436+
metalness->set_minification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1437+
metalness->set_magnification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1438+
metalness->set_mip_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
14281439
}
14291440

14301441
// Roughness properties
@@ -1441,6 +1452,11 @@ void VROFBXExporter::exportMaterial(FbxSurfaceMaterial *inMaterial, bool compres
14411452
roughness->add_color(roughnessValue);
14421453
if (useRoughnessMap) {
14431454
roughness->set_texture(roughnessMap);
1455+
roughness->set_wrap_mode_s(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1456+
roughness->set_wrap_mode_t(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1457+
roughness->set_minification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1458+
roughness->set_magnification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1459+
roughness->set_mip_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
14441460
}
14451461

14461462
// Normal map
@@ -1454,6 +1470,11 @@ void VROFBXExporter::exportMaterial(FbxSurfaceMaterial *inMaterial, bool compres
14541470
viro::Node::Geometry::Material::Visual *normal = outMaterial->mutable_normal();
14551471
normal->set_intensity(1.0);
14561472
normal->set_texture(normalMap);
1473+
normal->set_wrap_mode_s(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1474+
normal->set_wrap_mode_t(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1475+
normal->set_minification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1476+
normal->set_magnification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1477+
normal->set_mip_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
14571478
}
14581479

14591480
// Emissive map
@@ -1467,6 +1488,11 @@ void VROFBXExporter::exportMaterial(FbxSurfaceMaterial *inMaterial, bool compres
14671488
viro::Node::Geometry::Material::Visual *emissive = outMaterial->mutable_emission();
14681489
emissive->set_intensity(1.0);
14691490
emissive->set_texture(emissiveMap);
1491+
emissive->set_wrap_mode_s(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1492+
emissive->set_wrap_mode_t(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1493+
emissive->set_minification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1494+
emissive->set_magnification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1495+
emissive->set_mip_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
14701496
}
14711497

14721498
// AO map
@@ -1480,6 +1506,11 @@ void VROFBXExporter::exportMaterial(FbxSurfaceMaterial *inMaterial, bool compres
14801506
viro::Node::Geometry::Material::Visual *ao = outMaterial->mutable_ao();
14811507
ao->set_intensity(1.0);
14821508
ao->set_texture(aoMap);
1509+
ao->set_wrap_mode_s(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1510+
ao->set_wrap_mode_t(viro::Node_Geometry_Material_Visual_WrapMode_Clamp);
1511+
ao->set_minification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1512+
ao->set_magnification_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
1513+
ao->set_mip_filter(viro::Node_Geometry_Material_Visual_FilterMode_Linear);
14831514
}
14841515
}
14851516
else {

0 commit comments

Comments
 (0)