javascript - 在threejs中获取相机导航的问题
问题描述
我正在尝试使用 THREE.OrbitControls 在threejs 中开发相机导航功能。即使我遵循指南,我似乎也无法让它工作。
我的小提琴代码的链接是:https ://jsfiddle.net/Matty1/uc671jbL/18/
它在 javascript 的第 18/19 行:
const controls = new THREE.OrbitControls( camera, renderer.domElement );
controls.update();
任何意见,将不胜感激。
解决方案
You have included OrbitControls
from a relative path in your fiddle. Try it like so:
const scene = new THREE.Scene();
scene.background = new THREE.Color(0x19d7f8);
const camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 0.1, 1000 );
camera.position.set(0,0,5);
const renderer = new THREE.WebGLRenderer();
renderer.setSize( window.innerWidth, window.innerHeight );
document.body.appendChild( renderer.domElement );
window.addEventListener('resize', function(){
var width = window.innerWidth;
var height = window.innerHeight;
renderer.setSize(width, height);
camera.aspect = width/height;
camera.updateProjectionMatrix;
} )
const controls = new THREE.OrbitControls( camera, renderer.domElement );
const geometry = new THREE.BoxGeometry();
const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
const cube = new THREE.Mesh( geometry, material );
scene.add( cube );
function animate() {
requestAnimationFrame( animate );
renderer.render( scene, camera );
}
animate();
body {
margin: 0;
}
<script src="https://cdn.jsdelivr.net/npm/three@0.124/build/three.js"></script>
<script src="https://cdn.jsdelivr.net/npm/three@0.124/examples/js/controls/OrbitControls.js"></script>
推荐阅读
- python - 遍历游标时如何防止sqlite缓存结果
- javascript - 单击自身以及其他按钮时更改按钮的图像源属性
- javascript - Ionic 应用程序在初始化完成之前开始工作
- jquery - 具有动态创建表的数据表
- linux - 如何将 linux 中的 vcpkg 与交叉构建工具链以及 sysroot 集成?
- batch-file - 如何使用批处理解决此问题(过滤程序)?
- python - 从顶部的路径数创建顶部对,创建连续图,只有一个选项
- python - 如何比较 URI 编码的字符串?
- javascript - 如何仅禁用 chrome 中的“调试器”关键字,该关键字由循环内的 eval 执行?
- python-3.x - 在 python3 中使用 GraphQL Payload 发布请求