【问题标题】:Multiple Textures on a Single Face/Plane单个面/平面上的多个纹理
【发布时间】:2015-12-27 16:37:31
【问题描述】:

如果我有几何图形,说

THREE.PlaneGeometry(400,400);

THREE.MeshBasicMaterial({map:new THREE.MeshFaceMaterial(materials)});
//multiple textures on only one face

我将如何制作,以便在平面的同一侧有多个纹理?

此外,我将如何设置纹理的坐标和纹理在平面(或面)上的位置?

它应该看起来像这样:

【问题讨论】:

  • THREE.MeshBasicMaterial({map:new THREE.MeshFaceMaterial(materials)}) :您不能将材质用作纹理(MeshFaceMaterial 现在也是 MultiMaterial)。在 r72 中,这一行将是:THREE.MultiMaterial(materials).
  • 当我使用 THREE.MultiMaterial 或 THREE.MeshFaceMaterial 时,我在控制台中收到一个错误:Uncaught TypeError: Cannot read property 'visible' of undefined three.min.js:496
  • 'visible' 是 'material' 的一个属性。 'MultiMaterial' 是一个材料数组
  • 那么,如何解决这个问题?
  • 我在您的问题中添加了该评论,因为如果您保留该语法,您可能会遇到另一个问题。 mlkn 的回答是正确的,您可以投票/验证它。

标签: three.js textures texture-mapping


【解决方案1】:

您可以使用shader material with textures as uniforms 或查看其他方法theretherethere

【讨论】:

    猜你喜欢
    • 2014-08-10
    • 2012-10-27
    • 1970-01-01
    • 1970-01-01
    • 2012-09-08
    • 2014-11-23
    • 2013-09-04
    • 2010-11-09
    • 1970-01-01
    相关资源
    最近更新 更多