Optical Flares for Blackmagic Fusion

Show us your bits!

Moderator: Dunn

User avatar
bowserlm
Fusionista
Posts: 334
Joined: Sat Apr 28, 2018 3:44 pm
Been thanked: 6 times

Re: Optical Flares for Blackmagic Fusion

#46

Post by bowserlm » Wed Jun 05, 2019 8:55 am

Check this out.

Especially the missiles. Notice the size change with the distance change.


User avatar
SirEdric
Fusionator
Posts: 1873
Joined: Tue Aug 05, 2014 10:04 am
Answers: 2
Real name: Eric Westphal
Been thanked: 112 times
Contact:

Re: Optical Flares for Blackmagic Fusion

#47

Post by SirEdric » Wed Jun 05, 2019 11:31 am

Yes. Cool Effect. And certainly lovely to have right out of the box.
But technically speaking, that's no lensflare (which happens to be generated inside the...well...lens, which doesn't care too much about distance...:-))
As a side note, using Locator3D's and some simple expressions, one could drive the size of any effect (including flares...:-))
to achieve exactly that look.

User avatar
SecondMan
Site Admin
Posts: 3489
Joined: Thu Jul 31, 2014 5:31 pm
Answers: 5
Location: Vancouver, Canada
Been thanked: 95 times
Contact:

Re: Optical Flares for Blackmagic Fusion

#48

Post by SecondMan » Wed Jun 05, 2019 12:07 pm

I feel we may be starting to conflate a couple of things here, so let's take a step back.

Lens flare "size" (note I put size between quotation marks) does not depend on distance to camera. It depends on brightness and size of your light source. Of course since brightness and size of a light source may depend on its distance to the camera, you could argue that distance influences lens flare size from a practical, or user perspective. Totally fine to look at it that way, as long as you understand a thing or two about what lens flares are.

A lens flare is a consequence of light that is reflected and scattered inside imperfect lenses. It is an artifact caused by the construction and shape of the lens and its individual parts, not by something that is present outside the camera. What we commonly call lens reflections (parts of what we call a lens flare - those pretty geometric shapes moving about the image according to the position of the light), therefore, do not scale at all with brightness, but they will fade in and out.

Likewise, there are some other visual elements that make up a lens flare, like glare, that may appear to scale, but they are basically becoming more or less visible with the brightness of the light source.

What you're seeing in that video you posted, is technically speaking not lens flaring, but diffraction. It's much alike what you get when you squint your eyes and look at a light source through your eye lashes. Basically it's the bending of light around edges causing light streaks, or spikes, and the more light that is being bent, the taller and/or wider those spikes get.

What entering and exiting frame are concerned (see post above, I suspect this perceived "difference between 2D and 3D lens flares" may be caused by not continuing a motion path at the image edges, or simply turning off all flaring as soon as the source goes outside the visible image, rather than continue (glare still exists when light hits a lens from outside its field of view).

Regardless of what any of this really is and does, these effects are totally doable in Fusion, and there are at least three ways to achieve them described above, already :)

User avatar
SirEdric
Fusionator
Posts: 1873
Joined: Tue Aug 05, 2014 10:04 am
Answers: 2
Real name: Eric Westphal
Been thanked: 112 times
Contact:

Re: Optical Flares for Blackmagic Fusion

#49

Post by SirEdric » Wed Jun 05, 2019 12:21 pm

