在移动设备上缩放ThreeJS视图

时间:2018-10-23 06:46:36

标签: javascript three.js

这是ThreeJs渲染视图,只是我想根据移动设备/宽度缩放渲染视图。

var scene = new THREE.Scene();
var camera = new THREE.PerspectiveCamera(
  120,
  window.innerWidth / window.innerHeight,
  0.1,
  1000
);

var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);

var geometry = new THREE.Geometry(1, 1, 1);
geometry.vertices.push(new THREE.Vector3(-2, 0, 0));
geometry.vertices.push(new THREE.Vector3(0, 2, 0));
geometry.vertices.push(new THREE.Vector3(2, 0, 0));
geometry.vertices.push(new THREE.Vector3(-2, 0, 0));
geometry.vertices.push(new THREE.Vector3(0, 2, 0));
geometry.vertices.push(new THREE.Vector3(2, 0, 0));
var material = new THREE.MeshBasicMaterial({
  color: 0x00ff00
});
var line = new THREE.Line(geometry, material);
scene.add(line);

camera.position.z = 5;

function animate() {
  requestAnimationFrame(animate);
  line.rotation.x += 0.1;
  line.rotation.y += 0.8;
  // line.rotation.z += 0.5;
  renderer.render(scene, camera);
}

animate();
body {
  margin: 0;
}

canvas {
  width: 100%;
  height: 100%;
}
<script src="https://unpkg.com/three@0.97.0/build/three.js"></script>
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>

<body>

</body>

</html>

0 个答案:

没有答案