03、立方体贴图

创建日期:2024-07-08
更新日期:2024-07-08
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>03.立方体贴图</title>
    <link href="css/common.css" rel="stylesheet" />
    <script src="js/three.js"></script>
</head>
<body>
    <script>
        var scene = new THREE.Scene();
        var camera = new THREE.PerspectiveCamera(50, window.innerWidth / window.innerHeight, 0.1, 1000);
        var renderer = new THREE.WebGLRenderer();
        renderer.setSize(window.innerWidth, window.innerHeight);
        document.body.appendChild(renderer.domElement);

        // 灯光
        var light = new THREE.DirectionalLight(0xffffff);
        light.position.set(0, 10, 10).normalize();
        scene.add(light);

        // 立方体
        var geometry = new THREE.BoxGeometry(1, 1, 1);
        var material = new THREE.MeshPhongMaterial({ map: THREE.ImageUtils.loadTexture('image/crate.jpg') });
        var cube = new THREE.Mesh(geometry, material);
        scene.add(cube);

        camera.position.set(0, 0, 10);
        camera.lookAt(new THREE.Vector3(0, 0, 0));

        var render = function () {
            requestAnimationFrame(render);
            cube.rotation.x += 0.01;
            cube.rotation.y += 0.01;
            cube.rotation.z += 0.01;
            renderer.render(scene, camera);
        }
        render();
    </script>
</body>
</html>