Four. Normally there's always at least four ways to do it in Fusion.
(Four. The wholy number. As in 'The Four Wise Men', 'Four Farks Sake' and 'Thou shalthed find each formerly easy accessible button buried Four clicks down in some stoopid menu in F16)

User avatar
andromeda_girl
Fusionista
Posts: 396
Joined: Sun Feb 21, 2016 6:25 am
Been thanked: 3 times

Re: Optical Flares for Blackmagic Fusion

#50

Post by andromeda_girl » Thu Jun 06, 2019 4:22 am

i'd need to have an example to show.

User avatar
SecondMan
Site Admin
Posts: 3489
Joined: Thu Jul 31, 2014 5:31 pm
Answers: 5
Location: Vancouver, Canada
Been thanked: 95 times
Contact:

Re: Optical Flares for Blackmagic Fusion

#51

Post by SecondMan » Thu Jun 06, 2019 10:41 am

That would be great thanks.

In the meantime I should go ahead and buy me a copy of JUNE's Fuse...

User avatar
JUNE
Fusioneer
Posts: 243
Joined: Wed Aug 06, 2014 5:45 am
Been thanked: 15 times
Contact:

Re: Optical Flares for Blackmagic Fusion

#52

Post by JUNE » Thu Jun 06, 2019 6:19 pm

loct3d.jpg

Code: Select all

{
	Tools = ordered() {
		Rectangle1 = RectangleMask {
			Inputs = {
				SoftEdge = Input { Value = 0.2, },
				MaskWidth = Input { Value = 2048, },
				MaskHeight = Input { Value = 1556, },
				PixelAspect = Input { Value = { 1, 1 }, },
				ClippingMode = Input { Value = FuID { "None" }, },
				Center = Input { Value = { 0.575079872204473, 0.140575079872204 }, },
				Width = Input { Value = 0.832268370607028, },
				Height = Input { Value = 1.57667731629393, },
				Angle = Input { Value = -96.0408032745324, },
			},
			ViewInfo = OperatorInfo { Pos = { 990, 115.5 } },
		},
		FastNoise1 = FastNoise {
			Inputs = {
				Width = Input { Value = 100, },
				Height = Input { Value = 100, },
				Depth = Input { Value = 3, },
				["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
				Detail = Input { Value = 10, },
				SeetheRate = Input { Value = 1, },
				Type = Input { Value = 1, },
				GradientType = Input { Value = 5, },
				Start = Input { Value = { 0.502136752136752, 0.497863247863248 }, },
				End = Input { Value = { 0.181623931623932, 0.30982905982906 }, },
				Gradient = Input {
					Value = Gradient {
						Colors = {
							[0] = { 1, 1, 1, 1 },
							[1] = { 0, 0, 0, 0 }
						}
					},
				},
			},
			ViewInfo = OperatorInfo { Pos = { 880, 148.5 } },
		},
		BrightnessContrast1 = BrightnessContrast {
			Inputs = {
				Gain = Input { Value = 0.2733333, },
				Input = Input {
					SourceOp = "FastNoise1",
					Source = "Output",
				},
				EffectMask = Input {
					SourceOp = "Rectangle1",
					Source = "Mask",
				}
			},
			ViewInfo = OperatorInfo { Pos = { 990, 148.5 } },
		},
		pEmitter1 = pEmitter {
			ID = 6,
			Inputs = {
				Number = Input { Value = 5, },
				LifespanVariance = Input { Value = 82.3920266, },
				VelocityControls = Input { Value = 1, },
				Velocity = Input { Value = 0.1168385, },
				VelocityVariance = Input { Value = 0.0618557, },
				Angle = Input { Value = 90, },
				AngleZVariance = Input { Value = 360, },
				Style = Input { Value = FuID { "ParticleStyleBitmap" }, },
				["ParticleStyle.ColorControls"] = Input { Value = 1, },
				["ParticleStyle.Red"] = Input { Value = 0.493333333333333, },
				["ParticleStyle.Green"] = Input { Value = 0.493333333333333, },
				["ParticleStyle.Blue"] = Input { Value = 0.493333333333333, },
				["ParticleStyle.ColorVariance"] = Input { Value = 1, },
				["ParticleStyle.AlphaLow"] = Input { Value = -0.6099585, },
				["ParticleStyle.AlphaHigh"] = Input { Value = -0.0705394, },
				["ParticleStyle.LockColorVariance"] = Input { Value = 0, },
				["ParticleStyle.ColorOverLifeControls"] = Input { Value = 1, },
				["ParticleStyle.ColorOverLife"] = Input {
					Value = Gradient {
						Colors = {
							[0] = { 1, 1, 1, 1 },
							[1] = { 0, 0, 0, 1 }
						}
					},
				},
				["ParticleStyle.SizeControls"] = Input { Value = 1, },
				["ParticleStyle.Size"] = Input { Value = 0.1718213, },
				["ParticleStyle.SizeToVelocity"] = Input { Value = 0.2191781, },
				["ParticleStyle.SizeOverLife"] = Input {
					SourceOp = "pEmitter1SizeoverLife",
					Source = "Value",
				},
				["ParticleStyle.FadeControls"] = Input { Value = 1, },
				["ParticleStyle.FadeIn"] = Input { Value = 0.059761, },
				["ParticleStyle.FadeOut"] = Input { Value = 0.059761, },
				["ParticleStyle.BlurOverLife"] = Input {
					SourceOp = "pEmitter1BluroverLife2D",
					Source = "Value",
				},
				["ParticleStyleBitmap.Animate"] = Input { Value = 2, },
				["ParticleStyleBitmap.DropToolsHere"] = Input {
					SourceOp = "BrightnessContrast1",
					Source = "Output",
				},
				["SphereRgn.Translate.X"] = Input { Value = 0.132286189085319, },
				["SphereRgn.Translate.Y"] = Input { Value = 0.302728583732203, },
				["SphereRgn.Translate.Z"] = Input { Value = -1.63527733402188, },
				["SphereRgn.Size"] = Input { Value = 0.1428571, }
			},
			ViewInfo = OperatorInfo { Pos = { 990, 181.5 } },
		},
		pEmitter1SizeoverLife = LUTBezier {
			KeyColorSplines = {
				[0] = {
					[0] = { 0.10483870967742, RH = { 0.333082597384816, 0.352778412692103 }, Flags = { Linear = true } },
					[0.999247792154447] = { 0.84865781872147, LH = { 0.663524488305756, 0.57177964521925 } }
				}
			},
			SplineColor = { Red = 192, Green = 128, Blue = 64 },
		},
		pEmitter1BluroverLife2D = 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 },
		},
		pTurbulence1 = pTurbulence {
			ID = 11,
			Inputs = {
				XStrength = Input { Value = 0.4551495, },
				YStrength = Input { Value = 0.192691, },
				ZStrength = Input { Value = 0.1528239, },
				StrengthOverLife = Input { Value = 1, },
				StrengthOverLifeLUT = Input {
					SourceOp = "pTurbulence1StrengthoverLifeLUT",
					Source = "Value",
				},
				Density = Input { Value = 9.9667774, },
				Input = Input {
					SourceOp = "pEmitter1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 990, 214.5 } },
		},
		pTurbulence1StrengthoverLifeLUT = LUTBezier {
			KeyColorSplines = {
				[0] = {
					[0] = { 0.5, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
					[1] = { 0, LH = { 0.666666666666667, 0.166666666666667 }, Flags = { Linear = true } }
				}
			},
			SplineColor = { Red = 192, Green = 128, Blue = 64 },
		},
		pRender1 = pRender {
			Inputs = {
				_MotionBlurWarning = Input { Disabled = true, },
				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 = 1, },
				["ObjectID.ObjectID"] = Input { Value = 1, },
				Input = Input {
					SourceOp = "pTurbulence1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 990, 247.5 } },
		},
		Locator3D1 = Locator3D {
			Inputs = {
				SceneInput = Input {
					SourceOp = "Merge3D1",
					Source = "Output",
				},
				["Transform3DOp.Translate.X"] = Input { Value = 0.127451271399787, },
				["Transform3DOp.Translate.Y"] = Input { Value = 0.300479173660278, },
				["Transform3DOp.Translate.Z"] = Input { Value = -1.70486092567444, },
				Width = Input { Value = 1920, },
				Height = Input { Value = 1080, },
			},
			ViewInfo = OperatorInfo { Pos = { 1210, 280.5 } },
		},
		Renderer3D1 = Renderer3D {
			CustomData = {
				ToolVersion = 1,
			},
			Inputs = {
				["RendererSoftware.Channels.Nest"] = Input { Value = 1, },
				Width = Input { Value = 1920, },
				Height = Input { Value = 1080, },
				Depth = Input { Value = 3, },
				["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
				SceneInput = Input {
					SourceOp = "Locator3D1",
					Source = "Output",
				},
				RendererType = Input { Value = FuID { "RendererOpenGL" }, },
				["RendererOpenGL.Channels.Nest"] = Input { Value = 1, },
				["RendererOpenGL.Channels.RGBASS"] = Input { Value = 1, },
				["RendererOpenGL.Texturing"] = Input { Value = 1, },
				["RendererOpenGL.TextureDepth"] = Input { Value = 3, },
				["RendererOpenGL.TransparencySorting"] = Input { Value = 1, },
			},
			ViewInfo = OperatorInfo { Pos = { 1320, 280.5 } },
		},
		Merge3D1 = Merge3D {
			Inputs = {
				SceneInput1 = Input {
					SourceOp = "pRender1",
					Source = "Output",
				},
				SceneInput2 = Input {
					SourceOp = "Camera3D1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 1100, 280.5 } },
		},
		Camera3D1 = Camera3D {
			Inputs = {
				["Transform3DOp.Translate.X"] = Input { Value = 0.320907550192754, },
				["Transform3DOp.Translate.Y"] = Input { Value = 0.0937287840351211, },
				["Transform3DOp.Translate.Z"] = Input { Value = -2.42732121894352, },
				["Transform3DOp.Rotate.X"] = Input { Value = 21.6000003814697, },
				["Transform3DOp.Rotate.Y"] = Input { Value = -189.800003051758, },
				FLength = Input { Value = 18.2123442718302, },
				["Stereo.Mode"] = Input { Value = FuID { "OffAxis" }, },
				["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 2, },
				["MtlStdInputs.MaterialID"] = Input { Value = 2, },
			},
			ViewInfo = OperatorInfo { Pos = { 990, 280.5 } },
		},
		Cool1 = MacroOperator {
			CtrlWZoom = false,
			CustomData = {
				HelpPage = "http://www.cgsfusion.com/",
			},
			Inputs = ordered() {
				Center = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "Center",
					Page = "Controls",
					DefaultX = 0.75,
					DefaultY = 0.75,
				},
				ImageToProbe = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "ImageToProbe",
					Page = "Probe",
				},
				Position = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "Position",
					Expression = "OpticalFlares1_1.Center",
					Page = "Comments",
				},
				Input7 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "globalSize",
					Page = "Controls",
					Default = 1,
				},
				OutOfImageValue = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "OutOfImageValue",
					Page = "Probe",
					Default = 0.5,
				},
				MaximumValue = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "MaximumValue",
					Page = "Probe",
					Default = 0.5,
				},
				ClipInputLow = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "ClipInputLow",
					ControlGroup = 4,
					Page = "Probe",
					Default = 0,
				},
				Input1 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "globalRotate",
					Page = "Controls",
					Default = 0,
				},
				Input5 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlobalGreen",
					ControlGroup = 1,
				},
				Input3 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlassThreshold",
					Name = "Glass Threshold",
					Page = "Controls",
					Default = 1,
				},
				Input4 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlobalRed",
					ControlGroup = 1,
				},
				MainInput1 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "Input",
				},
				ClipInputHigh = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "ClipInputHigh",
					ControlGroup = 4,
					Page = "Probe",
					Default = 1,
				},
				Input2 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlassSize",
					Name = "Glass Size",
					Page = "Controls",
					Default = 5,
				},
				Input6 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlobalBlue",
					ControlGroup = 1,
				},
				MinimumValue = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "MinimumValue",
					Page = "Probe",
					Default = 0,
				},
				Unmult = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "Unmult",
					Page = "Controls",
					Default = 0,
				},
				OnBlack = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "OnBlack",
					Page = "Controls",
					Default = 0,
				}
			},
			Outputs = {
				Output1 = InstanceOutput {
					SourceOp = "OpticalFlares1_1",
					Source = "Output",
				}
			},
			ViewInfo = GroupInfo { Pos = { 1430, 280.5 } },
			Tools = ordered() {
				OpticalFlares1_1 = Fuse.CGS_OpticalFlares {
					CtrlWZoom = false,
					CtrlWShown = false,
					Inputs = {
						Center = Input {
							SourceOp = "Locator3D1",
							Source = "Position",
						},
						GlobalRed = Input { Value = 0.255, },
						GlobalGreen = Input { Value = 0.391, },
						issun = Input { Value = 1, },
						raycount = Input { Value = 8, },
						ispring = Input { Value = 1, },
						PrismRingRadius = Input {
							SourceOp = "Probe1_1",
							Source = "Result",
						},
						PrismRingThickness = Input { Value = 0.251, },
						PrismRingsoftness = Input { Value = 1, },
						isGlimmer = Input { Value = 1, },
						GlimmerMLRadius = Input {
							SourceOp = "Probe1_1",
							Source = "Result",
						},
						GlimmerMLThickness = Input { Value = 0.272, },
						AnamorphicControls = Input { Value = 0, },
						isAnamorphicS = Input { Value = 1, },
						anamSdHardness = Input { Value = 1.72, },
						isAnamorphicSp = Input { Value = 1, },
						anamSpintensity = Input { Value = 4.42, },
						anamSpbrightness = Input { Value = 6.28, },
						anamSpRed1 = Input { Value = 0.27, },
						anamSpGreen1 = Input { Value = 0.61, },
						anamSpBlue1 = Input { Value = 0.901, },
						anamSpRed2 = Input { Value = 0.461, },
						anamSpGreen2 = Input { Value = 0.518, },
						anamSpBlue2 = Input { Value = 0.667, },
						anamSpRed3 = Input { Value = 0.872, },
						anamSpGreen3 = Input { Value = 0.603, },
						anamSpBlue3 = Input { Value = 0.447, },
						isAnamGhostML = Input { Value = 1, },
						AGMLobjectCount = Input { Value = 8, },
						AGMLIntensityMultiplyer = Input { Value = 2, },
						AGMLobjectdist = Input { Value = 0.355, },
						AGMLtapperness = Input { Value = 0.95, },
						AGMLcposx = Input { Value = -0.796, },
						AGMLsizex = Input { Value = 0.083, },
						AGMLsizey = Input { Value = 0.021, },
						AGMLrandomized = Input { Value = 0.88, },
						AGMLThresold = Input { Value = 0, },
						AGMLintensity = Input { Value = 4.88, },
						AGMLRed1 = Input { Value = 0.766, },
						AGMLGreen1 = Input { Value = 0.624, },
						AGMLBlue1 = Input { Value = 0.652, },
						AGMLRed2 = Input { Value = 0.255, },
						AGMLGreen2 = Input { Value = 0.723, },
						AGMLBlue2 = Input { Value = 0.56, },
						AGMLGreen3 = Input { Value = 0.617, },
						isMIrisML = Input { Value = 1, },
						MIrisMLType = Input { Value = 1, },
						MIrisMLMIrisSize = Input { Value = 0.6, },
						MIrisMLbrightness = Input { Value = 0.2, },
						isCaustic = Input { Value = 1, },
						isHoopS = Input { Value = 1, },
						HoopSRadius = Input {
							SourceOp = "Probe1_1",
							Source = "Result",
						},
						HoopSThickness = Input { Value = 0.077, },
						HoopSsoftness = Input { Value = 0.502, },
						HoopSraycount = Input { Value = 0, },
						HoopSGreen1 = Input { Value = 0.525, },
						HoopSBlue1 = Input { Value = 0.766, },
						HoopSRed2 = Input { Value = 0.752, },
						HoopSBlue2 = Input { Value = 0.66, },
						HoopSRed3 = Input { Value = 0.539, },
						HoopSGreen3 = Input { Value = 0.759, },
						Glass_Texture = Input { Value = "Fuses:/CGS_OpticalFlares.zip/Smudgy.jpg", },
						Input = Input {
							SourceOp = "Renderer3D1",
							Source = "Output",
						},
					},
					ViewInfo = OperatorInfo { Pos = { 0, 10.15 } },
					Version = 131
				},
				Probe1_1 = Probe {
					CtrlWZoom = false,
					CtrlWShown = false,
					Inputs = {
						Position = Input {
							Value = { 0.75, 0.75 },
							Expression = "OpticalFlares1_1.Center",
						},
						MaximumValue = Input { Value = 0.5, },
						OutOfImageValue = Input { Value = 0.5, },
					},
				}
			},
		}
	}
}
You do not have the required permissions to view the files attached to this post.

