UNPKG

@polygonjs/polygonjs

Version:

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

65 lines (64 loc) 4.78 kB
/** * computes the gradient of an SDF function * * @remarks * * The SDF function can be generated from nodes created inside this node. * * * The computation is based on [https://www.iquilezles.org/www/articles/normalsSDF/normalsSDF.htm](https://www.iquilezles.org/www/articles/normalsSDF/normalsSDF.htm) */ import { TypedSubnetGlNode } from './Subnet'; import { GlConnectionPointType } from '../utils/io/connections/Gl'; import { NodeParamsConfig } from '../utils/params/ParamsConfig'; import { ShadersCollectionController } from './code/utils/ShadersCollectionController'; import { SubnetOutputGlNode } from './SubnetOutput'; import { SubnetInputGlNode } from './SubnetInput'; import { GlType } from '../../poly/registers/nodes/types/Gl'; declare const SDFGradientGlParamsConfig_base: { new (...args: any[]): { inputs: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FOLDER>; inputsCount: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputType0: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName0: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType1: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName1: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType3: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName3: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType4: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName4: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType5: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName5: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType6: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName6: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType7: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName7: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType8: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName8: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; inputType9: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>; inputName9: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>; spare: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FOLDER>; }; } & typeof NodeParamsConfig; declare class SDFGradientGlParamsConfig extends SDFGradientGlParamsConfig_base { epsilon: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>; } export declare class SDFGradientGlNode extends TypedSubnetGlNode<SDFGradientGlParamsConfig> { paramsConfig: SDFGradientGlParamsConfig; static type(): Readonly<GlType.SDF_GRADIENT>; protected _expectedInputsCount(): number; protected _expectedInputTypes(): GlConnectionPointType[]; protected _expectedOutputTypes(): GlConnectionPointType[]; protected _expectedInputName(index: number): string; protected _expectedOutputName(index: number): string; childExpectedOutputConnectionPointTypes(): GlConnectionPointType[]; childExpectedOutputConnectionPointName(index: number): string; setSubnetInputLines(shadersCollectionController: ShadersCollectionController, childNode: SubnetInputGlNode): void; setSubnetOutputLines(shadersCollectionController: ShadersCollectionController, childNode: SubnetOutputGlNode): void; setLines(shadersCollectionController: ShadersCollectionController): void; private _declareFunctions; private _callFunctions; } export {};