three.js学习 03 - 添加坐标轴辅助器

该文介绍了一个使用THREE.js库创建3D场景的过程,包括创建场景、相机、物体,以及初始化渲染器。文章重点在于如何添加坐标轴辅助器(AxesHelper)以帮助可视化空间轴,并引入OrbitControls实现3D物体的轨道控制,便于观察。最后,设置了渲染循环以动态显示场景。
摘要由CSDN通过智能技术生成

1. 坐标轴辅助器添加后效果

坐标轴辅助器

2.坐标轴辅助器AxesHelper()添加方法

红色代表X轴,绿色代表Y轴,蓝色代表Z轴

const axesHelper = new THREE.AxesHelper(5)   //参数5代表长度
scene.add(axesHelper)   //添加完成后出现坐标轴辅助器

3. 单页面完整调配代码

import * as THREE from 'three'
// 导入轨道控制器
import {
    OrbitControls
} from 'three/examples/jsm/controls/OrbitControls'
// console.log(THREE);

// 基础内容

// 1.创建场景
const scene = new THREE.Scene()
// 2.创建相机
const camera = new THREE.PerspectiveCamera(
    75,
    window.innerWidth / window.innerHeight,
    0.1,
    1000
) //透视相机(角度,宽高比,近端,远端)

camera.position.set(0, 0, 10) //修改相机位置

scene.add(camera) //将相机添加到场景中

// 添加物体
// 创建一个几何体对象
const cubeGeometry = new THREE.BoxGeometry(1, 1, 1)
const cubeMaterial = new THREE.MeshBasicMaterial({
    color: 0xffff00
})
// 根据几何体和材质创建一个物体
const cube = new THREE.Mesh(cubeGeometry, cubeMaterial)
// 将几何体添加到场景中
scene.add(cube)

//初始化渲染器
const renderer = new THREE.WebGLRenderer()

//设置渲染的尺寸大小
renderer.setSize(window.innerWidth, window.innerHeight)
console.log(renderer);

// 将webgl渲染的canves内容添加到body上
document.body.appendChild(renderer.domElement)

// 使用渲染器,通过相机,将场景渲染进来
// renderer.render(scene, camera)


// 2023.04.26 使用控制器查看3d物体
// 创建轨道控制器
const controls = new OrbitControls(camera, renderer.domElement) //第一个参数是相机对象,第二个参数是渲染器

// 添加坐标轴辅助器
const axesHelper = new THREE.AxesHelper(5)   //参数5代表长度
scene.add(axesHelper)   //添加完成后出现坐标轴辅助器


// 设置一个渲染函数,浏览器每次刷新重新加载渲染器
function render(params) {
    renderer.render(scene, camera)  //渲染器
    requestAnimationFrame(render) //requestAnimationFrame==》请求动画帧 接收一个渲染函数  渲染下一帧的时候就会执行render函数
}

render()//一开始的时候渲染一下
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值