User avatar
bowserlm
Fusionista
Posts: 334
Joined: Sat Apr 28, 2018 3:44 pm
Been thanked: 6 times

Re: Optical Flares for Blackmagic Fusion

#53

Post by bowserlm » Thu Jun 06, 2019 7:42 pm

Anyone care to offer an example of a setup that the Z position of the locator drives the size of the flare?

User avatar
JUNE
Fusioneer
Posts: 243
Joined: Wed Aug 06, 2014 5:45 am
Been thanked: 15 times
Contact:

Re: Optical Flares for Blackmagic Fusion

#54

Post by JUNE » Thu Jun 06, 2019 8:32 pm

bowserlm wrote:
Thu Jun 06, 2019 7:42 pm
Anyone care to offer an example of a setup that the Z position of the locator drives the size of the flare?

Code: Select all

{
	Tools = ordered() {
		Rectangle1 = RectangleMask {
			Inputs = {
				SoftEdge = Input { Value = 0.2, },
				MaskWidth = Input { Value = 2048, },
				MaskHeight = Input { Value = 1556, },
				PixelAspect = Input { Value = { 1, 1 }, },
				ClippingMode = Input { Value = FuID { "None" }, },
				Center = Input { Value = { 0.575079872204473, 0.140575079872204 }, },
				Width = Input { Value = 0.832268370607028, },
				Height = Input { Value = 1.57667731629393, },
				Angle = Input { Value = -96.0408032745324, },
			},
			ViewInfo = OperatorInfo { Pos = { 935, 181.5 } },
		},
		FastNoise1 = FastNoise {
			Inputs = {
				GlobalOut = Input { Value = 100, },
				Width = Input { Value = 100, },
				Height = Input { Value = 100, },
				Depth = Input { Value = 3, },
				["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
				Detail = Input { Value = 10, },
				SeetheRate = Input { Value = 1, },
				Type = Input { Value = 1, },
				GradientType = Input { Value = 5, },
				Start = Input { Value = { 0.502136752136752, 0.497863247863248 }, },
				End = Input { Value = { 0.181623931623932, 0.30982905982906 }, },
				Gradient = Input {
					Value = Gradient {
						Colors = {
							[0] = { 1, 1, 1, 1 },
							[1] = { 0, 0, 0, 0 }
						}
					},
				},
			},
			ViewInfo = OperatorInfo { Pos = { 825, 214.5 } },
		},
		BrightnessContrast1 = BrightnessContrast {
			Inputs = {
				Gain = Input { Value = 0.2733333, },
				Input = Input {
					SourceOp = "FastNoise1",
					Source = "Output",
				},
				EffectMask = Input {
					SourceOp = "Rectangle1",
					Source = "Mask",
				}
			},
			ViewInfo = OperatorInfo { Pos = { 935, 214.5 } },
		},
		pEmitter1 = pEmitter {
			ID = 7,
			Inputs = {
				Number = Input { Value = 5, },
				LifespanVariance = Input { Value = 82.3920266, },
				VelocityControls = Input { Value = 1, },
				Velocity = Input { Value = 0.1168385, },
				VelocityVariance = Input { Value = 0.0618557, },
				Angle = Input { Value = 90, },
				AngleZVariance = Input { Value = 360, },
				Style = Input { Value = FuID { "ParticleStyleBitmap" }, },
				["ParticleStyle.ColorControls"] = Input { Value = 1, },
				["ParticleStyle.Red"] = Input { Value = 0.493333333333333, },
				["ParticleStyle.Green"] = Input { Value = 0.493333333333333, },
				["ParticleStyle.Blue"] = Input { Value = 0.493333333333333, },
				["ParticleStyle.ColorVariance"] = Input { Value = 1, },
				["ParticleStyle.AlphaLow"] = Input { Value = -0.6099585, },
				["ParticleStyle.AlphaHigh"] = Input { Value = -0.0705394, },
				["ParticleStyle.LockColorVariance"] = Input { Value = 0, },
				["ParticleStyle.ColorOverLifeControls"] = Input { Value = 1, },
				["ParticleStyle.ColorOverLife"] = Input {
					Value = Gradient {
						Colors = {
							[0] = { 1, 1, 1, 1 },
							[1] = { 0, 0, 0, 1 }
						}
					},
				},
				["ParticleStyle.SizeControls"] = Input { Value = 1, },
				["ParticleStyle.Size"] = Input { Value = 0.1718213, },
				["ParticleStyle.SizeToVelocity"] = Input { Value = 0.2191781, },
				["ParticleStyle.SizeOverLife"] = Input {
					SourceOp = "pEmitter1SizeoverLife",
					Source = "Value",
				},
				["ParticleStyle.FadeControls"] = Input { Value = 1, },
				["ParticleStyle.FadeIn"] = Input { Value = 0.059761, },
				["ParticleStyle.FadeOut"] = Input { Value = 0.059761, },
				["ParticleStyle.BlurOverLife"] = Input {
					SourceOp = "pEmitter1BluroverLife2D",
					Source = "Value",
				},
				["ParticleStyleBitmap.Animate"] = Input { Value = 2, },
				["ParticleStyleBitmap.DropToolsHere"] = Input {
					SourceOp = "BrightnessContrast1",
					Source = "Output",
				},
				["SphereRgn.Translate.X"] = Input { Value = 0.132286189085319, },
				["SphereRgn.Translate.Y"] = Input { Value = 0.302728583732203, },
				["SphereRgn.Translate.Z"] = Input {
					SourceOp = "pEmitter1ZOffset",
					Source = "Value",
				},
				["SphereRgn.Size"] = Input { Value = 0.1428571, }
			},
			ViewInfo = OperatorInfo { Pos = { 935, 247.5 } },
		},
		pEmitter1SizeoverLife = LUTBezier {
			KeyColorSplines = {
				[0] = {
					[0] = { 0.10483870967742, RH = { 0.333082597384816, 0.352778412692103 }, Flags = { Linear = true } },
					[0.999247792154447] = { 0.84865781872147, LH = { 0.663524488305756, 0.57177964521925 } }
				}
			},
			SplineColor = { Red = 192, Green = 128, Blue = 64 },
		},
		pEmitter1BluroverLife2D = 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 },
		},
		pEmitter1ZOffset = BezierSpline {
			SplineColor = { Red = 254, Green = 56, Blue = 46 },
			NameSet = true,
			KeyFrames = {
				[0] = { -0.39, RH = { 12, -0.80509244467396 }, Flags = { Linear = true } },
				[36] = { -1.63527733402188, LH = { 24, -1.22018488934792 }, Flags = { Linear = true, Extrapolate = true } }
			}
		},
		pTurbulence1 = pTurbulence {
			ID = 10,
			Inputs = {
				XStrength = Input { Value = 0.4551495, },
				YStrength = Input { Value = 0.192691, },
				ZStrength = Input { Value = 0.1528239, },
				StrengthOverLife = Input { Value = 1, },
				StrengthOverLifeLUT = Input {
					SourceOp = "pTurbulence1StrengthoverLifeLUT",
					Source = "Value",
				},
				Density = Input { Value = 9.9667774, },
				Input = Input {
					SourceOp = "pEmitter1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 935, 280.5 } },
		},
		pTurbulence1StrengthoverLifeLUT = LUTBezier {
			KeyColorSplines = {
				[0] = {
					[0] = { 0.5, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
					[1] = { 0, LH = { 0.666666666666667, 0.166666666666667 }, Flags = { Linear = true } }
				}
			},
			SplineColor = { Red = 192, Green = 128, Blue = 64 },
		},
		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 = 1, },
				["ObjectID.ObjectID"] = Input { Value = 1, },
				Input = Input {
					SourceOp = "pTurbulence1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 935, 313.5 } },
		},
		Merge3D1 = Merge3D {
			Inputs = {
				SceneInput1 = Input {
					SourceOp = "pRender1",
					Source = "Output",
				},
				SceneInput2 = Input {
					SourceOp = "Camera3D1",
					Source = "Output",
				},
			},
			ViewInfo = OperatorInfo { Pos = { 1045, 346.5 } },
		},
		Locator3D1 = Locator3D {
			Inputs = {
				SceneInput = Input {
					SourceOp = "Merge3D1",
					Source = "Output",
				},
				["Transform3DOp.Translate.X"] = Input { Value = 0.127451271399787, },
				["Transform3DOp.Translate.Y"] = Input { Value = 0.300479173660278, },
				["Transform3DOp.Translate.Z"] = Input {
					SourceOp = "pEmitter1ZOffset",
					Source = "Value",
				},
				Width = Input { Value = 1920, },
				Height = Input { Value = 1080, },
			},
			ViewInfo = OperatorInfo { Pos = { 1155, 346.5 } },
		},
		Renderer3D1 = Renderer3D {
			CustomData = {
				ToolVersion = 1,
			},
			Inputs = {
				["RendererSoftware.Channels.Nest"] = Input { Value = 1, },
				GlobalOut = Input { Value = 100, },
				Width = Input { Value = 1920, },
				Height = Input { Value = 1080, },
				Depth = Input { Value = 3, },
				["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
				SceneInput = Input {
					SourceOp = "Locator3D1",
					Source = "Output",
				},
				RendererType = Input { Value = FuID { "RendererOpenGL" }, },
				["RendererOpenGL.Channels.Nest"] = Input { Value = 1, },
				["RendererOpenGL.Channels.RGBASS"] = Input { Value = 1, },
				["RendererOpenGL.Texturing"] = Input { Value = 1, },
				["RendererOpenGL.TextureDepth"] = Input { Value = 3, },
				["RendererOpenGL.TransparencySorting"] = Input { Value = 1, },
			},
			ViewInfo = OperatorInfo { Pos = { 1265, 346.5 } },
		},
		Camera3D1 = Camera3D {
			Inputs = {
				["Transform3DOp.Translate.X"] = Input { Value = 0.320907550192754, },
				["Transform3DOp.Translate.Y"] = Input { Value = 0.0937287840351211, },
				["Transform3DOp.Translate.Z"] = Input { Value = -2.42732121894352, },
				["Transform3DOp.Rotate.X"] = Input { Value = 21.6000003814697, },
				["Transform3DOp.Rotate.Y"] = Input { Value = -189.800003051758, },
				FLength = Input { Value = 18.2123442718302, },
				["Stereo.Mode"] = Input { Value = FuID { "OffAxis" }, },
				["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 2, },
				["MtlStdInputs.MaterialID"] = Input { Value = 2, },
			},
			ViewInfo = OperatorInfo { Pos = { 935, 346.5 } },
		},
		Cool1 = MacroOperator {
			CtrlWZoom = false,
			CustomData = {
				HelpPage = "http://www.cgsfusion.com/",
			},
			Inputs = ordered() {
				Center = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "Center",
					Page = "Controls",
					DefaultX = 0.75,
					DefaultY = 0.75,
				},
				ImageToProbe = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "ImageToProbe",
					Page = "Probe",
				},
				Position = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "Position",
					Expression = "OpticalFlares1_1.Center",
					Page = "Comments",
				},
				Input7 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "globalSize",
					Page = "Controls",
					Default = 1,
				},
				OutOfImageValue = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "OutOfImageValue",
					Page = "Probe",
					Default = 0.5,
				},
				MaximumValue = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "MaximumValue",
					Page = "Probe",
					Default = 0.5,
				},
				ClipInputLow = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "ClipInputLow",
					ControlGroup = 4,
					Page = "Probe",
					Default = 0,
				},
				Input1 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "globalRotate",
					Page = "Controls",
					Default = 0,
				},
				Input5 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlobalGreen",
					ControlGroup = 1,
				},
				Input3 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlassThreshold",
					Name = "Glass Threshold",
					Page = "Controls",
					Default = 1,
				},
				Input4 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlobalRed",
					ControlGroup = 1,
				},
				MainInput1 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "Input",
				},
				ClipInputHigh = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "ClipInputHigh",
					ControlGroup = 4,
					Page = "Probe",
					Default = 1,
				},
				Input2 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlassSize",
					Name = "Glass Size",
					Page = "Controls",
					Default = 5,
				},
				Input6 = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "GlobalBlue",
					ControlGroup = 1,
				},
				MinimumValue = InstanceInput {
					SourceOp = "Probe1_1",
					Source = "MinimumValue",
					Page = "Probe",
					Default = 0,
				},
				Unmult = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "Unmult",
					Page = "Controls",
					Default = 0,
				},
				OnBlack = InstanceInput {
					SourceOp = "OpticalFlares1_1",
					Source = "OnBlack",
					Page = "Controls",
					Default = 0,
				}
			},
			Outputs = {
				Output1 = InstanceOutput {
					SourceOp = "OpticalFlares1_1",
					Source = "Output",
				}
			},
			ViewInfo = GroupInfo { Pos = { 1375, 346.5 } },
			Tools = ordered() {
				OpticalFlares1_1 = Fuse.CGS_OpticalFlares {
					CtrlWZoom = false,
					CtrlWShown = false,
					Inputs = {
						Center = Input {
							SourceOp = "Locator3D1",
							Source = "Position",
						},
						globalSize = Input {
							SourceOp = "Locator3D1",
							Source = "Distance",
						},
						GlobalRed = Input { Value = 0.255, },
						GlobalGreen = Input { Value = 0.391, },
						issun = Input { Value = 1, },
						raycount = Input { Value = 8, },
						ispring = Input { Value = 1, },
						PrismRingRadius = Input {
							SourceOp = "Probe1_1",
							Source = "Result",
						},
						PrismRingThickness = Input { Value = 0.251, },
						PrismRingsoftness = Input { Value = 1, },
						isGlimmer = Input { Value = 1, },
						GlimmerMLRadius = Input {
							SourceOp = "Probe1_1",
							Source = "Result",
						},
						GlimmerMLThickness = Input { Value = 0.272, },
						AnamorphicControls = Input { Value = 0, },
						isAnamorphicS = Input { Value = 1, },
						anamSdHardness = Input { Value = 1.72, },
						isAnamorphicSp = Input { Value = 1, },
						anamSpintensity = Input { Value = 4.42, },
						anamSpbrightness = Input { Value = 6.28, },
						anamSpRed1 = Input { Value = 0.27, },
						anamSpGreen1 = Input { Value = 0.61, },
						anamSpBlue1 = Input { Value = 0.901, },
						anamSpRed2 = Input { Value = 0.461, },
						anamSpGreen2 = Input { Value = 0.518, },
						anamSpBlue2 = Input { Value = 0.667, },
						anamSpRed3 = Input { Value = 0.872, },
						anamSpGreen3 = Input { Value = 0.603, },
						anamSpBlue3 = Input { Value = 0.447, },
						isAnamGhostML = Input { Value = 1, },
						AGMLobjectCount = Input { Value = 8, },
						AGMLIntensityMultiplyer = Input { Value = 2, },
						AGMLobjectdist = Input { Value = 0.355, },
						AGMLtapperness = Input { Value = 0.95, },
						AGMLcposx = Input { Value = -0.796, },
						AGMLsizex = Input { Value = 0.083, },
						AGMLsizey = Input { Value = 0.021, },
						AGMLrandomized = Input { Value = 0.88, },
						AGMLThresold = Input { Value = 0, },
						AGMLintensity = Input { Value = 4.88, },
						AGMLRed1 = Input { Value = 0.766, },
						AGMLGreen1 = Input { Value = 0.624, },
						AGMLBlue1 = Input { Value = 0.652, },
						AGMLRed2 = Input { Value = 0.255, },
						AGMLGreen2 = Input { Value = 0.723, },
						AGMLBlue2 = Input { Value = 0.56, },
						AGMLGreen3 = Input { Value = 0.617, },
						isMIrisML = Input { Value = 1, },
						MIrisMLType = Input { Value = 1, },
						MIrisMLMIrisSize = Input { Value = 0.6, },
						MIrisMLbrightness = Input { Value = 0.2, },
						isCaustic = Input { Value = 1, },
						isHoopS = Input { Value = 1, },
						HoopSRadius = Input {
							SourceOp = "Probe1_1",
							Source = "Result",
						},
						HoopSThickness = Input { Value = 0.077, },
						HoopSsoftness = Input { Value = 0.502, },
						HoopSraycount = Input { Value = 0, },
						HoopSGreen1 = Input { Value = 0.525, },
						HoopSBlue1 = Input { Value = 0.766, },
						HoopSRed2 = Input { Value = 0.752, },
						HoopSBlue2 = Input { Value = 0.66, },
						HoopSRed3 = Input { Value = 0.539, },
						HoopSGreen3 = Input { Value = 0.759, },
						Glass_Texture = Input { Value = "Fuses:/CGS_OpticalFlares.zip/Smudgy.jpg", },
						Input = Input {
							SourceOp = "Renderer3D1",
							Source = "Output",
						},
					},
					ViewInfo = OperatorInfo { Pos = { 0, 10.15 } },
					Version = 131
				},
				Probe1_1 = Probe {
					CtrlWZoom = false,
					CtrlWShown = false,
					Inputs = {
						Position = Input {
							Value = { 0.446275040507317, 0.158095389604568 },
							Expression = "OpticalFlares1_1.Center",
						},
						MaximumValue = Input { Value = 0.5, },
						OutOfImageValue = Input { Value = 0.5, },
					},
				}
			},
		}
	}
}

