[page:Material] →


The default material used by [page:Points].

Code Example

const vertices = []; for ( let i = 0; i < 10000; i ++ ) { const x = THREE.MathUtils.randFloatSpread( 2000 ); const y = THREE.MathUtils.randFloatSpread( 2000 ); const z = THREE.MathUtils.randFloatSpread( 2000 ); vertices.push( x, y, z ); } const geometry = new THREE.BufferGeometry(); geometry.setAttribute( 'position', new THREE.Float32BufferAttribute( vertices, 3 ) ); const material = new THREE.PointsMaterial( { color: 0x888888 } ); const points = new THREE.Points( geometry, material ); scene.add( points );


[example:misc_controls_fly misc / controls / fly]
[example:webgl_buffergeometry_drawcalls WebGL / BufferGeometry / drawcalls]
[example:webgl_buffergeometry_points WebGL / BufferGeometry / points]
[example:webgl_buffergeometry_points_interleaved WebGL / BufferGeometry / points / interleaved]
[example:webgl_camera WebGL / camera ]
[example:webgl_geometry_convex WebGL / geometry / convex]
[example:webgl_geometry_shapes WebGL / geometry / shapes]
[example:webgl_interactive_raycasting_points WebGL / interactive / raycasting / points]
[example:webgl_multiple_elements_text WebGL / multiple / elements / text]
[example:webgl_points_billboards WebGL / points / billboards]
[example:webgl_points_dynamic WebGL / points / dynamic]
[example:webgl_points_sprites WebGL / points / sprites]
[example:webgl_trails WebGL / trails]


[name]( [param:Object parameters] )

[page:Object parameters] - (optional) an object with one or more properties defining the material's appearance. Any property of the material (including any property inherited from [page:Material]) can be passed in here.

The exception is the property [page:Hexadecimal color], which can be passed in as a hexadecimal string and is *0xffffff* (white) by default. [page:Color.set]( color ) is called internally.


See the base [page:Material] class for common properties.

[property:Texture alphaMap]

The alpha map is a grayscale texture that controls the opacity across the surface (black: fully transparent; white: fully opaque). Default is null.

Only the color of the texture is used, ignoring the alpha channel if one exists. For RGB and RGBA textures, the [page:WebGLRenderer WebGL] renderer will use the green channel when sampling this texture due to the extra bit of precision provided for green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and luminance/alpha textures will also still work as expected.

[property:Color color]

[page:Color] of the material, by default set to white (0xffffff).

[property:Texture map]

Sets the color of the points using data from a [page:Texture].

[property:Boolean morphTargets]

Define whether the material uses morphTargets. Default is false.

[property:Number size]

Sets the size of the points. Default is 1.0.
Will be capped if it exceeds the hardware dependent parameter [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/getParameter gl.ALIASED_POINT_SIZE_RANGE].

[property:Boolean sizeAttenuation]

Specify whether points' size is attenuated by the camera depth. (Perspective camera only.) Default is true.



[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]