Vue3炫酷可旋转的3D地球

首先,我们需要安装Three.js库:

npm install three

接下来,我们创建一个Vue3项目,并在项目中引入Three.js库。在src/main.js文件中,编写以下代码:

import {
    createApp } from 'vue'
import App from './App.vue'
import * as THREE from 'three'

const app = createApp(App)

app.config.globalProperties.$three = {
   
  init: () => {
   
    // 创建场景
    const scene = new THREE.Scene()

    // 创建相机
    const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000)
    camera.position.z = 5

    // 创建渲染器
    const renderer = new THREE.WebGLRenderer()
    renderer.setSize(window.innerWidth, window.innerHeight)
    document.body.appendChild(renderer.domElement)

    // 创建地球
    const geometry = new THREE.SphereGeometry(1, 32, 32)
    const material = new THREE.MeshBasicMaterial({
    color: 0x00ff00 })
    const earth = new THREE.Mesh(geometry, material)
    scene.add(earth)

    // 渲染循环
    const animate = () => {
   
      requestAnimationFrame(animate)

      // 旋转地球
      earth.rotation.y += 0.01

      renderer.render(scene, camera)
    }

    animate()
  }
}

app.mount('#app')

src/App.vue文件中,编写以下代码:

<template>
  <div id="app">
    <canvas ref="earthCanvas"></canvas>
  </div>
</template>

<script>
export default {
     
  mounted() {
     
    this.$refs.earthCanvas.getContext('webgl').call(this.$three.init(), this)
  }
}
</script>

现在,运行项目,你将看到一个可旋转的3D地球。你可以根据需要修改地球的颜色、大小等属性。

相关推荐

  1. Vue3旋转3D地球

    2023-12-05 19:58:02       45 阅读
  2. 3D旋转rotatex

    2023-12-05 19:58:02       15 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-05 19:58:02       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-05 19:58:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-05 19:58:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-05 19:58:02       18 阅读

热门阅读

  1. 算法之选择排序

    2023-12-05 19:58:02       32 阅读
  2. 计算机网络测试题

    2023-12-05 19:58:02       33 阅读
  3. pytorch矩阵乘法

    2023-12-05 19:58:02       43 阅读
  4. 统领UOS上安装mysql5.7

    2023-12-05 19:58:02       50 阅读
  5. Visual Studio Code之自动补全的设置

    2023-12-05 19:58:02       33 阅读
  6. Kafka常见面试题

    2023-12-05 19:58:02       40 阅读
  7. 视图与模板

    2023-12-05 19:58:02       37 阅读
  8. Linux_Linux终端常用快捷键

    2023-12-05 19:58:02       33 阅读