User avatar
bowserlm
Fusionista
Posts: 334
Joined: Sat Apr 28, 2018 3:44 pm
Been thanked: 6 times

Re: Optical Flares for Blackmagic Fusion

#55

Post by bowserlm » Tue Jul 02, 2019 11:28 am

Having trouble getting the templates to show up on PC.

We've put them in C:\ProgramData\Blackmagic Design\Fusion and made sure that the Templates folder that was there is moved away, but we still are getting any templates in the Fusion bin.

User avatar
JUNE
Fusioneer
Posts: 243
Joined: Wed Aug 06, 2014 5:45 am
Been thanked: 15 times
Contact:

Re: Optical Flares for Blackmagic Fusion

#56

Post by JUNE » Thu Jul 04, 2019 1:49 am

bowserlm wrote:
Tue Jul 02, 2019 11:28 am
Having trouble getting the templates to show up on PC.

We've put them in C:\ProgramData\Blackmagic Design\Fusion and made sure that the Templates folder that was there is moved away, but we still are getting any templates in the Fusion bin.
QQ截图20190704170438.jpg
Check to see if there is this parameter in the Global's path map.
You do not have the required permissions to view the files attached to this post.

User avatar
astrofalcon
Posts: 6
Joined: Wed Jan 13, 2016 10:55 am

