• threejs简单demo


    用的cnpm安装

    cnpm install three

     

    <template>
    <div id="demo" style="600px;height:600px;"/>
    </template>

    <script>
    import * as THREE from 'three'
    export default {
    data () {
    return {
    cube: undefined,
    scene: undefined,
    camera: undefined,
    renderer: undefined,
    floorTexture: undefined
    }
    },
    mounted () {
    this.initThree()
    this.animate()
    },
    methods: {
    initThree () {
    // 创建场景
    this.scene = new THREE.Scene()
    // 创建相机
    this.camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000)
    // 渲染器
    this.renderer = new THREE.WebGLRenderer()
    // 设置背景颜色 最新版目前默认为黑色
    this.renderer.setClearColor(0xffffff)
    this.renderer.shadowMap.enabled = true
    this.renderer.setSize(window.innerWidth, window.innerHeight)
    document.getElementById('demo').appendChild(this.renderer.domElement)
    // 加载图片
    const geometry = new THREE.BoxGeometry()
    var texture = new THREE.TextureLoader().load('static/img/123.png', () => {
    this.renderer.render(this.scene, this.camera)
    })
    // 沿x方向和Y方向都重复填充
    texture.wrapS = texture.wrapT = THREE.RepeatWrapping
    // 每面4*4
    texture.repeat.set(4, 4)
    var material = new THREE.MeshBasicMaterial({ map: texture })
    this.cube = new THREE.Mesh(geometry, material)
    this.cube.position.set(1, 0, 0)
    this.scene.add(this.cube)
    this.camera.position.z = 5
    this.renderer.render(this.scene, this.camera)
    },
    animate: function () {
    requestAnimationFrame(this.animate)
    this.cube.rotation.x += 0.12
    this.cube.rotation.y += 0.02
    this.renderer.render(this.scene, this.camera)
    }
    }
    }
    </script>

    <style>
    .mod-home {
    line-height: 1.5;
    }
    </style>


  • 相关阅读:
    Linux磁盘文件的命名
    操作系统的基本介绍
    CMOS、BIOS
    CPU的频率、外频、倍频与超频
    学习Linux——计算机概论
    第三季-第14课-有名管道通讯编程
    第三季-第13课-无名管道通讯编程
    第三季-第12课-多进程程序设计
    第三季-第11课-进程控制理论
    第三季-第10课-时间编程
  • 原文地址:https://www.cnblogs.com/xiaokangk/p/14086183.html
Copyright © 2020-2023  润新知