Three.js 入门1 零基础快速上手(示例)

学习three.js过程中的事例记录下来,方便后期复习

学习资料来源:http://www.hewebgl.com/

示例1.

初步了解简单API

场景(scene)、相机(camera)和渲染器(renderer)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/104/three.js"></script>
</head>
<body>

</body>
<script>
    /*创建场景*/
    var scene = new THREE.Scene()
    /*打印场景位置*/
    console.log(scene.position)
    /*创建相机*/
    var camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 1, 10)
    /*打印相机位置*/
    console.log(camera.position)
    /*创建渲染器*/
    var renderer = new THREE.WebGLRenderer();
    /*设置渲染器尺寸*/
    renderer.setSize(window.innerWidth, window.innerHeight)
    /*设置渲染器清除颜色*/
    renderer.setClearColor('#FFFFFF')
    /*将渲染器添加到body中*/
    document.body.appendChild(renderer.domElement);
    /*生成几何体 盒子模型(*/
    var geometry = new THREE.CubeGeometry(2, 2, 2);
    /*生成材质*/
    //var material = new THREE.MeshBasicMaterial({color: 0xff0000})//基础网孔材料
    var material = new THREE.MeshNormalMaterial()//法向量网孔材料
    /*几何体和材质结合*/
    var cube = new THREE.Mesh(geometry, material)
    //*将结合体添加到场景*/
    scene.add(cube)
    /*对象将被添加到原点处,即坐标点(0,0,0),这将导致相机和立方体发生空间重叠。为了避免这样,我们把相机(camera)的位置移出来一些*/
    camera.position.z = 5
    /*打印相机位置*/
    console.log(camera.position)
    function render() {
        /*启动定时器*/
        requestAnimationFrame(render);
        /*结合体旋转*/
        cube.rotation.y += 0.01;
        cube.rotation.x += 0.01;
        /*渲染*/
        renderer.render(scene, camera)
    }

    render()


</script>
</html>

 

效果图:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值