Re: Optical Flares for Blackmagic Fusion

#57

Post by astrofalcon » Fri Jul 26, 2019 7:22 am

Do these not work with Fusion 16?

User avatar
Folgore_202
Posts: 3
Joined: Tue Jul 30, 2019 10:47 am
Real name: Matvey

Re: Optical Flares for Blackmagic Fusion

#58

Post by Folgore_202 » Wed Jul 31, 2019 11:54 am

That's some awesome work, I'll see if I can do something like that by myself.
The thing is that I'm working on a short animation in which a mysterious blast shuts down every electronic device, and that's pretty much the tool I need for said blast. Now, I just have to master how to do rain, put it over the models I already did inspired by these villas in Athens, and let the flare loose over the city!

WSL EDIT: slighty suspicious looking link removed.

User avatar
Midgardsormr
Fusionator
Posts: 1119
Joined: Wed Nov 26, 2014 8:04 pm
Answers: 2
Location: Los Angeles, CA, USA
Been thanked: 76 times
Contact:

Re: Optical Flares for Blackmagic Fusion

#59

Post by Midgardsormr » Wed Jul 31, 2019 7:36 pm

astrofalcon wrote:
Fri Jul 26, 2019 7:22 am
Do these not work with Fusion 16?
Fusion 16 uses a new GPU language, and Fuses that use the previous OpenCL code no longer work. Unfortunately, that means that excellent Fuses such as these and June's Fractal Noise won't function there until they've been rewritten. And there is not much documentation for the new language available, so it will probably take quite a while before the tools can be converted. Optical Flares took a very long time to develop in the first place, so it wouldn't surprise me if June's a little demoralized by the sudden and unexpected change.

Still, Fusion 9 is still available and maintains many advantages over v16, and both versions can be installed on the same system.

User avatar
andromeda_girl
Fusionista
Posts: 396
Joined: Sun Feb 21, 2016 6:25 am
Been thanked: 3 times

Re: Optical Flares for Blackmagic Fusion

#60

Post by andromeda_girl » Wed Aug 07, 2019 9:11 am

so it does work:)
cool
thanks for demonstrating that, June.
now if we can just get Fu16 to play nice with all the lovely custom tools that have been made [and round-file that crappy GUI] we'll have something.
:)