我需要用普通地图渲染一个“软”立方体。在运行代码时,我不会收到任何错误或警告,但是当我在函数调用中指定普通map参数并刷新浏览器时,我会看到一个黑色对象。如果我删除法线地图,我可以成功地渲染一个立方体与Phong材料。有趣的是,如果我将材料更改为普通材料,并尝试纹理立方体,则应用实际的RGB法线映射,否则将使用RGB法线映射。此外,如果不对多维数据集使用THREE.SubdivisionModifier(),只需呈现一个锐利的多维数据集,就可以使普通映射正常工作。有什么想法吗?提前谢谢。这是我的密码:
var cube_geo = new THREE.BoxGeometry(.1, .1, .1, 5, 5, 5);
var smooth = cube_geo.clone();
var modifier = new THREE.SubdivisionModifier(5);
modifier.modify(smooth);
var cube_mat = new THREE.MeshPhongMaterial(
{
color: 0x000000,
specular: 0x222222,
normalMap: cube_normal_map,
}
);
cube = new THREE.Mesh(smooth, cube_mat);
scene.add(cube); 发布于 2015-02-15 21:24:46
Three.SubdivisionModifier目前有一个限制,那就是不处理UVs。
请参阅SubdivisionModifier.js源代码中的注释。
three.js r.70
https://stackoverflow.com/questions/28530125
复制相似问题