当前位置: 首页> 娱乐> 八卦 > 网站制作公司哪家正规_我的家乡网页设计素材_怎样优化标题关键词_设计本网站

网站制作公司哪家正规_我的家乡网页设计素材_怎样优化标题关键词_设计本网站

时间:2025/7/11 8:41:25来源:https://blog.csdn.net/u010263423/article/details/145541255 浏览次数:0次
网站制作公司哪家正规_我的家乡网页设计素材_怎样优化标题关键词_设计本网站

文章目录

  • 环境
  • 创建一个项目
  • 安装依赖
  • 基础 Web 页面
  • 概念解释
  • 编写代码
  • 运行项目


环境

我的环境是 node version 22


创建一个项目

首先,新建一个空的文件夹,然后 npm init -y , 此时会快速生成好默认的 package.json

安装依赖

在新建的项目下用 npm 安装依赖

  • npm install vite
  • npm install three

基础 Web 页面

在项目下新建 index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>First Three.js Project</title>
</head>
<body><canvas class="webgl"></canvas><script type="module" src="./script.js"></script>
</body>
</html>

概念解释

想要使用 ThreeJS 实现一些场景,以下的对象是必要的

  • A scene that will contain objects
  • Some objects
  • A camera
  • A renderer

大概的思路是

  1. 新建场景
  2. 新建一个立方体,把他加入场景
  3. 新建一个照相机,加入场景
  4. 创建渲染器,配置渲染尺寸,说明渲染那个场景,以及用那个摄像头渲染

以下就是在脚本中如何定义并使用这四种对象

编写代码

新建 script.js

import * as THREE from 'three'// Canvas
const canvas = document.querySelector('canvas.webgl')// Scene
const scene = new THREE.Scene()/*** Object*/
const geometry = new THREE.BoxGeometry(1, 1, 1)
const material = new THREE.MeshBasicMaterial({ color: 0xff0000 })
const mesh = new THREE.Mesh(geometry, material)
scene.add(mesh)/*** Sizes*/
const sizes = {width: 800,height: 600
}/*** Camera*/
const camera = new THREE.PerspectiveCamera(75, sizes.width / sizes.height)
camera.position.z = 3
scene.add(camera)/*** Renderer*/
const renderer = new THREE.WebGLRenderer({canvas: canvas
})
renderer.setSize(sizes.width, sizes.height)
renderer.render(scene, camera)

运行项目

通过 npm run dev 跑起来看一看

在这里插入图片描述
也许你会觉得它并不像个空间上的物体,这是因为,我们的照相机跟物体是水平的

所有的元素,添加到场景时候,位置坐标都是 ( 0,0,0 )

我们修改一下材质 wireframe

const material = new THREE.MeshBasicMaterial({ color: 0xff0000, wireframe: true })

你就会得到如下的画面

在这里插入图片描述

关键字:网站制作公司哪家正规_我的家乡网页设计素材_怎样优化标题关键词_设计本网站

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: