r3f-managed-glb
Version:
Wrapper around the gbl/gltf loader that allows handling and customizing only selected nodes in JSX instead of generating the full JSX file.
46 lines (45 loc) • 1.52 kB
TypeScript
import { Custom } from './types';
import * as THREE from 'three';
export declare const preloadGLB: (glb: string) => undefined;
export declare const extructProps: (node: THREE.Object3D) => {
name: string;
animations: THREE.AnimationClip[];
position: THREE.Vector3;
rotation: THREE.Euler;
scale: THREE.Vector3;
userData: Record<string, any>;
matrix: THREE.Matrix4;
matrixAutoUpdate: boolean;
matrixWorld: THREE.Matrix4;
matrixWorldAutoUpdate: boolean;
matrixWorldNeedsUpdate: boolean;
castShadow: boolean;
receiveShadow: boolean;
renderOrder: number;
up: THREE.Vector3;
visible: boolean;
uuid: string;
} | {
material: any;
geometry: any;
name: string;
animations: THREE.AnimationClip[];
position: THREE.Vector3;
rotation: THREE.Euler;
scale: THREE.Vector3;
userData: Record<string, any>;
matrix: THREE.Matrix4;
matrixAutoUpdate: boolean;
matrixWorld: THREE.Matrix4;
matrixWorldAutoUpdate: boolean;
matrixWorldNeedsUpdate: boolean;
castShadow: boolean;
receiveShadow: boolean;
renderOrder: number;
up: THREE.Vector3;
visible: boolean;
uuid: string;
};
export declare const isIncluded: (name: string, string: string) => boolean;
export declare const getCustom: (name: string, custom: Custom) => ((Node: import('react').FC, node: THREE.Object3D) => import('react').ReactElement | null) | null;
export declare const meshesInNodeByCount: (nodeName: string, count?: number) => string;