UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

55 lines (54 loc) 2.79 kB
/** * Create a cloth solver * * */ import { Object3D } from 'three'; import { CoreGroup } from '../../../core/geometry/Group'; import { NodeParamsConfig } from '../utils/params/ParamsConfig'; import { NodeContext } from '../../poly/NodeContext'; import { SopType } from '../../poly/registers/nodes/types/Sop'; import { PolyScene } from '../../scene/PolyScene'; import { TypedSopNode } from './_Base'; import { AssemblerName } from '../../poly/registers/assemblers/_BaseRegister'; import { GlAssemblerController } from '../gl/code/Controller'; import { ShaderAssemblerCloth } from '../gl/code/assemblers/cloth/ClothAssembler'; import { ClothPersistedConfig } from '../gl/code/assemblers/cloth/ClothPersistedConfig'; import { GlNodeChildrenMap } from '../../poly/registers/nodes/Gl'; import { NodeCreateOptions } from '../utils/hierarchy/ChildrenController'; import { Constructor, valueof } from '../../../types/GlobalTypes'; import { BaseGlNodeType } from '../gl/_Base'; import { ShaderName } from '../utils/shaders/ShaderName'; import { ClothController } from '../../../core/cloth/ClothController'; declare class ClothSolverSopParamsConfig extends NodeParamsConfig { } export declare class ClothSolverSopNode extends TypedSopNode<ClothSolverSopParamsConfig> { readonly paramsConfig: ClothSolverSopParamsConfig; static type(): SopType.CLOTH_SOLVER; assemblerController(): GlAssemblerController<ShaderAssemblerCloth> | undefined; usedAssembler(): Readonly<AssemblerName.GL_CLOTH>; protected _assemblerController: GlAssemblerController<ShaderAssemblerCloth> | undefined; private _createAssemblerController; readonly persisted_config: ClothPersistedConfig; private _globalsHandler; private _shadersByName; shadersByName(): Map<ShaderName, string>; protected _childrenControllerContext: NodeContext; protected initializeNode(): void; createNode<S extends keyof GlNodeChildrenMap>(node_class: S, options?: NodeCreateOptions): GlNodeChildrenMap[S]; createNode<K extends valueof<GlNodeChildrenMap>>(node_class: Constructor<K>, options?: NodeCreateOptions): K; children(): BaseGlNodeType[]; nodesByType<K extends keyof GlNodeChildrenMap>(type: K): GlNodeChildrenMap[K][]; childrenAllowed(): boolean; sceneReadonly(): boolean; cook(inputCoreGroups: CoreGroup[]): Promise<void>; updateObjectOnAdd(object: Object3D): void; compileIfRequired(): void; run_assembler(): void; private _setShaderNames; init_with_persisted_config(): void; initCoreClothControllerFromPersistedConfig(coreClothController: ClothController): void; private _findExportNodes; } export declare function getClothControllerNodeFromWorldObject(clothObject: Object3D, scene: PolyScene): ClothSolverSopNode | undefined; export {};