three.js 基础实战 —— 创建画布
一、场景创建
要显示一个画面需要有以下三个元素: scene, camera 和 renderer,renderer 渲染器是根据 scene 和 camera 进行渲染的
// 创建 scene |
二、添加物体
1、通过 BoxGeometry 对象创建一个正方体实例
const boxWidth = 1; |
2、创建一个基础材质实例
const material = new THREE.MeshBasicMaterial({ color: 0x44aa88 }); |
3、创建一个网格实例,里面包含上述正方体和材质
const cube = new THREE.Mesh(geometry, material); |
4、把正方体添加到场景里
scene.add(cube); |
以上把一个网格模式下的正方体添加到了画布上,不难看出 three.js 的组织方式可以用下图表示
三、渲染物体
以上只是把物体加到了画布上,但是并没有渲染, 下面我们来看 three.js 的渲染方式
1、静态渲染,这会使物体看起来就像 2d 一样
renderer.render(scene, camera); |
2、动态渲染,使物体看起来更有 3d 效果
使用 requestAnimationFrame api 一帧一帧的渲染场景,同时在每一帧旋转一下正方体
function render(time) { |
四、添加光线
为了使正方形看起来更加有立体感,我们可以给他加点光线,在加光线之前,我们需要先把目前的材质替换成可以受光影响的材质
// const material = new THREE.MeshBasicMaterial({ color: 0x44aa88 }); |
替换了材质之后就可以添加光线了
const color = 0xfffff0; |
五、检测浏览器是否支持 webGL
if (WEBGL.isWebGLAvailable()) { |
参考文档:
本文标题:three.js 基础实战 —— 创建画布
文章作者:Canace
发布时间:2020-09-14
最后更新:2024-04-23
原始链接:https://canace.site/three-js%E5%9F%BA%E7%A1%80%E5%AE%9E%E6%88%98/
版权声明:转载请注明出处
分享