Three.js开发教程(threejs-cookbook):07、控制变量
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>07_控制变量</title>
<link href="../css/index.css" rel="stylesheet" />
<script src="../libs/three.js"></script>
<script src="../libs/dat.gui.min.js"></script>
</head>
<body>
<script>
var scene = new THREE.Scene();
var renderer = new THREE.WebGLRenderer();
renderer.setClearColor(0x000000, 1.0);
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);
var camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 10000);
camera.position.set(20, 20, 20);
camera.lookAt(scene.position);
var geometry = new THREE.BoxGeometry(10 * Math.random(), 10 * Math.random(), 10 * Math.random());
var material = new THREE.MeshNormalMaterial();
var box = new THREE.Mesh(geometry, material);
box.name = 'Box';
scene.add(box);
// 控制变量
var control = new function () {
this.rotationSpeed = 0.005;
this.scale = 1.0;
};
var gui = new dat.GUI();
gui.add(control, 'rotationSpeed', -0.1, 0.1);
gui.add(control, 'scale', 0.02, 2.0);
var render = function () {
requestAnimationFrame(render);
box.rotation.x += control.rotationSpeed;
box.rotation.y += control.rotationSpeed;
box.rotation.z += control.rotationSpeed;
box.scale.x = control.scale;
box.scale.y = control.scale;
box.scale.z = control.scale;
renderer.render(scene, camera);
}
render();
</script>
</body>
</html>
最后更新于1年前
本文由人工编写,AI优化,转载请注明原文地址: Three.js开发教程(threejs-cookbook):07、控制变量
推荐阅读
Three.js开发教程(threejs-cookbook)
1362025-01-12
Ollama工具调用原理详解及Python代码实现教程
3642025-11-27
天地图429 Too Many Requests错误解决方案-配额升级与配置指南
4222025-11-25
使用vtk.js加载vtu格式(UnstructuredGrid)的文件
3462025-12-02
谷歌Antigravity IDE:AI智能体驱动的软件开发平台详解
7242025-11-24
Windows系统PyTorch安装教程:CUDA 12.1环境配置与TorchText版本兼容性指南
22442025-10-08
评论 (0)
发表评论
昵称:加载中...
暂无评论,快来发表第一条评论吧!