three.js如何绘制一个点,不能使用Geometry类,因为这个在新版本的three.js种不适用
时间: 2023-11-22 11:07:38 浏览: 37
在新版本的three.js中,可以使用BufferGeometry和BufferAttribute来绘制点。
具体步骤如下:
1. 创建BufferGeometry对象
```javascript
var geometry = new THREE.BufferGeometry();
```
2. 创建顶点数据
```javascript
var positions = new Float32Array( [ 0, 0, 0 ] );
```
3. 创建BufferAttribute对象
```javascript
var positionAttribute = new THREE.BufferAttribute( positions, 3 );
```
4. 将BufferAttribute对象添加到BufferGeometry对象中
```javascript
geometry.addAttribute( 'position', positionAttribute );
```
5. 创建点对象
```javascript
var point = new THREE.Points( geometry, material );
```
6. 将点对象添加到场景中
```javascript
scene.add( point );
```
完整代码如下:
```javascript
var geometry = new THREE.BufferGeometry();
var positions = new Float32Array( [ 0, 0, 0 ] );
var positionAttribute = new THREE.BufferAttribute( positions, 3 );
geometry.addAttribute( 'position', positionAttribute );
var material = new THREE.PointsMaterial( { color: 0xffffff } );
var point = new THREE.Points( geometry, material );
scene.add( point );
```