threeJs第一课

1、CSS2DObject 给new THREE.Mesh( earthGeometry, earthMaterial )添加html元素 label(例如球体多边形,以及模型)
2、通过new THREE.BoxBufferGeometry、new THREE.SphereBufferGeometry可以分别用来创建长方体、球体,
同样通过BoxGeometry、SphereGeometry也可以用来分别创建长方体、球体。BufferGeometry,BoxGeometry、SphereGeometry等Three.js API的基类是Geometry
使用BufferGeometry解析的时候相对Geometry少了一步,自然性能更高一些。
3 three.js中的包含的材质的种类有很多,大体上有:
MeshBaseMaterial(网格基础材质)、MeshLamberMaterial(网格朗伯材质)、MeshPhongMaterial(网格Phong式材质)、ShaderMaterial(着色器材质)、LineBasicMaterial(直线基础材质)、LineDashedMaterial(虚线材质)、MeshDepthMaterial(网格深度材质)、MeshNormalMaterial(网格法向材质)、MeshFaceMaterial(网格面材质)
(1).MeshBaseMaterial(网格基础材质)是一种非常简单的材质,这种材质不会考虑光照的影响。使用这种材质网格备渲染成简单的平面多边形,并且可以显示几何体的线框。
(2).MeshDepthMaterial(网格深度材质)使用该材质的物体的外观不是由某个材质属性决定的,而是由物体到相机的距离决定的,离相机越近越亮,离相机越远越暗。该材质的属性很少,没有设置物体颜色的属性。如果想改变物体的颜色,就需要创建多材质的物体。
(3).MeshNormalMaterial(网格法向材质)通过法向量来映射RGB颜色。每个法向量不同的面都会赋予不同的颜色。
(4).MeshFaceMaterial(网格面材质)可以为几何体每一个面指定不同的材质。比如一个立方体有六个面你可以为每个面指定一个材质。
(5).MeshLambertMaterial(网格朗伯材质)用于创建看上去暗淡的、不光亮的表面,可以对光源产生阴影的效果。
(6).MeshPhongMaterial(网格phong式材质)用于创建光亮表面的材质。可以产生阴影的效果。
(7).ShaderMaterial(着色器材质)该材质是最复杂的一种材质,可以使用自己定制的着色器。
4、TextureLoader数据纹理加载器
5、ColladaLoader  ColladaLoader  是一个3D模型交换方案,即不同的3D模型可以通过ColladaLoader进行相互转换,言外之意,threejs可以使用ColladaLoader将3D模型的数据转换成自己支持的格式,从而在浏览器上渲染出来。
6、new Three.Mesh几何体是不能被渲染的,只有几何体和材质结合成网格才能被渲染到屏幕上
7、TrackballControls 轨迹球控件,最常用的控件,可以使用鼠标轻松的移动、平移,缩放场景

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
three.js是一个用于创建3D场景的JavaScript库。它提供了许多功能和工具,以便开发者可以在网页中呈现逼真且交互式的3D图形。 在使用three.js创建第一人称移动效果时,我们可以通过一些技术和方法来实现。首先,我们需要一个相机对象来模拟第一人称视角。相机对象可以通过使用PerspectiveCamera或者其他相机类型进行创建,并设置其位置、视野角度等参数。 其次,我们需要一个控制器来控制相机的移动。three.js提供了一些控制器类,如OrbitControls和PointerLockControls,可以让我们更方便地控制相机的移动。其中,PointerLockControls是一个用于第一人称控制的控制器,它可以使鼠标控制相机的移动,并隐藏鼠标指针。 在设置好相机和控制器后,我们可以通过监听鼠标或键盘事件来实现相机的移动。按下特定按键或移动鼠标时,我们可以更新相机的位置和方向信息,并实时渲染场景,从而实现第一人称的移动效果。 除此之外,我们还可以通过添加移动限制或碰撞检测来提高第一人称移动的真实感。通过限制相机的移动范围或通过检测与场景中的物体碰撞来模拟现实中的环境互动。 总之,通过使用three.js提供的相机、控制器和事件监听等功能,结合一些附加技术和方法,我们可以实现逼真而流畅的第一人称移动效果。这为开发者提供了在网页中创造出沉浸式3D体验的机会。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值