react-native-filament
Version:
A real-time physically based 3D rendering engine for React Native
56 lines • 2.31 kB
TypeScript
import { AABB } from './Boxes';
import type { Animator } from './Animator';
import type { Entity } from './Entity';
import { FilamentInstance } from './FilamentInstance';
import { PointerHolder } from './PointerHolder';
import { NameComponentManager } from './NameComponentManager';
export interface FilamentAsset extends PointerHolder {
/**
* Gets the transform root for the asset, which has no matching glTF node.
*
* This node exists for convenience, allowing users to transform the entire asset. For instanced
* assets, this is a "super root" where each of its children is a root in a particular instance.
* This allows users to transform all instances en masse if they wish to do so.
*/
getRoot(): Entity;
createAnimator(nameComponentManager: NameComponentManager): Animator;
/**
* Reclaims CPU-side memory for URI strings, binding lists, and raw animation data.
*/
releaseSourceData(): void;
/**
* Gets the list of entities, one for each glTF node. All of these have a Transform component.
* Some of the returned entities may also have a Renderable component and/or a Light component.
*/
getEntities: () => Entity[];
/**
* Gets the number of entities returned by entities.
*/
readonly entityCount: number;
/**
* Gets the list of entities in the asset that have renderable components.
*/
getRenderableEntities: () => Entity[];
/**
* Gets the number of entities returned by renderableEntities.
*/
readonly renderableEntityCount: number;
/**
* Gets the bounding box computed from the supplied min / max values in glTF accessors.
*
* This does not return a bounding box over all FilamentInstance, it's just a straightforward
* AAAB that can be determined at load time from the asset data.
*/
readonly boundingBox: AABB;
getFirstEntityByName(name: string): Entity | undefined;
/**
* Convenience method to get the first instance.
*/
getInstance(): FilamentInstance;
/**
* Gets all instances associated with the asset.
* List will only be greater than 1 if the asset was loaded with loadInstancedAsset.
*/
getAssetInstances(): FilamentInstance[];
}
//# sourceMappingURL=FilamentAsset.d.ts.map