homework 001

by wayne6172

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/84/three.min.js"></script>

<script src="https://threejs.org/examples/js/controls/OrbitControls.js"></script>


<script src="https://cdnjs.cloudflare.com/ajax/libs/stats.js/r16/Stats.min.js"></script>

JavaScript

var camera, scene, renderer, stats, loader;
var angle = 0.0,
  box, woodPlank;

window.addEventListener('resize', onWindowResize, false);

init();
animate();

function buildBox() {
  var met = new THREE.MeshNormalMaterial();

  let loader = new THREE.TextureLoader()
  loader.crossOrigin = '';

  let texture = loader.load('https://i.imgur.com/bv24XBd.jpg?1');
  let sidetexture = loader.load('https://i.imgur.com/bv24XBd.jpg?1');
  sidetexture.repeat.set(1, 0.75);

  let matArray = [];
  matArray.push(new THREE.MeshPhongMaterial({
    map: sidetexture
  }));
  matArray.push(new THREE.MeshPhongMaterial({
    map: sidetexture
  }));
  matArray.push(new THREE.MeshPhongMaterial({
    map: texture,
  }));
  matArray.push(new THREE.MeshPhongMaterial({
    map: texture
  }));
  matArray.push(new THREE.MeshPhongMaterial({
    map: sidetexture
  }));
  matArray.push(new THREE.MeshPhongMaterial({
    map: sidetexture
  }));
  let allMaterial = new THREE.MultiMaterial(matArray);
  let box = new THREE.Mesh(new THREE.BoxGeometry(40, 30, 40), allMaterial);
  return box;
}

function buildslant() {
  let loader = new THREE.TextureLoader()
  loader.crossOrigin = '';
  let texture = loader.load('https://i.imgur.com/bv24XBd.jpg?1');
  texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
  var geometry = new THREE.Geometry();
  geometry.vertices.push(
    new THREE.Vector3(0, 0, 10),
    new THREE.Vector3(40, 0, 10),
    new THREE.Vector3(40, 0, -10),
    new THREE.Vector3(0, 0, -10),
    new THREE.Vector3(0, 30, 10),
    new THREE.Vector3(0, 30, -10)
    //座標
  );
  var face = new THREE.Face3(1, 4, 0);
  geometry.faces.push(face);
  face = new THREE.Face3(3, 5, 2);
  geometry.faces.push(face);
  face = new THREE.Face3(0, 3, 1);
  geometry.faces.push(face);
  face = new THREE.Face3(3, 2, 1);
  geometry.faces.push(face);
  face = new THREE.Face3(0, 4, 3);
  geometry.faces.push(face);
  face = new THREE.Face3(3, 4, 5);
  geometry.faces.push(face);
  face = new THREE.Face3(4, 1, 5);
 ...