如何在https://threejs.org/editor/中平铺纹理?

时间:2016-10-26 17:31:46

标签: three.js editor

https://threejs.org/editor/中平铺纹理的正确方法是什么? 我用一种名为m1的材料创建了一个平面,并尝试将材质脚本编辑为:

function update( event ) {
  m1.wrapS = texture.wrapT = THREE.RepeatWrapping;
  m1.repeat.set( 2, 2 );
}

但没有任何反应。 tile does not work

1 个答案:

答案 0 :(得分:2)

这并不难,但你没有ui来访问这个参数。所以你需要做的是创建一个附加到任何对象的脚本(最好保持场景顺序,以便将它附加到材质上),它应该像:

// To access scene material we pick it's parent object
var myObject = scene.getObjectByName( "ObjectName" );

// We need to set the Wrappers like THREE.RepeatWrapping in order to make it happen.
myObject.material.map.wrapS = myObject.material.map.wrapT = THREE.RepeatWrapping;

// Now we only need to set a new map.repeat
myObject.material.map.repeat.set( 2, 2 );

function update( event ) {

}

正如您所看到的,代码未设置为 update(),因为如果您确实希望每三次更新中的材料都会发生变化,那么如果此值为不会改变。