UNPKG

@needle-tools/engine

Version:

Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.

36 lines (35 loc) 1.61 kB
import { LODsManager as _LODsManager, NEEDLE_progressive_plugin } from "@needle-tools/gltf-progressive"; import type { LOD_Results } from "@needle-tools/gltf-progressive/src/lods_manager.js"; import { Camera, Mesh, Scene, WebGLRenderer } from "three"; import type { Context } from "./engine_context.js"; /** * Needle Engine LODs manager. Wrapper around the internal LODs manager. * It uses the @needle-tools/gltf-progressive package to manage LODs. * @link https://npmjs.com/package/@needle-tools/gltf-progressive */ export declare class LODsManager implements NEEDLE_progressive_plugin { readonly context: Context; private _lodsManager?; private _settings; /** * The internal LODs manager. See @needle-tools/gltf-progressive for more information. * @link https://npmjs.com/package/@needle-tools/gltf-progressive */ get manager(): _LODsManager | undefined; get skinnedMeshAutoUpdateBoundsInterval(): number; set skinnedMeshAutoUpdateBoundsInterval(value: number); /** * The target triangle density is the desired max amount of triangles on screen when the mesh is filling the screen. * @default 200_000 */ get targetTriangleDensity(): number; set targetTriangleDensity(value: number); constructor(context: Context); private applySettings; /** @internal */ setRenderer(renderer: WebGLRenderer): void; disable(): void; /** @internal */ onAfterUpdatedLOD(_renderer: WebGLRenderer, _scene: Scene, camera: Camera, mesh: Mesh, level: LOD_Results): void; private onRenderDebug; }