
- Posts: 10
- Joined: Tue Jun 02, 2015 9:53 pm
Fusion version:
8 build 23 (beta3) and before
OS and version:
Windows 7
Additional relevant system info:
/
Description of the bug:
Regions (region tab) of particle tools and (since Fu7) duplicate 3D don't all work properly:
Region set to bitmap:
almost unusable since it has no control over size, placement and rotation of the bitmap so nothing outside the area of -.5,-.5,-.5 and .5,.5,.5 is affected.
Region set to Mesh:
for particles: only works for the pEmitter and pBounce. Not on forces, pSpawn, pKill,...
for duplicate3D: doesn't work at all.
Region set to Line or Bezier: don't really work properly except in 2D-particles mode. Obsolete if Bitmap and mesh would work better?
Region set to Cube, Sphere and rectange: work as expected.
Region Mode on Particle Tools: The only ones that seem to work are "When inside Region" and "When not inside Region"
I prepared some simple examples demonstrating this with notes below:
Severity (Trivial, Minor, Major, Critical)
Major.
Steps to reproduce:
See example below.
8 build 23 (beta3) and before
OS and version:
Windows 7
Additional relevant system info:
/
Description of the bug:
Regions (region tab) of particle tools and (since Fu7) duplicate 3D don't all work properly:
Region set to bitmap:
almost unusable since it has no control over size, placement and rotation of the bitmap so nothing outside the area of -.5,-.5,-.5 and .5,.5,.5 is affected.
Region set to Mesh:
for particles: only works for the pEmitter and pBounce. Not on forces, pSpawn, pKill,...
for duplicate3D: doesn't work at all.
Region set to Line or Bezier: don't really work properly except in 2D-particles mode. Obsolete if Bitmap and mesh would work better?
Region set to Cube, Sphere and rectange: work as expected.
Region Mode on Particle Tools: The only ones that seem to work are "When inside Region" and "When not inside Region"
I prepared some simple examples demonstrating this with notes below:
Severity (Trivial, Minor, Major, Critical)
Major.
Steps to reproduce:
See example below.
- Code: Select all
{
Tools = ordered() {
Shape3D1 = Shape3D {
Inputs = {
Shape = Input { Value = FuID { "SurfaceCubeInputs" }, },
["MtlStdInputs.MaterialID"] = Input { Value = 1, },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
["SurfaceCubeInputs.ObjectID.ObjectID"] = Input { Value = 2, }
},
ViewInfo = OperatorInfo { Pos = { 0, -280.5 } },
},
Transform3D1 = Transform3D {
Inputs = {
SceneInput = Input {
SourceOp = "Shape3D1",
Source = "Output",
},
["Transform3DOp.Rotate.X"] = Input {
Value = 140,
Expression = "time*10",
},
["Transform3DOp.Rotate.Y"] = Input { Expression = "0", },
["Transform3DOp.Rotate.Z"] = Input { Expression = "0", },
},
ViewInfo = OperatorInfo { Pos = { 110, -280.5 } },
},
Duplicate3D_Accumulated_1_1_2 = Duplicate3D {
NameSet = true,
Inputs = {
["RectRgn.Width"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1_2RectRgnWidth",
Source = "Value",
},
["RectRgn.Height"] = Input { Value = 5, },
LastCopy = Input { Value = 10, },
TimeOffset = Input { Value = 1, },
["Translate.X"] = Input { Value = 1.51396967109897, },
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "CubeRgn" }, },
SceneInput = Input {
SourceOp = "Transform3D1",
Source = "Output",
},
["SphereRgn.Size"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1_2Size",
Source = "Value",
},
["CubeRgn.Width"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1_2Width",
Source = "Value",
},
["CubeRgn.Height"] = Input { Value = 1, },
["CubeRgn.Depth"] = Input { Value = 1, }
},
ViewInfo = OperatorInfo { Pos = { 385, -82.5 } },
},
Duplicate3D_Accumulated_1_1_2RectRgnWidth = BezierSpline {
SplineColor = { Red = 225, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[0] = { 1, RH = { 16.6666666666667, 10.6666666666667 }, Flags = { Linear = true } },
[50] = { 30, LH = { 33.3333333333333, 20.3333333333333 }, Flags = { Linear = true } }
}
},
Duplicate3D_Accumulated_1_1_2Size = BezierSpline {
SplineColor = { Red = 225, Green = 0, Blue = 225 },
NameSet = true,
KeyFrames = {
[0] = { 50, RH = { 16.6666666666667, 34.9587301587302 }, Flags = { Linear = true } },
[50] = { 4.87619047619048, LH = { 33.3333333333333, 19.9174603174603 }, Flags = { Linear = true } }
}
},
Duplicate3D_Accumulated_1_1_2Width = BezierSpline {
SplineColor = { Red = 148, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[0] = { 1, RH = { 33.3333333333333, 34 }, Flags = { Linear = true } },
[100] = { 100, LH = { 66.6666666666667, 67 }, Flags = { Linear = true } }
}
},
Shape3D5_1 = Shape3D {
Inputs = {
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 11, },
["Transform3DOp.Translate.Y"] = Input { Value = -3.59273198774054, },
Shape = Input { Value = FuID { "SurfaceCubeInputs" }, },
["MtlStdInputs.MaterialID"] = Input { Value = 6, },
["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 12, },
["SurfaceCubeInputs.SizeLock"] = Input { Value = 0, },
["SurfaceCubeInputs.Width"] = Input { Value = 10, },
["SurfaceCubeInputs.Height"] = Input { Value = 0.2, },
["SurfaceCubeInputs.Depth"] = Input { Value = 10, },
["SurfaceCubeInputs.ObjectID.ObjectID"] = Input { Value = 13, }
},
ViewInfo = OperatorInfo { Pos = { 385, 115.5 } },
},
Merge3D2 = Merge3D {
Inputs = {
SceneInput1 = Input {
SourceOp = "Shape3D5",
Source = "Output",
},
SceneInput2 = Input {
SourceOp = "Shape3D5_1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 385, 181.5 } },
},
Shape3D5 = Shape3D {
Inputs = {
["Transform3DOp.Translate.Y"] = Input { Value = -2.60516900608889, },
Shape = Input { Value = FuID { "SurfaceSphereInputs" }, },
["MtlStdInputs.MaterialID"] = Input { Value = 6, },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 11, },
["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 12, }
},
ViewInfo = OperatorInfo { Pos = { 275, 181.5 } },
},
pBounce1 = pBounce {
ID = 94,
Inputs = {
Input = Input {
SourceOp = "pDirectionalForce1_2",
Source = "Output",
},
Elasticity = Input { Value = 0.25, },
Variance = Input { Value = 0.2, },
Roughness = Input { Value = 9.23809523809524, },
SurfaceMotion = Input { Value = 0.0142857142857143, },
Region = Input { Value = FuID { "MeshRegion" }, },
["MeshRegion.MeshInput"] = Input {
SourceOp = "Merge3D2",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { 110, 247.5 } },
},
pDirectionalForce1_2 = pDirectionalForce {
ID = 95,
Inputs = {
Strength = Input { Value = 0.5, },
Input = Input {
SourceOp = "pEmitter1_2",
Source = "Output",
},
RegionMode = Input { Value = FuID { "Entering" }, },
},
ViewInfo = OperatorInfo { Pos = { 0, 247.5 } },
},
Duplicate3D_Accumulated_1_1 = Duplicate3D {
CtrlWZoom = false,
NameSet = true,
Inputs = {
LastCopy = Input { Value = 10, },
TimeOffset = Input { Value = 1, },
["Translate.X"] = Input { Value = 1.51396967109897, },
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "SphereRgn" }, },
SceneInput = Input {
SourceOp = "Transform3D1",
Source = "Output",
},
["RectRgn.Width"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1Width",
Source = "Value",
},
["RectRgn.Height"] = Input { Value = 5, },
["SphereRgn.Size"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1Size",
Source = "Value",
}
},
ViewInfo = OperatorInfo { Pos = { 495, -82.5 } },
},
Duplicate3D_Accumulated_1_1Width = BezierSpline {
SplineColor = { Red = 225, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[0] = { 1, RH = { 16.6666666666667, 10.6666666666667 }, Flags = { Linear = true } },
[50] = { 30, LH = { 33.3333333333333, 20.3333333333333 }, Flags = { Linear = true } }
}
},
Duplicate3D_Accumulated_1_1Size = BezierSpline {
SplineColor = { Red = 225, Green = 0, Blue = 225 },
NameSet = true,
KeyFrames = {
[0] = { 50, RH = { 16.6666666666667, 34.9587301587302 }, Flags = { Linear = true } },
[50] = { 4.87619047619048, LH = { 33.3333333333333, 19.9174603174603 }, Flags = { Linear = true } }
}
},
pEmitter1_2 = pEmitter {
ID = 96,
Inputs = {
Number = Input {
SourceOp = "pEmitter1_2Number",
Source = "Value",
},
Style = Input { Value = FuID { "ParticleStyleBlob" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["ParticleStyle.ColorOverLife"] = Input {
Value = Gradient {
Colors = {
[0] = { 1, 1, 1, 1 }
}
},
},
["ParticleStyle.SizeControls"] = Input { Value = 1, },
["ParticleStyle.Size"] = Input { Value = 0.2, },
["ParticleStyle.SizeOverLife"] = Input {
SourceOp = "pEmitter1SizeoverLife_2",
Source = "Value",
},
["ParticleStyle.BlurOverLife"] = Input {
SourceOp = "pEmitter1BluroverLife2D_2",
Source = "Value",
},
["MeshRegion.MeshInput"] = Input {
SourceOp = "Shape3D3",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { -110, 247.5 } },
},
pEmitter1_2Number = BezierSpline {
SplineColor = { Red = 233, Green = 206, Blue = 78 },
NameSet = true,
KeyFrames = {
[0] = { 1000, RH = { 0.333333333333333, 666.666666666667 }, Flags = { Linear = true } },
[1] = { 0, LH = { 0.666666666666667, 333.333333333333 }, Flags = { Linear = true } }
}
},
pEmitter1SizeoverLife_2 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
},
pEmitter1BluroverLife2D_2 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
},
Merge3D1_1 = Merge3D {
Inputs = {
SceneInput1 = Input {
SourceOp = "pRender1_2",
Source = "Output",
},
SceneInput2 = Input {
SourceOp = "Merge3D2",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 495, 247.5 } },
},
pRender1_2 = pRender {
Inputs = {
["_MotionBlurWarning"] = Input { Disabled = true, },
GlobalOut = Input { Value = 100, },
Width = Input { Value = 2048, },
Height = Input { Value = 1556, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
OutputMode = Input { Disabled = true, },
IntegrationMethod = Input { Value = FuID { "RK4" }, },
["MaterialID.MaterialID"] = Input { Value = 3, },
["ObjectID.ObjectID"] = Input { Value = 5, },
Input = Input {
SourceOp = "pBounce1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 385, 247.5 } },
},
Duplicate3D_Accumulated_1_1_1 = Duplicate3D {
NameSet = true,
Inputs = {
["RectRgn.Width"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1_1RectRgnWidth",
Source = "Value",
},
["RectRgn.Height"] = Input { Value = 5, },
LastCopy = Input { Value = 20, },
TimeOffset = Input { Value = 1, },
["Translate.X"] = Input { Value = 1.51396967109897, },
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "BitmapRgn" }, },
SceneInput = Input {
SourceOp = "Transform3D1",
Source = "Output",
},
["SphereRgn.Size"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1_1Size",
Source = "Value",
},
["BitmapRgn.Bitmap"] = Input {
SourceOp = "Background1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 495, -412.5 } },
},
Duplicate3D_Accumulated_1_1_1RectRgnWidth = BezierSpline {
SplineColor = { Red = 225, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[0] = { 1, RH = { 16.6666666666667, 10.6666666666667 }, Flags = { Linear = true } },
[50] = { 30, LH = { 33.3333333333333, 20.3333333333333 }, Flags = { Linear = true } }
}
},
Duplicate3D_Accumulated_1_1_1Size = BezierSpline {
SplineColor = { Red = 225, Green = 0, Blue = 225 },
NameSet = true,
KeyFrames = {
[0] = { 50, RH = { 16.6666666666667, 34.9587301587302 }, Flags = { Linear = true } },
[50] = { 4.87619047619048, LH = { 33.3333333333333, 19.9174603174603 }, Flags = { Linear = true } }
}
},
Duplicate3D_Accumulated = Duplicate3D {
NameSet = true,
Inputs = {
LastCopy = Input { Value = 10, },
TimeOffset = Input { Value = 1, },
["Translate.X"] = Input { Value = 1.51396967109897, },
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
SceneInput = Input {
SourceOp = "Transform3D1",
Source = "Output",
},
["MeshRegion.MeshInput"] = Input {
SourceOp = "Shape3D2",
Source = "Output",
},
["RectRgn.Width"] = Input { Value = 1, },
["RectRgn.Height"] = Input { Value = 5, }
},
ViewInfo = OperatorInfo { Pos = { 495, -544.5 } },
},
Shape3D2 = Shape3D {
Inputs = {
Shape = Input { Value = FuID { "SurfaceCubeInputs" }, },
["MtlStdInputs.MaterialID"] = Input { Value = 2, },
["SurfacePlaneInputs.Width"] = Input { Value = 8.66666666666667, },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 3, },
["SurfaceCubeInputs.Width"] = Input { Value = 3.28571428571429, },
["SurfaceCubeInputs.SubdivisionWidth"] = Input { Value = 1, },
["SurfaceCubeInputs.ObjectID.ObjectID"] = Input { Value = 4, },
["SurfaceSphereInputs.Radius"] = Input { Value = 1.95238095238095, },
["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 10, }
},
ViewInfo = OperatorInfo { Pos = { 495, -610.5 } },
},
Rectangle1 = RectangleMask {
Inputs = {
MaskWidth = Input { Value = 2048, },
MaskHeight = Input { Value = 1556, },
PixelAspect = Input { Value = { 1, 1 }, },
ClippingMode = Input { Value = FuID { "None" }, },
Width = Input {
SourceOp = "Rectangle1Width",
Source = "Value",
},
Height = Input { Value = 1.72, },
},
ViewInfo = OperatorInfo { Pos = { 495, -478.5 } },
},
Rectangle1Width = BezierSpline {
SplineColor = { Red = 225, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[0] = { 1.16, RH = { 33.3333333333333, 0.773333333333333 }, Flags = { Linear = true } },
[100] = { 0, LH = { 66.6666666666667, 0.386666666666667 }, Flags = { Linear = true } }
}
},
Background1 = Background {
Inputs = {
GlobalOut = Input { Value = 100, },
Width = Input { Value = 100, },
Height = Input { Value = 100, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
TopLeftRed = Input { Value = 1, },
TopLeftGreen = Input { Value = 1, },
TopLeftBlue = Input { Value = 1, },
Gradient = Input {
Value = Gradient {
Colors = {
[0] = { 0, 0, 0, 1 },
[1] = { 1, 1, 1, 1 }
}
},
},
EffectMask = Input {
SourceOp = "Rectangle1",
Source = "Mask",
}
},
ViewInfo = OperatorInfo { Pos = { 495, -445.5 } },
},
Duplicate3D_Accumulated_1_2 = Duplicate3D {
NameSet = true,
Inputs = {
LastCopy = Input { Value = 10, },
TimeOffset = Input { Value = 1, },
["Translate.X"] = Input { Value = 1.51396967109897, },
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "LineRgn" }, },
SceneInput = Input {
SourceOp = "Transform3D1",
Source = "Output",
},
["RectRgn.Width"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_2Width",
Source = "Value",
},
["RectRgn.Height"] = Input { Value = 5, },
["LineRgn.End.X"] = Input { Value = 5.943617, },
["LineRgn.End.Y"] = Input { Value = 1.574468, },
},
ViewInfo = OperatorInfo { Pos = { 495, -280.5 } },
},
Duplicate3D_Accumulated_1_2Width = BezierSpline {
SplineColor = { Red = 225, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[0] = { 1, RH = { 16.6666666666667, 10.6666666666667 }, Flags = { Linear = true } },
[50] = { 30, LH = { 33.3333333333333, 20.3333333333333 }, Flags = { Linear = true } }
}
},
Duplicate3D_Accumulated_1_1_1_1 = Duplicate3D {
NameSet = true,
Inputs = {
["RectRgn.Width"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1_1_1RectRgnWidth",
Source = "Value",
},
["RectRgn.Height"] = Input { Value = 5, },
["SphereRgn.Size"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1_1_1SphereRgnSize",
Source = "Value",
},
LastCopy = Input { Value = 20, },
TimeOffset = Input { Value = 1, },
["Translate.X"] = Input { Value = 1.51396967109897, },
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "BezierRgn" }, },
SceneInput = Input {
SourceOp = "Transform3D1",
Source = "Output",
},
["BezierRgn.Translate.X"] = Input { Value = -0.1702128, },
["BezierRgn.Size"] = Input { Value = 4.76190476190476, },
["BezierRgn.Angle"] = Input { Value = -20.7692308, },
["BezierRgn.Polyline"] = Input {
SourceOp = "Duplicate3D_Accumulated_1_1_1_1Polyline",
Source = "Value",
}
},
ViewInfo = OperatorInfo { Pos = { 495, 16.5 } },
},
Duplicate3D_Accumulated_1_1_1_1RectRgnWidth = BezierSpline {
SplineColor = { Red = 225, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[0] = { 1, RH = { 16.6666666666667, 10.6666666666667 }, Flags = { Linear = true } },
[50] = { 30, LH = { 33.3333333333333, 20.3333333333333 }, Flags = { Linear = true } }
}
},
Duplicate3D_Accumulated_1_1_1_1SphereRgnSize = BezierSpline {
SplineColor = { Red = 225, Green = 0, Blue = 225 },
NameSet = true,
KeyFrames = {
[0] = { 50, RH = { 16.6666666666667, 34.9587301587302 }, Flags = { Linear = true } },
[50] = { 4.87619047619048, LH = { 33.3333333333333, 19.9174603174603 }, Flags = { Linear = true } }
}
},
Duplicate3D_Accumulated_1_1_1_1Polyline = BezierSpline {
SplineColor = { Red = 96, Green = 255, Blue = 47 },
NameSet = true,
KeyFrames = {
[0] = { 0, RH = { 33.3333333333333, 0.333333333333333 }, Flags = { Linear = true, LockedY = true }, Value = Polyline {
Closed = true,
Points = {
{ Linear = true, X = -0.327986366206999, Y = 0.598393295792274, LX = 0.967659999333978, LY = 0.893759397228669, RX = 0, RY = -0.263660202423731 },
{ Linear = true, X = -0.327986366206999, Y = -0.192587311478919, LX = 0, LY = 0.263660202423731, RX = 1.12576631459233, RY = 0.447176985183416 },
{ Linear = true, X = 3.04931257756999, Y = 1.14894364407133, LX = -1.12576631459233, LY = -0.447176985183416, RX = -0.15810631525835, RY = 0.710242614468984 },
{ Linear = true, X = 2.57499363179494, Y = 3.27967148747828, LX = 0.15810631525835, LY = -0.710242614468984, RX = -0.967659999333978, RY = -0.893759397228669 }
}
} },
[100] = { 1, LH = { 66.6666666666667, 0.666666666666667 }, Flags = { Linear = true, LockedY = true }, Value = Polyline {
Closed = true,
Points = {
{ Linear = true, X = -0.327986366206999, Y = 0.598393295792274, LX = 0.081277543712888, LY = 0.30960040629396, RX = 0, RY = -0.263660202423731 },
{ Linear = true, X = -0.327986366206999, Y = -0.192587311478919, LX = 0, LY = 0.263660202423731, RX = 0.239383858971238, RY = -0.136982005751293 },
{ Linear = true, X = 0.390165210706716, Y = -0.603533328732797, LX = -0.239383858971238, LY = 0.136982005751293, RX = -0.15810631525835, RY = 0.710242614468983 },
{ Linear = true, X = -0.0841537350683347, Y = 1.52719451467415, LX = 0.15810631525835, LY = -0.710242614468983, RX = -0.081277543712888, RY = -0.30960040629396 }
}
} }
}
},
Duplicate3D_Accumulated_1 = Duplicate3D {
NameSet = true,
Inputs = {
LastCopy = Input { Value = 10, },
TimeOffset = Input { Value = 1, },
["Translate.X"] = Input { Value = 1.51396967109897, },
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "RectRgn" }, },
SceneInput = Input {
SourceOp = "Transform3D1",
Source = "Output",
},
["RectRgn.Width"] = Input {
SourceOp = "Duplicate3D_Accumulated_1Width",
Source = "Value",
},
["RectRgn.Height"] = Input { Value = 5, }
},
ViewInfo = OperatorInfo { Pos = { 495, -181.5 } },
},
Duplicate3D_Accumulated_1Width = BezierSpline {
SplineColor = { Red = 225, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[0] = { 1, RH = { 16.6666666666667, 10.6666666666667 }, Flags = { Linear = true } },
[50] = { 30, LH = { 33.3333333333333, 20.3333333333333 }, Flags = { Linear = true } }
}
},
Shape3D4 = Shape3D {
Inputs = {
Shape = Input { Value = FuID { "SurfaceCubeInputs" }, },
["MtlStdInputs.MaterialID"] = Input { Value = 5, },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 8, },
["SurfaceCubeInputs.Width"] = Input { Value = 2, },
["SurfaceCubeInputs.SubdivisionWidth"] = Input { Value = 1, },
["SurfaceCubeInputs.Wireframe"] = Input { Value = 1, },
["SurfaceCubeInputs.Controls.Nest"] = Input { Value = 1, },
["SurfaceCubeInputs.ObjectID.ObjectID"] = Input { Value = 9, }
},
ViewInfo = OperatorInfo { Pos = { -55, 313.5 } },
},
Transform3D2 = Transform3D {
Inputs = {
SceneInput = Input {
SourceOp = "Shape3D4",
Source = "Output",
},
["Transform3DOp.Translate.X"] = Input {
SourceOp = "Transform3D2XOffset",
Source = "Value",
},
},
ViewInfo = OperatorInfo { Pos = { -55, 346.5 } },
},
Transform3D2XOffset = BezierSpline {
SplineColor = { Red = 250, Green = 59, Blue = 49 },
NameSet = true,
KeyFrames = {
[0] = { -6, RH = { 33.3333333333333, -2 }, Flags = { Linear = true } },
[100] = { 6, LH = { 66.6666666666667, 2 }, Flags = { Linear = true } }
}
},
Note1_1_1 = Note {
Inputs = {
Comments = Input { Value = "region set to cube or sphere: works as expected", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, -82.5 },
Flags = {
Expanded = true
},
Size = { 196, 43.9157 }
},
Colors = { TileColor = { R = 0, G = 0.333333333333333, B = 0 }, }
},
Note1_1_1_2_1 = Note {
Inputs = {
Comments = Input { Value = "region set to mesh as emitter or bounce: works as expected", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, 247.5 },
Flags = {
Expanded = true
},
Size = { 196, 71.87 }
},
Colors = { TileColor = { R = 0, G = 0.333333333333333, B = 0 }, }
},
Note1_1_1_1_1 = Note {
Inputs = {
Comments = Input { Value = "region set to bezier: some control over the placement/size/rotation of the bezier. Makes more sense when in Particle 2D mode. \nWhen bitmap region would get proper control, this mode would become obsolete for most uses.", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, 16.5 },
Flags = {
Expanded = true
},
Size = { 196, 88.281 }
},
Colors = { TileColor = { R = 0.666666666666667, G = 0.333333333333333, B = 0 }, }
},
Note1_1_1_1 = Note {
Inputs = {
Comments = Input { Value = "region set to bitmap: no control over the placement/size/rotation of the bitmap. Now it only applies to the first duplicate.", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, -412.5 },
Flags = {
Expanded = true
},
Size = { 196, 88.281 }
},
Colors = { TileColor = { R = 0.666666666666667, G = 0, B = 0 }, }
},
Note1_1 = Note {
Inputs = {
Comments = Input { Value = "region set to rectangle: works as expected", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, -181.5 },
Flags = {
Expanded = true
},
Size = { 196, 43.9157 }
},
Colors = { TileColor = { R = 0, G = 0.333333333333333, B = 0 }, }
},
Note1_1_2 = Note {
Inputs = {
Comments = Input { Value = "region set to line: does not work", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, -280.5 },
Flags = {
Expanded = true
},
Size = { 196, 43.9157 }
},
Colors = { TileColor = { R = 0.666666666666667, G = 0, B = 0 }, }
},
Note1 = Note {
Inputs = {
Comments = Input { Value = "region set to mesh: does not work at all", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, -544.5 },
Flags = {
Expanded = true
},
Size = { 196, 43.9157 }
},
Colors = { TileColor = { R = 0.666666666666667, G = 0, B = 0 }, }
},
pTurbulence1 = pTurbulence {
ID = 106,
Inputs = {
XStrength = Input { Value = 5, },
YStrength = Input { Value = 5, },
ZStrength = Input { Value = 5, },
StrengthOverLifeLUT = Input {
SourceOp = "pTurbulence1StrengthoverLifeLUT",
Source = "Value",
},
Input = Input {
SourceOp = "pDirectionalForce1",
Source = "Output",
},
RegionMode = Input { Value = FuID { "NotInside" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["MeshRegion.MeshInput"] = Input {
SourceOp = "Transform3D2",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { -165, 412.5 } },
},
pTurbulence1StrengthoverLifeLUT = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
NameSet = true,
},
pKill1 = pKill {
ID = 108,
PassThrough = true,
Inputs = {
Input = Input {
SourceOp = "pTurbulence1",
Source = "Output",
},
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["MeshRegion.MeshInput"] = Input {
SourceOp = "Transform3D2",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { -55, 412.5 } },
},
pVortex1 = pVortex {
ID = 110,
Inputs = {
Input = Input {
SourceOp = "pKill1",
Source = "Output",
},
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["MeshRegion.MeshInput"] = Input {
SourceOp = "Transform3D2",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { 55, 412.5 } },
},
pRender1 = pRender {
Inputs = {
["_MotionBlurWarning"] = Input { Disabled = true, },
GlobalOut = Input { Value = 100, },
Width = Input { Value = 2048, },
Height = Input { Value = 1556, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
OutputMode = Input { Disabled = true, },
IntegrationMethod = Input { Value = FuID { "RK4" }, },
["MaterialID.MaterialID"] = Input { Value = 3, },
["ObjectID.ObjectID"] = Input { Value = 5, },
Input = Input {
SourceOp = "pFriction1_2",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 385, 412.5 } },
},
pSpawn1 = pSpawn {
ID = 111,
Inputs = {
Input = Input {
SourceOp = "pVortex1",
Source = "Output",
},
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["ParticleStyle.ColorOverLife"] = Input {
Value = Gradient {
Colors = {
[0] = { 1, 1, 1, 1 }
}
},
},
["ParticleStyle.SizeOverLife"] = Input {
SourceOp = "pSpawn1SizeoverLife",
Source = "Value",
},
["ParticleStyle.BlurOverLife"] = Input {
SourceOp = "pSpawn1BluroverLife2D",
Source = "Value",
},
["MeshRegion.MeshInput"] = Input {
SourceOp = "Transform3D2",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { 165, 412.5 } },
},
pSpawn1SizeoverLife = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 0, Green = 0, Blue = 0 },
NameSet = true,
},
pSpawn1BluroverLife2D = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 0, Green = 0, Blue = 0 },
NameSet = true,
},
pDirectionalForce1 = pDirectionalForce {
ID = 30,
Inputs = {
Input = Input {
SourceOp = "pEmitter1",
Source = "Output",
},
RegionMode = Input { Value = FuID { "Entering" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["MeshRegion.MeshInput"] = Input {
SourceOp = "Transform3D2",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { -275, 412.5 } },
},
Merge3D1 = Merge3D {
Inputs = {
SceneInput1 = Input {
SourceOp = "pRender1",
Source = "Output",
},
SceneInput2 = Input {
SourceOp = "Transform3D2",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 495, 412.5 } },
},
pFriction1_2 = pFriction {
ID = 103,
Inputs = {
VelocityFriction = Input { Value = 0.2, },
Input = Input {
SourceOp = "pSpawn1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 275, 412.5 } },
},
pEmitter1 = pEmitter {
ID = 26,
Inputs = {
Number = Input {
SourceOp = "pEmitter1Number",
Source = "Value",
},
Style = Input { Value = FuID { "ParticleStyleBlob" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["ParticleStyle.ColorOverLife"] = Input {
Value = Gradient {
Colors = {
[0] = { 1, 1, 1, 1 }
}
},
},
["ParticleStyle.SizeControls"] = Input { Value = 1, },
["ParticleStyle.Size"] = Input { Value = 0.2, },
["ParticleStyle.SizeOverLife"] = Input {
SourceOp = "pEmitter1SizeoverLife",
Source = "Value",
},
["ParticleStyle.BlurOverLife"] = Input {
SourceOp = "pEmitter1BluroverLife2D",
Source = "Value",
},
["MeshRegion.MeshInput"] = Input {
SourceOp = "Shape3D3",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { -385, 412.5 } },
},
pEmitter1Number = BezierSpline {
SplineColor = { Red = 233, Green = 206, Blue = 78 },
NameSet = true,
KeyFrames = {
[0] = { 1000, RH = { 0.333333333333333, 666.666666666667 }, Flags = { Linear = true } },
[1] = { 0, LH = { 0.666666666666667, 333.333333333333 }, Flags = { Linear = true } }
}
},
pEmitter1SizeoverLife = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
NameSet = true,
},
pEmitter1BluroverLife2D = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.3, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.7, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
NameSet = true,
},
Shape3D3 = Shape3D {
Inputs = {
Shape = Input { Value = FuID { "SurfaceCubeInputs" }, },
["MtlStdInputs.MaterialID"] = Input { Value = 4, },
["SurfacePlaneInputs.SizeLock"] = Input { Value = 0, },
["SurfacePlaneInputs.Width"] = Input { Value = 10, },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 6, },
["SurfaceCubeInputs.SizeLock"] = Input { Value = 0, },
["SurfaceCubeInputs.Width"] = Input { Value = 10, },
["SurfaceCubeInputs.Depth"] = Input { Value = 2, },
["SurfaceCubeInputs.ObjectID.ObjectID"] = Input { Value = 7, }
},
ViewInfo = OperatorInfo { Pos = { -495, 412.5 } },
},
Note1_2 = Note {
Inputs = {
Comments = Input { Value = "region set to mesh: does not work at all", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, 412.5 },
Flags = {
Expanded = true
},
Size = { 196, 43.9157 }
},
Colors = { TileColor = { R = 0.666666666666667, G = 0, B = 0 }, }
},
pFriction1 = pFriction {
ID = 77,
Inputs = {
VelocityFriction = Input { Value = 0.2, },
Input = Input {
SourceOp = "pDirectionalForce1_1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 110, 511.5 } },
},
pDirectionalForce1_1 = pDirectionalForce {
ID = 66,
Inputs = {
Strength = Input { Value = 1, },
Input = Input {
SourceOp = "pEmitter1_1",
Source = "Output",
},
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "CubeRgn" }, },
["CubeRgn.Translate.X"] = Input {
SourceOp = "pDirectionalForce1_1XOffset",
Source = "Value",
},
["CubeRgn.Width"] = Input { Value = 3, },
["CubeRgn.Height"] = Input { Value = 3, },
["CubeRgn.Depth"] = Input { Value = 3, }
},
ViewInfo = OperatorInfo { Pos = { 0, 511.5 } },
},
pDirectionalForce1_1XOffset = BezierSpline {
SplineColor = { Red = 250, Green = 59, Blue = 49 },
NameSet = true,
KeyFrames = {
[0] = { -7.371567729103, RH = { 33.3333333333333, -2.5601300811284 }, Flags = { Linear = true } },
[100] = { 7.06274521482079, LH = { 66.6666666666667, 2.25130756684619 }, Flags = { Linear = true } }
}
},
pRender1_1 = pRender {
Inputs = {
["_MotionBlurWarning"] = Input { Disabled = true, },
GlobalOut = Input { Value = 100, },
Width = Input { Value = 2048, },
Height = Input { Value = 1556, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
IntegrationMethod = Input { Value = FuID { "RK4" }, },
["MaterialID.MaterialID"] = Input { Value = 3, },
["ObjectID.ObjectID"] = Input { Value = 5, },
Input = Input {
SourceOp = "pFriction1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 385, 511.5 } },
},
pEmitter1_1 = pEmitter {
ID = 68,
Inputs = {
Number = Input {
SourceOp = "pEmitter1_1Number",
Source = "Value",
},
Style = Input { Value = FuID { "ParticleStyleBlob" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["ParticleStyle.ColorOverLife"] = Input {
Value = Gradient {
Colors = {
[0] = { 1, 1, 1, 1 }
}
},
},
["ParticleStyle.SizeControls"] = Input { Value = 1, },
["ParticleStyle.Size"] = Input { Value = 0.2, },
["ParticleStyle.SizeOverLife"] = Input {
SourceOp = "pEmitter1SizeoverLife_1",
Source = "Value",
},
["ParticleStyle.BlurOverLife"] = Input {
SourceOp = "pEmitter1BluroverLife2D_1",
Source = "Value",
},
["MeshRegion.MeshInput"] = Input {
SourceOp = "Shape3D3",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { -110, 511.5 } },
},
pEmitter1_1Number = BezierSpline {
SplineColor = { Red = 233, Green = 206, Blue = 78 },
NameSet = true,
KeyFrames = {
[0] = { 1000, RH = { 0.333333333333333, 666.666666666667 }, Flags = { Linear = true } },
[1] = { 0, LH = { 0.666666666666667, 333.333333333333 }, Flags = { Linear = true } }
}
},
pEmitter1SizeoverLife_1 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
},
pEmitter1BluroverLife2D_1 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
},
Note1_1_1_2_2 = Note {
Inputs = {
Comments = Input { Value = "regionmodes other than \"When inside Region\" and \"When not inside Region\"\ndon't seem to work", }
},
ViewInfo = StickyNoteInfo {
Pos = { 825, 511.5 },
Flags = {
Expanded = true
},
Size = { 196, 84.7738 }
},
Colors = { TileColor = { R = 0.666666666666667, G = 0, B = 0 }, }
},
Note1_1_1_2 = Note {
Inputs = {
Comments = Input { Value = "region set to cube or sphere: works as expected", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, 511.5 },
Flags = {
Expanded = true
},
Size = { 196, 43.9157 }
},
Colors = { TileColor = { R = 0, G = 0.333333333333333, B = 0 }, }
},
pDirectionalForce1_1_1 = pDirectionalForce {
ID = 78,
Inputs = {
Strength = Input { Value = 1, },
Input = Input {
SourceOp = "pEmitter1_1_1",
Source = "Output",
},
RegionMode = Input { Value = FuID { "Inside" }, },
Region = Input { Value = FuID { "BitmapRgn" }, },
["CubeRgn.Translate.X"] = Input {
SourceOp = "pDirectionalForce1_1_1XOffset",
Source = "Value",
},
["CubeRgn.Width"] = Input { Value = 3, },
["CubeRgn.Height"] = Input { Value = 3, },
["CubeRgn.Depth"] = Input { Value = 3, },
["RectRgn.Width"] = Input { Value = 5, },
["RectRgn.Height"] = Input { Value = 5, },
["BitmapRgn.Bitmap"] = Input {
SourceOp = "Background2",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 0, 610.5 } },
},
pDirectionalForce1_1_1XOffset = BezierSpline {
SplineColor = { Red = 250, Green = 59, Blue = 49 },
NameSet = true,
KeyFrames = {
[0] = { -7.371567729103, RH = { 33.3333333333333, -2.5601300811284 }, Flags = { Linear = true } },
[100] = { 7.06274521482079, LH = { 66.6666666666667, 2.25130756684619 }, Flags = { Linear = true } }
}
},
pRender1_1_1 = pRender {
Inputs = {
["_MotionBlurWarning"] = Input { Disabled = true, },
GlobalOut = Input { Value = 100, },
Width = Input { Value = 2048, },
Height = Input { Value = 1556, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
IntegrationMethod = Input { Value = FuID { "RK4" }, },
["MaterialID.MaterialID"] = Input { Value = 3, },
["ObjectID.ObjectID"] = Input { Value = 5, },
Input = Input {
SourceOp = "pFriction1_1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 385, 610.5 } },
},
pFriction1_1 = pFriction {
ID = 84,
Inputs = {
VelocityFriction = Input { Value = 0.2, },
Input = Input {
SourceOp = "pDirectionalForce1_1_1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 110, 610.5 } },
},
pEmitter1_1_1 = pEmitter {
ID = 80,
Inputs = {
Number = Input {
SourceOp = "pEmitter1_1_1Number",
Source = "Value",
},
Style = Input { Value = FuID { "ParticleStyleBlob" }, },
Region = Input { Value = FuID { "MeshRegion" }, },
["ParticleStyle.ColorOverLife"] = Input {
Value = Gradient {
Colors = {
[0] = { 1, 1, 1, 1 }
}
},
},
["ParticleStyle.SizeControls"] = Input { Value = 1, },
["ParticleStyle.Size"] = Input { Value = 0.2, },
["ParticleStyle.SizeOverLife"] = Input {
SourceOp = "pEmitter1SizeoverLife_1_1",
Source = "Value",
},
["ParticleStyle.BlurOverLife"] = Input {
SourceOp = "pEmitter1BluroverLife2D_1_1",
Source = "Value",
},
["MeshRegion.MeshInput"] = Input {
SourceOp = "Shape3D3",
Source = "Output",
}
},
ViewInfo = OperatorInfo { Pos = { -110, 610.5 } },
},
pEmitter1_1_1Number = BezierSpline {
SplineColor = { Red = 233, Green = 206, Blue = 78 },
NameSet = true,
KeyFrames = {
[0] = { 1000, RH = { 0.333333333333333, 666.666666666667 }, Flags = { Linear = true } },
[1] = { 0, LH = { 0.666666666666667, 333.333333333333 }, Flags = { Linear = true } }
}
},
pEmitter1SizeoverLife_1_1 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
},
pEmitter1BluroverLife2D_1_1 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
[1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
}
},
SplineColor = { Red = 192, Green = 128, Blue = 64 },
},
Note1_1_1_1_2 = Note {
Inputs = {
Comments = Input { Value = "region set to bitmap: no control over the placement/size/rotation of the bitmap. Now it only applies to particles in the space x,y <1", }
},
ViewInfo = StickyNoteInfo {
Pos = { 605, 610.5 },
Flags = {
Expanded = true
},
Size = { 196, 132.714 }
},
Colors = { TileColor = { R = 0.666666666666667, G = 0, B = 0 }, }
},
Background2 = Background {
Inputs = {
GlobalOut = Input { Value = 100, },
Width = Input { Value = 100, },
Height = Input { Value = 100, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
TopLeftRed = Input { Value = 1, },
TopLeftGreen = Input { Value = 1, },
TopLeftBlue = Input { Value = 1, },
Gradient = Input {
Value = Gradient {
Colors = {
[0] = { 0, 0, 0, 1 },
[1] = { 1, 1, 1, 1 }
}
},
},
},
ViewInfo = OperatorInfo { Pos = { -110, 676.5 } },
},
FastNoise1 = FastNoise {
Inputs = {
GlobalOut = Input { Value = 100, },
Width = Input { Value = 500, },
Height = Input { Value = 500, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
Contrast = Input { Value = 2.86666666666667, },
Gradient = Input {
Value = Gradient {
Colors = {
[0] = { 0, 0, 0, 1 },
[1] = { 1, 1, 1, 1 }
}
},
},
},
ViewInfo = OperatorInfo { Pos = { 0, 676.5 } },
}
}
}