点(Points)
一个用于显示点的类。 由WebGLRenderer渲染的点使用 gl.POINTS。
构造器
Points( geometry : Geometry, material : Material )
geometry —— (可选)是一个Geometry或者BufferGeometry的实例,默认值是一个新的BufferGeometry。
material —— (可选) 是一个对象,默认值是一个具有随机颜色的新的PointsMaterial。
属性
请参阅其基类Object3D来查看共有属性。
# .geometry : Geometry
一个Geometry或BufferGeometry的实例(或者派生类),定义了物体的结构。
如有可能,推荐总是使用BufferGeometry来获得最佳表现。
# .isPoints : Boolean
用于检查这个类或者其派生类是否为点,默认值为true。
你不应当对这个属性进行改变,因为它在内部使用,以用于优化。
# .material : Material
Material的实例。定义了物体的外观。默认值是一个具有随机颜色的PointsMaterial。
方法
请参阅其基类Object3D来查看共有方法。
# .raycast ( raycaster : Raycaster, intersects : Array ) : null
在一条投射出去的Ray(射线)和点之间产生交互。 Raycaster.intersectObject将会调用这个方法。
# .clone () : Points
返回这个点及其子集的一个克隆对象。
骨架(Skeleton)
使用一个bones数组来创建一个可以由SkinnedMesh使用的骨架。
var bones = [];
var shoulder = new THREE.Bone();
var elbow = new THREE.Bone();
var hand = new THREE.Bone();
shoulder.add( elbow );
elbow.add( hand );
bones.push( shoulder );
bones.push( elbow );
bones.push( hand );
shoulder.position.y = -5;
elbow.position.y = 0;
hand.position.y = 5;
var armSkeleton = new THREE.Skeleton( bones );
请查看SkinnedMesh页面,来查看其在标准的BufferGeometry中使用的示例。
构造器
Skeleton( bones : Array, boneInverses : Array )
bones —— 包含有一组bone的数组,默认值是一个空数组。
boneInverses —— (可选) 包含Matrix4的数组。
创建一个新的Skeleton.
属性
# .bones : Array
包含有一组bone的数组。请注意,这是一份原始数组的拷贝,不是引用,所以你可以在不对当前数组造成影响的情况下,修改原始数组。
# .boneInverses : Array
包含有一组Matrix4,表示每个独立骨骼matrixWorld矩阵的逆矩阵。
# .boneMatrices : Float32Array
当使用顶点纹理时,数组缓冲区保存着骨骼数据。
# .boneTexture : DataTexture
当使用顶点纹理时,DataTexture保存着骨骼数据。
方法
# .clone () : Skeleton
返回一个当前Skeleton对象的克隆。
# .calculateInverses () : null
如果没有在构造器中提供,生成boneInverses数组。
# .pose () : null
返回骨架的基础姿势。
# .update () : null
在改变骨骼后,更新boneMatrices 和 boneTexture的值。 如果骨架被用于SkinnedMesh,则它将会被WebGLRenderer自动调用。
# .getBoneByName ( name : String ) : Bone
name —— 匹配Bone对象中.name属性的字符串。
在骨架中的骨骼数组中遍览,并返回第一个能够和name匹配上的骨骼对象。