版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Three.js初探,我是讲师董美琪,概念,what is three.js,three.js是一个基于webgl的3D图形编程框架 three.js以简单 直观的方式封装了3d图形编程中常用的对象。,02,创建程序,创建一个程序,three.js在创建一个程序的时候需要有三个基本对象: 1. 场景(screen) 2. 相机 (camera) 3. 渲染器 (renderer) 4. 几何图形(geometry) 拿电影来类比的话,场景对应于整个布景空间,相机是拍摄镜头,渲染器用来把拍摄好的场景转换成胶卷(对于网页来讲,是电脑屏幕)。 场景和相机代表了3D观察空间和数据模型,渲染器则包含了W
2、ebGL绘图上下文和着色器。,相机分类,1. 远景(透视)相机 (PerspectiveCamera) 2. 正交(正投影)相机 (OrthographicCamera),远景(透视)相机,PerspectiveCamera( fov, aspect, near, far ) fov 相机视锥体垂直视角 aspect 相机视锥体宽高比 near 相机视锥体近裁剪面 far 相机视锥体远裁剪面。 例子 var camera = new THREE.PerspectiveCamera( 45, width / height, 1, 1000 ); scene.add( camera );,正交相机
3、,OrthographicCamera( left, right, top, bottom, near, far ) left 相机视椎体(Camera frustum)左面。 right 相机视椎体(Camera frustum)右面。 top 相机视椎体(Camera frustum)上面。 bottom 相机视椎体(Camera frustum)下面。 near 相机视椎体(Camera frustum)前面(靠近相机的这一面)。 far 相机视椎体(Camera frustum)后面(远离相机的这一面)。 例子: var camera = new THREE.OrthographicC
4、amera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 ); scene.add( camera );,创建一个场景,var scene = new THREE.Scene(); var camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 0.1, 1000 ); var renderer = new THREE.WebGLRenderer(); renderer.setSize( window.innerWi
5、dth, window.innerHeight ); document.body.appendChild( renderer.domElement );,添加演员,/ 创建一个立方体 var geometry = new THREE.BoxGeometry( 1, 1, 1 ); / 添加材质 var material = new THREE.MeshBasicMaterial( color: 0 x00ff00 ); / 创建一个网孔(Mesh)。网孔是用来承载几何模型的一个对象,还可以把材料应用到它上面,然后添加到场景中完成旋转动画。 var cube = new THREE.Mesh(
6、geometry, material ); / 把网孔添加到场景中 scene.add( cube ); / 当我们调用 scene.add() 时,对象将被添加到原点处,即坐标点(0,0,0),这将导致相机和立方体发生空间重叠。为了避免这样,我们把相机(camera)的位置移出来一些。 camera.position.z = 5;,渲染场景(拍片),function render() requestAnimationFrame( render ); cube.rotation.x += 0.1; cube.rotation.y += 0.1; renderer.render( scene, camera ); render();,03,矩阵变换,常量,矩阵变换,在webgl中所有点是以矩阵的形式变换的,3d动画也
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026外勤巡逻面试题目及答案
- 2026舞蹈绘画面试题目及答案
- 2026消防报建员面试题及答案
- (2026版)委托借款合同范本
- 26秋三年级上册语文1-8单元生字词默写
- 阳春市河口镇石旗岭矿区项目环境影响报告表
- 2025-2026学年河北省张家口市阳原县数学四年级下学期期末监测模拟试题含答案解析
- 国能新疆煤制气有限公司招聘工笔试真题2025
- 金堂县委社会工作部招募社会工作服务岗笔试真题2025
- 福建福州地铁集团有限公司招聘笔试真题2025
- 2026年澜沧现代农业发展集团有限责任公司社会招聘(5人)考试备考题库及答案详解
- 2026年重庆市“五方面人员”选拔乡镇领导班子考试历年参考题库(含完整答案)
- (正式版)DB31 650-2020 《非织造布单位产品能源消耗限额》
- 公司绩效考核与薪酬发放实施细则制度
- 2026年高考四川卷化学高考真题试题(含答案)
- 以工代赈基础设施建设项目监理规划
- 成人术中外周静脉输液技术操作及管理指南(2026版)
- LY/T 1497-2025枣
- 2026年事业单位考试国内核心时事政治考点梳理(附50题)
- (已压缩)广东省工程勘察设计服务成本取费导则(2024版)
- T/CECS 10214-2022钢面镁质复合风管
评论
0/150
提交评论