我可以't制作线框

I can't make a wireframe box

本文关键字:线框 我可以      更新时间:2023-09-26

我做了一个旋转盒子,它工作正常。然后我将材质代码更改为具有linebasicsmaterial的线框材质。我阅读了three.js文档并举例说明。但它没有显示任何东西。只是纯白。我已经更改了颜色十六进制,因为默认值是白色。

这是js-fiddle的例子http://jsfiddle.net/wick3dsono/tXgcD/

  // revolutions per second
  var angularSpeed = 0.2; 
  var lastTime = 0;
  // this function is executed on each animation frame
  function animate(){
    // update
    var time = (new Date()).getTime();
    var timeDiff = time - lastTime;
    var angleChange = angularSpeed * timeDiff * 2 * Math.PI / 1000;
    cube.rotation.y += angleChange;
    lastTime = time;
    // render
    renderer.render(scene, camera);
    // request new frame
    requestAnimationFrame(function(){
        animate();
    });
  }
  // renderer
  var renderer = new THREE.WebGLRenderer();
  renderer.setSize(window.innerWidth, window.innerHeight);
  document.body.appendChild(renderer.domElement);
  // camera
  var camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 1, 1000);
  camera.position.z = 500;
  // scene
  var scene = new THREE.Scene();
  // material
  var mat = new THREE.LineaBasicMaterial({color: 0x00aeef});
  // primary cube (little one)
  var cube = new THREE.Mesh(new THREE.CubeGeometry(200, 200, 200), mat);
  cube.overdraw = true;
  cube.rotation.x = Math.PI * 0.1;
  scene.add(cube);
  // secondary cube (big one)
  //var cube_big = new THREE.Mesh(new THREE.CubeGeometry(200,200,200), mat);
  //cube_big.overdraw = true;
  //cube_big.rotation.x = Math.PI * 0.1;
  //scene.add(cube_big);
  // add subtle ambient lighting
  var ambientLight = new THREE.AmbientLight(0xbbbbbb);
  scene.add(ambientLight);
  // directional lighting
  var directionalLight = new THREE.DirectionalLight(0xffffff);
  directionalLight.position.set(1, 1, 1).normalize();
  scene.add(directionalLight);
  // start animation
  animate();

无论如何,我也是js-fiddle的新手,所以当我把代码放在js-fiddler上时可能有一个错误。我只是从代码编辑器中复制粘贴,擦除html和head标记,然后将脚本复制到js字段。在我的代码编辑器上,我只是把它放在一个html文件中。

您只需使用MeshBasicMaterial或MeshLambert Material,并选择:线框:真实