TileCreasedNormalsPlugin.html.md 1.6 KB

TileCreasedNormalsPlugin

A plugin for 3d-tiles-renderer that computes creased vertex normals for the geometry of each loaded tile: smooth normals everywhere except where faces meet at an angle greater than the crease angle. Useful for photogrammetry tile sets like Google Photorealistic 3D Tiles which come without vertex normals.

The normals are computed in a Web Worker so tile processing doesn't block the main thread. Tiles are displayed once their normals are ready.

Code Example

tiles.registerPlugin( new TileCreasedNormalsPlugin( { creaseAngle: Math.PI / 6 } ) );

Import

TileCreasedNormalsPlugin is an addon, and must be imported explicitly, see Installation#Addons.

import { TileCreasedNormalsPlugin } from 'three/addons/misc/TileCreasedNormalsPlugin.js';

Constructor

new TileCreasedNormalsPlugin( options : Object )

Constructs a new plugin.

options

The configuration options.

creaseAngle

The crease angle in radians.

Default is Math.PI/3.

Properties

.creaseAngle : number

The crease angle in radians.

Methods

.dispose()

Called by the tiles renderer when the plugin is unregistered or the tiles renderer is disposed.

.processTileModel( scene : Object3D ) : Promise

Called by the tiles renderer for each loaded tile model. The tile is displayed once the returned promise resolves.

scene

The tile model.

Returns: A promise that resolves when all geometries have creased normals.

Source

examples/jsm/misc/TileCreasedNormalsPlugin.js

粤ICP备19079148号