Skip to content

Commit

Permalink
Nodes: Update DotScreenNode, ColorAdjustmentNode, BlendModeNode (#1199)
Browse files Browse the repository at this point in the history
  • Loading branch information
Methuselah96 committed Aug 25, 2024
1 parent d10e022 commit 869f3e3
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 70 deletions.
12 changes: 2 additions & 10 deletions types/three/src/nodes/Nodes.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -300,17 +300,9 @@ export { default as VertexColorNode, vertexColor } from "./accessors/VertexColor
export { afterImage, default as AfterImageNode } from "./display/AfterImageNode.js";
export { anamorphic, default as AnamorphicNode } from "./display/AnamorphicNode.js";
export { bleach } from "./display/BleachBypassNode.js";
export { BlendMode, burn, default as BlendModeNode, dodge, overlay, screen } from "./display/BlendModeNode.js";
export * from "./display/BlendModeNode.js";
export { bloom, default as BloomNode } from "./display/BloomNode.js";
export {
ColorAdjustmentMethod,
default as ColorAdjustmentNode,
hue,
luminance,
saturation,
threshold,
vibrance,
} from "./display/ColorAdjustmentNode.js";
export * from "./display/ColorAdjustmentNode.js";
export {
ColorSpaceNodeMethod,
colorSpaceToLinear,
Expand Down
34 changes: 4 additions & 30 deletions types/three/src/nodes/display/BlendModeNode.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,39 +3,13 @@ import TempNode from "../core/TempNode.js";
import { JoinNode } from "../Nodes.js";
import { NodeRepresentation, ShaderNode, ShaderNodeObject } from "../shadernode/ShaderNode.js";

export const BurnNode: (args: { base: Node; blend: Node }) => ShaderNodeObject<JoinNode>;
export const burn: (base: NodeRepresentation, blend: NodeRepresentation) => ShaderNodeObject<Node>;

export const DodgeNode: (args: { base: Node; blend: Node }) => ShaderNodeObject<JoinNode>;
export const dodge: (base: NodeRepresentation, blend: NodeRepresentation) => ShaderNodeObject<Node>;

export const ScreenNode: (args: { base: Node; blend: Node }) => ShaderNodeObject<JoinNode>;
export const screen: (base: NodeRepresentation, blend: NodeRepresentation) => ShaderNodeObject<Node>;

export const OverlayNode: (args: { base: Node; blend: Node }) => ShaderNodeObject<JoinNode>;

export type BlendMode =
| typeof BlendModeNode.BURN
| typeof BlendModeNode.DODGE
| typeof BlendModeNode.SCREEN
| typeof BlendModeNode.OVERLAY;

export default class BlendModeNode extends TempNode {
static BURN: "burn";
static DODGE: "dodge";
static SCREEN: "screen";
static OVERLAY: "overlay";

baseNode: Node;
blendMode: BlendMode;
blendNode: Node;

constructor(blendMode: BlendMode, baseNode: Node, blendNode: Node);

setup(): Node;
}

export const burn: (baseNode: NodeRepresentation, blendNode?: NodeRepresentation) => ShaderNodeObject<BlendModeNode>;
export const dodge: (baseNode: NodeRepresentation, blendNode?: NodeRepresentation) => ShaderNodeObject<BlendModeNode>;
export const overlay: (baseNode: NodeRepresentation, blendNode?: NodeRepresentation) => ShaderNodeObject<BlendModeNode>;
export const screen: (baseNode: NodeRepresentation, blendNode?: NodeRepresentation) => ShaderNodeObject<BlendModeNode>;
export const overlay: (base: NodeRepresentation, blend: NodeRepresentation) => ShaderNodeObject<Node>;

declare module "../shadernode/ShaderNode.js" {
interface NodeElements {
Expand Down
47 changes: 17 additions & 30 deletions types/three/src/nodes/display/ColorAdjustmentNode.d.ts
Original file line number Diff line number Diff line change
@@ -1,39 +1,26 @@
import TempNode from "../core/TempNode.js";
import Node from "../core/Node.js";
import MathNode from "../math/MathNode.js";
import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";

export type ColorAdjustmentMethod =
| typeof ColorAdjustmentNode.SATURATION
| typeof ColorAdjustmentNode.VIBRANCE
| typeof ColorAdjustmentNode.HUE;

export default class ColorAdjustmentNode extends TempNode {
static SATURATION: "saturation";
static VIBRANCE: "vibrance";
static HUE: "hue";

method: ColorAdjustmentMethod;

colorNode: Node;
adjustmentNode: Node;

constructor(method: ColorAdjustmentMethod, colorNode: Node, adjustmentNode?: Node);
}

export const saturation: (
colorNode: NodeRepresentation,
adjustmentNode?: NodeRepresentation,
) => ShaderNodeObject<ColorAdjustmentNode>;
color: NodeRepresentation,
adjustment?: NodeRepresentation,
) => ShaderNodeObject<Node>;

export const vibrance: (
colorNode: NodeRepresentation,
adjustmentNode?: NodeRepresentation,
) => ShaderNodeObject<ColorAdjustmentNode>;
export const hue: (
colorNode: NodeRepresentation,
adjustmentNode?: NodeRepresentation,
) => ShaderNodeObject<ColorAdjustmentNode>;
color: NodeRepresentation,
adjustment?: NodeRepresentation,
) => ShaderNodeObject<Node>;

export const luminance: (a: NodeRepresentation, b?: NodeRepresentation) => ShaderNodeObject<MathNode>;
export const hue: (
color: NodeRepresentation,
adjustment?: NodeRepresentation,
) => ShaderNodeObject<Node>;

export const luminance: (
color: NodeRepresentation,
luminanceCoefficients?: NodeRepresentation,
) => ShaderNodeObject<MathNode>;

export const threshold: (color: NodeRepresentation, thershold: NodeRepresentation) => ShaderNodeObject<MathNode>;

Expand Down

0 comments on commit 869f3e3

Please sign in to comment.