@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
38 lines (37 loc) • 1.58 kB
TypeScript
/**
* Layout UVs of multiple objects so that they have no overlap
*
* @remarks
*
* lays out the UVs of input geometries so that they fit in a 1x1 square and do not overlap.
*
* @remarks
*
* This node can be very useful to prepare geometries to use a lightmap in their materials. A typical setup would be:
*
* input geometry -> sop/Face -> sop/UvUnwrap -> sop/UvLayout
*
*
*/
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { SopType } from '../../poly/registers/nodes/types/Sop';
declare class UvLayoutSopParamConfig extends NodeParamsConfig {
/** @param expected map resolution */
res: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param padding between uv islands, in pixels */
padding: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param uv attribute to layout */
uv: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
/** @param new uv attribute that will be set or created */
uv2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
}
export declare class UvLayoutSopNode extends TypedSopNode<UvLayoutSopParamConfig> {
paramsConfig: UvLayoutSopParamConfig;
static type(): SopType;
initializeNode(): void;
private _operation;
cook(input_contents: CoreGroup[]): void;
}
export {};