1 下载Three.js代码

https://github.com/mrdoob/three.js/tree/master/build

2 引用方法

在HTML中添加以下代码:

<script type="text/javascript" src="js/three.js"></script>

3 定义Canvas元素

手动定义Canvas元素(WebGL渲染的需要)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>1</title>
<script type="text/javascript" src="js/three.js"></script>
<script>
function init() { }
</script>
</head>
<body onload="init()">
<canvas id="mainCanvas" width="400px" height="300px"></canvas> </body>
</html>

4 定义三大件

三大件指创建一个典型的Three.js程序中至少应包含的三个基本元素:渲染器、场景和照相机。

4.1 渲染器(Renderer)

4.2 场景(Scene)

4.3 照相机(Camera)

他们之间的关系

  场景就像一个舞台,上面可以放各种各样的东西

  渲染器就像舞台上的灯光,它决定了观众看到的东西是是什么样的效果

  照相机就像观众的眼睛,观众站的位置不一样,看到的舞台上的东西也不会完全相同

  而舞台上的东西则需要通过  scene.add() 来放上去

本节完整代码

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>1</title>
<script type="text/javascript" src="js/three.js"></script>
<script>
function init() {
// 定义三大件
var renderer = new THREE.WebGLRenderer( // 定义渲染器
{
canvas:document.getElementById('mainCanvas') // 与手动定义的Canvas的id的名字一致
/* 也可以通过three.js自行生成Canvas元素
renderer.setSize(400,300);
document.getElementsByTagName('body')[0].appendChild(renderer.domElement); */
}
);
renderer.setClearColor(0x000000); // 将背景色设为黑(清除图像) var scene = new THREE.Scene() // 定义场景 var camera = new THREE.PerspectiveCamera(45,4/3,1,1000); // 定义一个透视投影照相机
camera.position.set(0,0,5); // 设置照相机的坐标
scene.add(camera) // 将照相机添加进场景中 }
</script>
</head>
<body onload="init()">
<canvas id="mainCanvas" width="400px" height="300px"></canvas> </body>
</html>

 注:本系列Three.js文章主要为《Three.js入门指南》的学习笔记以及一些个人理解,欢迎交流讨论,感谢作者张雯莉~

 OVER~

最新文章

  1. 十一个行为模式之状态模式(State Pattern)
  2. 如何 实现PHP多版本的 共存 和 切换?
  3. styleId妙用
  4. tomcat域名问题
  5. linux下最大文件数
  6. springboot快速搭建
  7. HDU 2196Computer(树形DP)
  8. L001-oldboy-mysql-dba-lesson01
  9. android之保存偏好设置信息到shareSharedPreferences,轻量级的保存数据的方法
  10. ubuntu14.04LTS ruby on rails 开发环境
  11. android 配置环境变量
  12. Eclipse中的Maven项目报Unbound classpath variable错误
  13. tensorboard使用过程错误记录
  14. 第二章 函数和window对象
  15. cookie和session的关联关系
  16. centos7配置mysql
  17. uboot中fdt命令的使用
  18. java web 常用正则
  19. 用JavaScript中lodash编写双色球
  20. 【CF contest/792/problem/E】

热门文章

  1. WebStorm2018破解教程
  2. wondiws+centos 双系统
  3. 纪中20日c组模拟赛T1 2121. 简单游戏
  4. 关于在ssm下创建项目使用阿里巴巴下的druid数据库报错,出现无法创建连接的原因
  5. Linux CURL的安装和使用
  6. Windows电脑常用快捷键
  7. javaweb实现注册页面(数据库连接以及ajax验证)
  8. 文件流之输入输出(类似于freopen重定向)
  9. Excel时间格合并(年月日+时间点)
  10. CF1237F Balanced Domino Placements