ThreeJS入门知识

ThreeJS中几个重要对象:

场景:三维世界的容器,所有的元素均必须放在场景中才可以被看到,比如:模型、灯光等等;

1 var scene = new THREE.Scene();

摄相机:可以理解为场景中的人眼,人必须通过摄相机来观察三维场景中的物体;

var camera = new THREE.PerspectiveCamera(50,window.innerWidth/window.innerHeight,0.1,1000);

 函数原型:

THREE.PerspectiveCamera = function ( fov, aspect, near, far )

参数定义:

fov:眼角大小,表示眼睁开的角度,该值越在,则场景中的物体越小,反之亦然;

aspect:摄相机纵横比;

near:摄相机近裁切面距离;当物体距摄相机距离小于该值时,物体无法显示;

far :摄相机远裁切面距离;当物体距摄相机距离大于该值时,物体无法显示;、

还有其它类型的摄相机,参数大同小异,不一一赘述;

渲染器:这个概念我也不是很清楚,大概相当于一个滤镜吧,如果场景中没有渲染器,则场景无法显示;

1 var renderer = new THREE.WebGLRenderer();

下面一段简单的示例代码:

 1 <--!DOCTYPE html>
 2 <html>
 3 <head>
 4 <title>ThreeJSTest_Author_ff</title>
 5 <style>canvas { width: 100%; height: 100% }</style>
 6 <script src="threejs\\build\\three.js"></script>
 7 </head>
 8 <body>
 9 <script>
10     //场景初始化
11     var scene = new THREE.Scene();
12     //相机初始化
13     var camera = new THREE.PerspectiveCamera(50,window.innerWidth/window.innerHeight,0.1,1000);
14     //渲染器初始化
15     var renderer = new THREE.WebGLRenderer();
16
17     //设置渲染器大小
18     //大家可以设置不同的数值试一下具体效果
19     renderer.setSize(window.innerWidth,window.innerHeight);
20     //将渲染器画面与网页关联
21     //没有该句则场景无法正常显示
22     document.body.appendChild(renderer.domElement);
23
24     //生成一个BOX几何体
25     //在ThreeJS中,单独的几何体是无法渲染的
26     var geometry = new THREE.CubeGeometry(1,1,1);
27     //设置材质
28     var material = new THREE.MeshBasicMaterial({color : 0x00ff00});
29     //生成网格模型,Mesh在ThreeJS中可以渲染的
30     var cube = new THREE.Mesh(geometry,material);
31     //将模型添加到场景中
32     scene.add(cube);
33
34     //设置摄相机位置
35     //坐标的相关知识大家可以去网上搜一下OpenGl的坐标系
36     //ThreeJS的坐标系跟OpenGl的坐标系是一致的
37     camera.position.z = 5;
38     //camera.position.z = 5;
39
40     //渲染函数
41     function render()
42     {
43         //设置重复渲染回调
44         requestAnimationFrame(render);
45         //设置模型放置角度,实现动画效果
46         cube.rotation.x += 0.1;
47         cube.rotation.y += 0.1;
48         //渲染
49         renderer.render(scene,camera);
50     }
51
52     //调用渲染函数
53     render();
54
55 </script>
56 </body>
57 </html>
时间: 2024-11-07 04:55:48

ThreeJS入门知识的相关文章

ESB (Enterprise Service Bus)入门知识

