62 lines
2 KiB
C++
62 lines
2 KiB
C++
// Copyright 2020 Phyronnaz
|
|
|
|
#include "VoxelNodes/VoxelGradientPerturbNodes.h"
|
|
#include "VoxelContext.h"
|
|
#include "FastNoise/VoxelFastNoise.inl"
|
|
|
|
UVoxelNode_2DGradientPerturb::UVoxelNode_2DGradientPerturb()
|
|
{
|
|
SetInputs(
|
|
{ "X", EC::Float, "X" },
|
|
{ "Y", EC::Float, "Y" },
|
|
{ "Frequency", EC::Float, "The frequency of the noise" },
|
|
{ "Amplitude", EC::Float, "The amplitude of the perturbation, in the same unit as the input" },
|
|
{ "Seed", EC::Seed, "Seed" });
|
|
SetOutputs(
|
|
{ "X", EC::Float, "X with perturbation" },
|
|
{ "Y", EC::Float, "Y with perturbation" });
|
|
}
|
|
|
|
UVoxelNode_2DGradientPerturbFractal::UVoxelNode_2DGradientPerturbFractal()
|
|
{
|
|
SetInputs(
|
|
{ "X", EC::Float, "X" },
|
|
{ "Y", EC::Float, "Y" },
|
|
{ "Frequency", EC::Float, "The frequency of the noise" },
|
|
{ "Amplitude", EC::Float, "The amplitude of the perturbation, in the same unit as the input" },
|
|
{ "Seed", EC::Seed, "Seed" });
|
|
SetOutputs(
|
|
{ "X", EC::Float, "X with perturbation" },
|
|
{ "Y", EC::Float, "Y with perturbation" });
|
|
}
|
|
|
|
UVoxelNode_3DGradientPerturb::UVoxelNode_3DGradientPerturb()
|
|
{
|
|
SetInputs(
|
|
{ "X", EC::Float, "X" },
|
|
{ "Y", EC::Float, "Y" },
|
|
{ "Z", EC::Float, "Z" },
|
|
{ "Frequency", EC::Float, "The frequency of the noise" },
|
|
{ "Amplitude", EC::Float, "The amplitude of the perturbation, in the same unit as the input" },
|
|
{ "Seed", EC::Seed, "Seed" });
|
|
SetOutputs(
|
|
{ "X", EC::Float, "X with perturbation" },
|
|
{ "Y", EC::Float, "Y with perturbation" },
|
|
{ "Z", EC::Float, "Z with perturbation" });
|
|
}
|
|
|
|
UVoxelNode_3DGradientPerturbFractal::UVoxelNode_3DGradientPerturbFractal()
|
|
{
|
|
SetInputs(
|
|
{ "X", EC::Float, "X" },
|
|
{ "Y", EC::Float, "Y" },
|
|
{ "Z", EC::Float, "Z" },
|
|
{ "Frequency", EC::Float, "The frequency of the noise" },
|
|
{ "Amplitude", EC::Float, "The amplitude of the perturbation, in the same unit as the input" },
|
|
{ "Seed", EC::Seed, "Seed" });
|
|
SetOutputs(
|
|
{ "X", EC::Float, "X with perturbation" },
|
|
{ "Y", EC::Float, "Y with perturbation" },
|
|
{ "Z", EC::Float, "Z with perturbation" });
|
|
}
|
|
|