本文主要介绍ESB相关的一些技术概念与术语,还有一些入门的需要了解的基础知识,并初步了解介绍一些ESB产品.由于本人刚接触ESB,所以将自己的学习内容与过程,记录下来!愿在这里与大家分享一下,共同进步与提高! [转载使用,请注明出处:http://blog.csdn.net/mahoking] EAI 企业应用集成(Enterprise Application Integration):是完成在组织内.外的各种异构系统.应用和数据源之间共享.交换信息.协作的途径,方法学,标准和技术. 所连接的应

债券入门知识

可参考此链接: http://www.jisilu.cn/topic/%E4%BC%81%E4%B8%9A%E5%80%BA%E6%85%A2%E8%B0%88 国债: 凭证式国债: 国家采取不印刷实物券,而用填制国库券收款凭证的方式发行的国债.它是以国债收款凭单的形式来作为债权证明,不可上市流通转让,从购买之日起计息.在持有期内,持券人如遇特殊情况需要握取现金,可以到购买网点提前兑取.提前兑取时,除偿还本金外,利息按实际持有天数及相应的利率档次计算.凭证式国债在银行柜台凭身份证购买,与银行定期

基金入门知识

1. 基金是什么? 基金就是代大家理财的一个产品.比如股票型基金,就是把大家的钱收集起来,由买股经验丰富的基金经理帮大家买股票. 2. 基金产品靠什么挣钱? 基金依靠用户买入和赎回基金份额时的手续费,还有交纳的管理费等挣钱.如果某基金经理非常牛B,给投资人带来了丰厚的回报,那么买这支产品的人就越来越多,这样基金产品就越来越赚钱.相反,如果基金产品投资管理不善,给投资人带来了损失,那么买这支产品的人就是越来越少,可用于投资的钱就是越来越少,进一步削弱提高收益的可能性.基金产品并不直接从投资行为中挣

移动H5开发入门知识,CSS的单位汇总与用法

说到css的单位,大家应该首先想到的是px,也就是像素,我们在网页布局中一般都是用px,但是近年来自适应网页布局越来越多,em和百分比也经常用到了.然后随着手机的流行,web app和hybrid app的开发,都用到了css3技术,在css3中,新增了许多单位,rem.vw和vh.vmin和vmax.ch和ex等等,那现在对这些单位分别做一下详细的介绍吧. 1.em 做前端的应该对em不陌生,不是什么罕见的单位,是相对单位,参考物是父元素的font-size,具有继承的特点.如果字体大小是16

requirejs入门知识整理

使用模块化开发处理的三大问题: 1.命名冲突:2.繁琐的文件依赖 3.实现异步非阻塞的文件加载,避免网页失去响应 模块化的设计使得JavaScript代码在需要访问“全局变量”的时候,都可以通过依赖关系,把这些“全局变量”作为参数传递到模块的实现体里,在实现中就避免了访问或者声明全局的变量或者函数,有效的避免大量而且复杂的命名空间管理. requirejs以一个相对于baseUrl的地址来加载所有的代码.如果用了data-main属性,则该路径就是baseUrl,baseUrl亦可通过requi

Unity入门知识

参考书:<Unity3D 游戏开发> scene图中按F键:放大,居中当前选中的物体 坐标轴:红-x轴,绿-y轴,蓝-z轴 逐帧运行程序: OnGUI:可以用来画界面 高级控件 or 低级控件? Label控件也可以贴图 只有脚本的公有变量才可以在编辑器中直接赋值.Texture.String等 游戏界面可以由若干个窗口组成,而每个窗口又由若干个视图组成.创建窗口时需要设定他的显示区域,在窗口中可以添加任意组件,前提是组件的显示区域必须在窗口当中,否则无法显示.另外,窗口中的所有控件都采用相对

MySQL入门知识

简单介绍下吧,MySQL应用的场景大多数互联网公司第一次卖身是卖个了sun好像是10亿,第二次是连同sun自己,以74亿美元被卖给了Orecle~后面MySQL原作者站出来说,MySQL会存在闭源风险,整了个MariaDB~我也是醉了,也不考虑下我们的痛苦!下面简要介绍下MySQL的入门知识. 一.MySQL有三种定义语言 DDL:定义语言,比如:创建一张表,定义表的属性如索引.宽位等待 DML:操作语言,增删查改 DCL:控制语言,比如限定那个账户只能通过那个IP登入,又比如那个账户能访问那些

前端制作入门知识

原文链接:http://caibaojian.com/frontend-base.html 前端制作入门知识 A-A+ 前端博客•2015-08-18•前端开发•CSS | 前端基础•2020View1 文章目录 一.名词解释 二.文本格式化 三.表单表格 四.文本格式化 五.CSS布局 六.html5视频音频 七.一些约定 八.命名空间 九.基本设置-public.css 十.框架设置 来自百度文库:web前端学习总结(精华版),里面讲了许多的知识,非常适合刚进入前端的童鞋,就算一些有点基础的

H5移动端开发入门知识以及CSS的单位汇总与用法

说到css的单位,大家应该首先想到的是px,也就是像素,我们在网页布局中一般都是用px,但是近年来自适应网页布局越来越多,em和百分比也经常用到了.然后随着手机的流行,web app和hybrid app的开发,都用到了css3技术,在css3中,新增了许多单位,rem.vw和vh.vmin和vmax.ch和ex等等,那现在对这些单位分别做一下详细的介绍吧. 1.em 做前端的应该对em不陌生,不是什么罕见的单位,是相对单位, 这种技术需要一个参考点,一般都是以<body>的“font-siz