Reduce Grid Warp effect

Moderator: SecondMan

User avatar
JSalvo
Posts: 5
Joined: Tue Aug 14, 2018 9:15 pm

Reduce Grid Warp effect

#1

Post by JSalvo » Mon Apr 08, 2019 10:48 pm

Hi All,
This feels like a dumb question, but I can't find a good answer, is there a way to take a grid warp that I've done, and just reduce it's intensity? Like slide back the points towards their origin, just a smidge... preferably via a slider?

I feel like this is something I used to know how to do.

Thanks for the help.

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

Re: Reduce Grid Warp effect

#2

Post by SecondMan » Mon Apr 08, 2019 11:23 pm

You can do that cumbersome-ly using the mesh animation. Keyframe your mesh from Source to Destination and set your value somewhere in-between...

In the below example I want 90% deformation between 0 and 50, so I set an initial keyframe at -1 and another keyframe at 51 for my Destination mesh, and then two keyframes of 0.9 value at 0 and 50.
Code: [Select all] [Expand/Collapse] [Download] (WSLsnippet-2019-04-08--23.20.05.setting)
  1. {
  2.     Tools = ordered() {
  3.         Background1 = Background {
  4.             ViewInfo = OperatorInfo { Pos = { 505, 136 } },
  5.             Inputs = {
  6.                 Start = Input { Value = { 0.5, 0.5 } },
  7.                 ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" } },
  8.                 Type = Input { Value = FuID { "Gradient" } },
  9.                 GradientType = Input { Value = FuID { "Square" } },
  10.                 Height = Input { Value = 1080 },
  11.                 Width = Input { Value = 1920 }
  12.             }
  13.         },
  14.         GridWarp1 = GridWarp {
  15.             ViewInfo = OperatorInfo { Pos = { 615, 136 } },
  16.             SrcDrawMode = 1,
  17.             DestDrawMode = 1,
  18.             CtrlWZoom = false,
  19.             Inputs = {
  20.                 Input = Input {
  21.                     Source = "Output",
  22.                     SourceOp = "Background1"
  23.                 },
  24.                 SrcGridChange = Input {
  25.                     Value = Mesh {
  26.                         Points = {
  27.                             { X = -0.5, T_CY = 0, L_CX = 0, Y = -0.5 },
  28.                             { X = -0.375, T_CY = 0, Y = -0.5 },
  29.                             { X = -0.25, T_CY = 0, Y = -0.5 },
  30.                             { X = -0.125, T_CY = 0, Y = -0.5 },
  31.                             { X = 0, T_CY = 0, Y = -0.5 },
  32.                             { X = 0.125, T_CY = 0, Y = -0.5 },
  33.                             { X = 0.25, T_CY = 0, Y = -0.5 },
  34.                             { X = 0.375, T_CY = 0, Y = -0.5 },
  35.                             { R_CX = 0, X = 0.5, T_CY = 0, Y = -0.5 },
  36.                             { X = -0.5, L_CX = 0, Y = -0.375 },
  37.                             { X = -0.375, Y = -0.375 },
  38.                             { X = -0.25, Y = -0.375 },
  39.                             { X = -0.125, Y = -0.375 },
  40.                             { X = 0, Y = -0.375 },
  41.                             { X = 0.125, Y = -0.375 },
  42.                             { X = 0.25, Y = -0.375 },
  43.                             { X = 0.375, Y = -0.375 },
  44.                             { X = 0.5, R_CX = 0, Y = -0.375 },
  45.                             { X = -0.5, L_CX = 0, Y = -0.25 },
  46.                             { X = -0.375, Y = -0.25 },
  47.                             { X = -0.25, Y = -0.25 },
  48.                             { X = -0.125, Y = -0.25 },
  49.                             { X = 0, Y = -0.25 },
  50.                             { X = 0.125, Y = -0.25 },
  51.                             { X = 0.25, Y = -0.25 },
  52.                             { X = 0.375, Y = -0.25 },
  53.                             { X = 0.5, R_CX = 0, Y = -0.25 },
  54.                             { X = -0.5, L_CX = 0, Y = -0.125 },
  55.                             { X = -0.375, Y = -0.125 },
  56.                             { X = -0.25, Y = -0.125 },
  57.                             { X = -0.125, Y = -0.125 },
  58.                             { X = 0, Y = -0.125 },
  59.                             { X = 0.125, Y = -0.125 },
  60.                             { X = 0.25, Y = -0.125 },
  61.                             { X = 0.375, Y = -0.125 },
  62.                             { X = 0.5, R_CX = 0, Y = -0.125 },
  63.                             { X = -0.5, L_CX = 0, Y = 0 },
  64.                             { X = -0.375, Y = 0 },
  65.                             { X = -0.25, Y = 0 },
  66.                             { X = -0.125, Y = 0 },
  67.                             { X = 0, Y = 0 },
  68.                             { X = 0.125, Y = 0 },
  69.                             { X = 0.25, Y = 0 },
  70.                             { X = 0.375, Y = 0 },
  71.                             { X = 0.5, R_CX = 0, Y = 0 },
  72.                             { X = -0.5, L_CX = 0, Y = 0.125 },
  73.                             { X = -0.375, Y = 0.125 },
  74.                             { X = -0.25, Y = 0.125 },
  75.                             { X = -0.125, Y = 0.125 },
  76.                             { X = 0, Y = 0.125 },
  77.                             { X = 0.125, Y = 0.125 },
  78.                             { X = 0.25, Y = 0.125 },
  79.                             { X = 0.375, Y = 0.125 },
  80.                             { X = 0.5, R_CX = 0, Y = 0.125 },
  81.                             { X = -0.5, L_CX = 0, Y = 0.25 },
  82.                             { X = -0.375, Y = 0.25 },
  83.                             { X = -0.25, Y = 0.25 },
  84.                             { X = -0.125, Y = 0.25 },
  85.                             { X = 0, Y = 0.25 },
  86.                             { X = 0.125, Y = 0.25 },
  87.                             { X = 0.25, Y = 0.25 },
  88.                             { X = 0.375, Y = 0.25 },
  89.                             { X = 0.5, R_CX = 0, Y = 0.25 },
  90.                             { X = -0.5, L_CX = 0, Y = 0.375 },
  91.                             { X = -0.375, Y = 0.375 },
  92.                             { X = -0.25, Y = 0.375 },
  93.                             { X = -0.125, Y = 0.375 },
  94.                             { X = 0, Y = 0.375 },
  95.                             { X = 0.125, Y = 0.375 },
  96.                             { X = 0.25, Y = 0.375 },
  97.                             { X = 0.375, Y = 0.375 },
  98.                             { X = 0.5, R_CX = 0, Y = 0.375 },
  99.                             { X = -0.5, L_CX = 0, Y = 0.5, B_CY = 0 },
  100.                             { X = -0.375, Y = 0.5, B_CY = 0 },
  101.                             { X = -0.25, Y = 0.5, B_CY = 0 },
  102.                             { X = -0.125, Y = 0.5, B_CY = 0 },
  103.                             { X = 0, Y = 0.5, B_CY = 0 },
  104.                             { X = 0.125, Y = 0.5, B_CY = 0 },
  105.                             { X = 0.25, Y = 0.5, B_CY = 0 },
  106.                             { X = 0.375, Y = 0.5, B_CY = 0 },
  107.                             { R_CX = 0, X = 0.5, Y = 0.5, B_CY = 0 }
  108.                         },
  109.                         DeltaC = 0.125,
  110.                         Col = 9,
  111.                         Count = 81,
  112.                         DeltaR = 0.125,
  113.                         P1Y = -0.5,
  114.                         SavePoints = {
  115.                         },
  116.                         P1X = -0.5
  117.                     }
  118.                 },
  119.                 DstPolyline = Input {
  120.                     Value = Polyline {
  121.                     }
  122.                 },
  123.                 DstXGridSize = Input { Value = 2 },
  124.                 DstGridChange = Input {
  125.                     Source = "Value",
  126.                     SourceOp = "GridWarp1DstGridChange"
  127.                 },
  128.                 DstYGridSize = Input { Value = 2 },
  129.                 SrcPolyline = Input {
  130.                     Value = Polyline {
  131.                     }
  132.                 }
  133.             }
  134.         },
  135.         GridWarp1DstGridChange = BezierSpline {
  136.             SplineColor = { Red = 119, Green = 221, Blue = 102 },
  137.             NameSet = true,
  138.             KeyFrames = {
  139.                 [-1] = { 0, RH = { -0.666666666666667, 0.3 }, Value = Mesh {
  140.                         Points = {
  141.                             { X = -0.5, T_CY = 0, L_CX = 0, Y = -0.5 },
  142.                             { X = 0, T_CY = 0, Y = -0.5 },
  143.                             { R_CX = 0, X = 0.5, T_CY = 0, Y = -0.5 },
  144.                             { X = -0.5, L_CX = 0, Y = 0 },
  145.                             { X = 0, Y = 0 },
  146.                             { X = 0.5, R_CX = 0, Y = 0 },
  147.                             { X = -0.5, L_CX = 0, Y = 0.5, B_CY = 0 },
  148.                             { X = 0, Y = 0.5, B_CY = 0 },
  149.                             { R_CX = 0, X = 0.5, Y = 0.5, B_CY = 0 }
  150.                         },
  151.                         DeltaC = 0.5,
  152.                         Col = 3,
  153.                         Count = 9,
  154.                         DeltaR = 0.5,
  155.                         P1Y = -0.5,
  156.                         SavePoints = {
  157.                         },
  158.                         P1X = -0.5
  159.                     }, Flags = { LockedY = true, Linear = true } },
  160.                 [0] = { 0.9, RH = { 16.6666666666667, 0.9 }, Flags = { Linear = true }, LH = { -0.333333333333333, 0.6 } },
  161.                 [50] = { 0.9, RH = { 50.3333333333333, 0.933333333333333 }, Flags = { Linear = true }, LH = { 33.3333333333333, 0.9 } },
  162.                 [51] = { 1, Value = Mesh {
  163.                         Points = {
  164.                             { X = -0.5, T_CY = 0, L_CX = 0, Y = -0.5 },
  165.                             { X = 0, T_CY = 0, Y = -0.5, B_CX = 0.0654899688364191, B_CY = 0.214677640384088 },
  166.                             { R_CX = 0, X = 0.5, T_CY = 0, Y = -0.5 },
  167.                             { R_CX = 0.232156635503086, X = -0.5, R_CY = 0.0480109737174197, L_CX = 0, Y = 0 },
  168.                             { R_CX = 0.104718945509407, T_CY = -0.244213619337067, Z = 9.72222217777777e-005, B_CY = 0.166233878252238, X = 0.196469906509259, U = 0, L_CX = -0.233722135821325, Y = 0.144032921152263, V = 0 },
  169.                             { L_CY = 0.048010973717421, X = 0.5, L_CX = -0.101176697830247, R_CX = 0, Y = 0 },
  170.                             { X = -0.5, L_CX = 0, Y = 0.5, B_CY = 0 },
  171.                             { X = 0, T_CY = -0.118655692949246, B_CY = 0, Y = 0.5, T_CX = 0.0654899688364193 },
  172.                             { R_CX = 0, X = 0.5, Y = 0.5, B_CY = 0 }
  173.                         },
  174.                         DeltaC = 0.5,
  175.                         Col = 3,
  176.                         Count = 9,
  177.                         DeltaR = 0.5,
  178.                         P1Y = -0.5,
  179.                         SavePoints = {
  180.                         },
  181.                         P1X = -0.5
  182.                     }, Flags = { LockedY = true, Linear = true }, LH = { 50.6666666666667, 0.966666666666667 } }
  183.             }
  184.         }
  185.     }
  186. }
And if you want to get creative: viewtopic.php?f=16&t=2816

JPDoc
Fusioneer
Posts: 182
Joined: Tue Sep 02, 2014 8:26 am
Been thanked: 1 time

Re: Reduce Grid Warp effect

#3

Post by JPDoc » Tue Apr 09, 2019 4:05 am

Second that, Second Man (see what i did there? :D ).

Copying and pasting the grid warp key frames is relatively straight forward and not too cumbersome when you get used to it. I recently did a lot morphing of facial features to better match lip sync this way and found it pretty useful - basically I set up a master grid warp lined up over the face, did a copy (so I could easily reset if I got mixed up) then pulled the grid into exaggerated positions. Then it was simply a matter of stepping through the frames, picking one where the shape worked the best and then copying it to the "target" frame.

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

Re: Reduce Grid Warp effect

#4

Post by Midgardsormr » Tue Apr 09, 2019 12:01 pm

Give this a try (courtesy of my co-worker Dan De'Etremont):

Code: Select all

{
	Tools = ordered() {
		MT_WarpPercent = GroupOperator {
			NameSet = true,
			Inputs = ordered() {
				InputWarp = InstanceInput {
					SourceOp = "GridWarp3",
					Source = "InputWarp",
					Page = "Controls",
				},
				DeformPercentage = InstanceInput {
					SourceOp = "DeformPercent",
					Source = "NumberIn1",
				},
				InputImage = InstanceInput {
					SourceOp = "Displace1",
					Source = "Input",
					Name = "InputImage",
				},
				DeformMask = InstanceInput {
					SourceOp = "Background2",
					Source = "EffectMask",
					Name = "DeformMask",
				}
			},
			Outputs = {
				Output = InstanceOutput {
					SourceOp = "Displace1",
					Source = "Output",
				}
			},
			ViewInfo = GroupInfo {
				Pos = { 440, -346.5 },
				Flags = {
					AllowPan = false,
					GridSnap = true,
					ConnectedSnap = true,
					AutoSnap = true,
					RemoveRouters = true
				},
				Size = { 285.883, 301.439, 145.5, 66.0093 },
				Direction = "Horizontal",
				PipeStyle = "Direct",
				Scale = 1,
				Offset = { -30.9314, -105.375 }
			},
			Tools = ordered() {
				U = Background {
					CtrlWShown = false,
					NameSet = true,
					Inputs = {
						GlobalIn = Input { Value = 1001, },
						GlobalOut = Input { Value = 1206, },
						Width = Input {
							Value = 3200,
							Expression = "Displace1.Input.Width",
						},
						Height = Input {
							Value = 1800,
							Expression = "Displace1.Input.Height",
						},
						Type = Input { Value = FuID { "Horizontal" }, },
						TopRightRed = Input { Value = 1, },
					},
					ViewInfo = OperatorInfo { Pos = { -55, 82.5 } },
				},
				Blur1 = Blur {
					CtrlWShown = false,
					Inputs = {
						Filter = Input { Value = FuID { "Multi-box" }, },
						Passes = Input { Value = 10, },
						Input = Input {
							SourceOp = "NormalizeUV",
							Source = "Output",
						},
					},
					ViewInfo = OperatorInfo { Pos = { 55, 214.5 } },
				},
				DeformPercent = Custom {
					CtrlWShown = false,
					NameSet = true,
					Inputs = {
						NumberIn1 = Input { Value = 100, },
						LUTIn1 = Input {
							SourceOp = "DeformPercentLUTIn1",
							Source = "Value",
						},
						LUTIn2 = Input {
							SourceOp = "DeformPercentLUTIn2",
							Source = "Value",
						},
						LUTIn3 = Input {
							SourceOp = "DeformPercentLUTIn3",
							Source = "Value",
						},
						LUTIn4 = Input {
							SourceOp = "DeformPercentLUTIn4",
							Source = "Value",
						},
						RedExpression = Input { Value = "c1*(n1*0.01)", },
						GreenExpression = Input { Value = "c1*(n1*0.01)", },
						BlueExpression = Input { Value = "0", },
						NumberControls = Input { Value = 1, },
						NameforNumber1 = Input { Value = "Deform Percentage", },
						ShowNumber2 = Input { Value = 0, },
						ShowNumber3 = Input { Value = 0, },
						ShowNumber4 = Input { Value = 0, },
						ShowNumber5 = Input { Value = 0, },
						ShowNumber6 = Input { Value = 0, },
						ShowNumber7 = Input { Value = 0, },
						ShowNumber8 = Input { Value = 0, },
						ShowPoint1 = Input { Value = 0, },
						ShowPoint2 = Input { Value = 0, },
						ShowPoint3 = Input { Value = 0, },
						ShowPoint4 = Input { Value = 0, },
						ShowLUT1 = Input { Value = 0, },
						ShowLUT2 = Input { Value = 0, },
						ShowLUT3 = Input { Value = 0, },
						ShowLUT4 = Input { Value = 0, },
						Image1 = Input {
							SourceOp = "Blur1",
							Source = "Output",
						},
					},
					ViewInfo = OperatorInfo { Pos = { 55, 247.5 } },
				},
				DeformPercentLUTIn1 = LUTBezier {
					KeyColorSplines = {
						[0] = {
							[0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
							[1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
						}
					},
					SplineColor = { Red = 204, Green = 0, Blue = 0 },
					CtrlWShown = false,
				},
				DeformPercentLUTIn2 = LUTBezier {
					KeyColorSplines = {
						[0] = {
							[0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
							[1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
						}
					},
					SplineColor = { Red = 0, Green = 204, Blue = 0 },
					CtrlWShown = false,
				},
				DeformPercentLUTIn3 = LUTBezier {
					KeyColorSplines = {
						[0] = {
							[0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
							[1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
						}
					},
					SplineColor = { Red = 0, Green = 0, Blue = 204 },
					CtrlWShown = false,
				},
				DeformPercentLUTIn4 = LUTBezier {
					KeyColorSplines = {
						[0] = {
							[0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
							[1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
						}
					},
					SplineColor = { Red = 204, Green = 204, Blue = 204 },
					CtrlWShown = false,
				},
				Background2 = Background {
					CtrlWShown = false,
					Inputs = {
						GlobalIn = Input { Value = 1001, },
						GlobalOut = Input { Value = 1206, },
						Width = Input {
							Value = 3200,
							Expression = "Displace1.Input.Width",
						},
						Height = Input {
							Value = 1800,
							Expression = "Displace1.Input.Height",
						},
					},
					ViewInfo = OperatorInfo { Pos = { -55, 280.5 } },
				},
				Mask = ChannelBoolean {
					CtrlWShown = false,
					NameSet = true,
					Inputs = {
						ApplyMaskInverted = Input { Value = 1, },
						Operation = Input { Value = 12, },
						ToBlue = Input { Value = 4, },
						ToAlpha = Input { Value = 4, },
						Background = Input {
							SourceOp = "DeformPercent",
							Source = "Output",
						},
						EffectMask = Input {
							SourceOp = "Background2",
							Source = "Output",
						},
					},
					ViewInfo = OperatorInfo { Pos = { 55, 280.5 } },
				},
				Displace1 = Displace {
					CtrlWShown = false,
					Inputs = {
						Type = Input { Value = 1, },
						XRefraction = Input { Value = 1, },
						YRefraction = Input { Value = 1, },
						Foreground = Input {
							SourceOp = "Mask",
							Source = "Output",
						},
					},
					ViewInfo = OperatorInfo { Pos = { 55, 313.5 } },
				},
				GridWarp3 = GridWarp {
					SrcDrawMode = 1,
					DestDrawMode = 1,
					CtrlWShown = false,
					Inputs = {
						DstCenter = Input { Expression = "self:GetSourceTool(\"InputWarp\").DstCenter", },
						DstAngle = Input { Expression = "self:GetSourceTool(\"InputWarp\").DstAngle", },
						DstSize = Input { Expression = "self:GetSourceTool(\"InputWarp\").DstSize", },
						DstCornerPoint1 = Input { Value = { 2.98023223876953e-008, 0 }, },
						SrcCenter = Input { Expression = "self:GetSourceTool(\"InputWarp\").SrcCenter", },
						SrcAngle = Input { Expression = "self:GetSourceTool(\"InputWarp\").SrcAngle", },
						SrcSize = Input { Expression = "self:GetSourceTool(\"InputWarp\").SrcSize", },
						SrcCornerPoint1 = Input { Value = { 2.98023223876953e-008, 0 }, },
						SrcGridChange = Input {
							Value = Mesh {
								Count = 4,
								Col = 2,
								DeltaR = 1,
								DeltaC = 1,
								P1X = -0.5,
								P1Y = -0.5,
								Points = {
									{ X = -0.5, Y = -0.5, L_CX = 0, T_CY = 0, },
									{ X = 0.5, Y = -0.5, T_CY = 0, R_CX = 0, },
									{ X = -0.5, Y = 0.5, L_CX = 0, B_CY = 0, },
									{ X = 0.5, Y = 0.5, R_CX = 0, B_CY = 0, }
								},
								SavePoints = {
								}
							},
						},
						SrcPolyline = Input {
							Value = Polyline {
							},
						},
						DstGridChange = Input {
							Value = Mesh {
								Count = 4,
								Col = 2,
								DeltaR = 1,
								DeltaC = 0.999999970197678,
								P1X = -0.499999970197678,
								P1Y = -0.5,
								Points = {
									{ X = -0.5, Y = -0.5, U = -0.499999970197678, L_CX = 0, T_CY = 0, },
									{ X = 0.5, Y = -0.5, T_CY = 0, R_CX = 0, },
									{ X = -0.5, Y = 0.5, U = -0.499999970197678, L_CX = 0, B_CY = 0, },
									{ X = 0.5, Y = 0.5, R_CX = 0, B_CY = 0, }
								},
								SavePoints = {
								}
							},
							Expression = "self:GetSourceTool(\"InputWarp\").DstGridChange",
						},
						DstPolyline = Input {
							Value = Polyline {
							},
						},
						Input = Input {
							SourceOp = "UVMerge",
							Source = "Output",
						},
						DstXGridSize = Input {
							Value = 1,
							Expression = "self:GetSourceTool(\"InputWarp\").DstXGridSize",
						},
						DstYGridSize = Input {
							Value = 1,
							Expression = "self:GetSourceTool(\"InputWarp\").DstYGridSize",
						},
						SrcXGridSize = Input {
							Value = 1,
							Expression = "self:GetSourceTool(\"InputWarp\").SrcXGridSize",
						},
						SrcYGridSize = Input {
							Value = 1,
							Expression = "self:GetSourceTool(\"InputWarp\").SrcYGridSize",
						},
						SrcSubdivisionLevel = Input { Expression = "self:GetSourceTool(\"InputWarp\").SrcSubdivisionLevel", },
						DstSubdivisionLevel = Input { Expression = "self:GetSourceTool(\"InputWarp\").DstSubdivisionLevel", },
					},
					ViewInfo = OperatorInfo { Pos = { 0, 148.5 } },
					UserControls = ordered() {
						InputWarp = {
							ICS_ControlPage = "Controls",
							INPID_InputControl = "ImageControl",
							LINKID_DataType = "Image",
							LINKS_Name = "Input Warp"
						},
						DstXGridSize = {
							INP_MaxAllowed = 100,
							INP_Integer = true,
							INPID_InputControl = "SliderControl",
							IC_Steps = 10,
							INP_MaxScale = 25,
							INP_Default = 8,
							INP_MinScale = 1,
							INP_MinAllowed = 1,
							LINKID_DataType = "Number",
							ICS_ControlPage = "Controls",
							LINKS_Name = "Dst X Grid Size"
						},
						DstYGridSize = {
							INP_MaxAllowed = 100,
							INP_Integer = true,
							INPID_InputControl = "SliderControl",
							IC_Steps = 10,
							INP_MaxScale = 25,
							INP_Default = 8,
							INP_MinScale = 1,
							INP_MinAllowed = 1,
							LINKID_DataType = "Number",
							ICS_ControlPage = "Controls",
							LINKS_Name = "Dst Y Grid Size"
						},
						SrcXGridSize = {
							INP_MaxAllowed = 50,
							INP_Integer = true,
							INPID_InputControl = "SliderControl",
							IC_Steps = 10,
							INP_MaxScale = 25,
							INP_Default = 8,
							INP_MinScale = 1,
							INP_MinAllowed = 1,
							LINKID_DataType = "Number",
							ICS_ControlPage = "Controls",
							LINKS_Name = "Src X Grid Size"
						},
						SrcYGridSize = {
							INP_MaxAllowed = 50,
							INP_Integer = true,
							INPID_InputControl = "SliderControl",
							IC_Steps = 10,
							INP_MaxScale = 25,
							INP_Default = 8,
							INP_MinScale = 1,
							INP_MinAllowed = 1,
							LINKID_DataType = "Number",
							ICS_ControlPage = "Controls",
							LINKS_Name = "Src Y Grid Size"
						},
						SrcSubdivisionLevel = {
							INP_MaxAllowed = 5,
							INP_Integer = true,
							INPID_InputControl = "SliderControl",
							IC_Steps = 4,
							INP_MaxScale = 4,
							INP_Default = 3,
							INP_MinScale = 0,
							INP_MinAllowed = 0,
							LINKID_DataType = "Number",
							ICS_ControlPage = "Controls",
							LINKS_Name = "Src Subdivision Level"
						},
						DstSubdivisionLevel = {
							INP_MaxAllowed = 5,
							INP_Integer = true,
							INPID_InputControl = "SliderControl",
							IC_Steps = 4,
							INP_MaxScale = 4,
							INP_Default = 3,
							INP_MinScale = 0,
							INP_MinAllowed = 0,
							LINKID_DataType = "Number",
							ICS_ControlPage = "Controls",
							LINKS_Name = "Dst Subdivision Level"
						}
					}
				},
				NormalizeUV = Custom {
					CtrlWShown = false,
					NameSet = true,
					Inputs = {
						LUTIn1 = Input {
							SourceOp = "CustomTool2_2LUTIn1",
							Source = "Value",
						},
						LUTIn2 = Input {
							SourceOp = "CustomTool2_2LUTIn2",
							Source = "Value",
						},
						LUTIn3 = Input {
							SourceOp = "CustomTool2_2LUTIn3",
							Source = "Value",
						},
						LUTIn4 = Input {
							SourceOp = "CustomTool2_2LUTIn4",
							Source = "Value",
						},
						Setup1 = Input { Value = "w/h", },
						RedExpression = Input { Value = "r2-r1", },
						GreenExpression = Input { Value = "(g2-g1)/s1", },
						Image1 = Input {
							SourceOp = "UVMerge",
							Source = "Output",
						},
						Image2 = Input {
							SourceOp = "GridWarp3",
							Source = "Output",
						},
					},
					ViewInfo = OperatorInfo { Pos = { 55, 181.5 } },
				},
				V = Background {
					CtrlWShown = false,
					NameSet = true,
					Inputs = {
						GlobalIn = Input { Value = 1001, },
						GlobalOut = Input { Value = 1206, },
						Width = Input {
							Value = 3200,
							Expression = "Displace1.Input.Width",
						},
						Height = Input {
							Value = 1800,
							Expression = "Displace1.Input.Height",
						},
						Type = Input { Value = FuID { "Vertical" }, },
						TopLeftGreen = Input { Value = 1, },
					},
					ViewInfo = OperatorInfo { Pos = { -55, 115.5 } },
				},
				UVMerge = Merge {
					CtrlWShown = false,
					NameSet = true,
					Inputs = {
						UseOpenCL = Input { Value = 0, },
						Background = Input {
							SourceOp = "U",
							Source = "Output",
						},
						Foreground = Input {
							SourceOp = "V",
							Source = "Output",
						},
						Gain = Input { Value = 0, },
						PerformDepthMerge = Input { Value = 0, },
					},
					ViewInfo = OperatorInfo { Pos = { 55, 115.5 } },
				}
			},
		},
		CustomTool2_2LUTIn1 = LUTBezier {
			KeyColorSplines = {
				[0] = {
					[0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
					[1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
				}
			},
			SplineColor = { Red = 204, Green = 0, Blue = 0 },
			CtrlWShown = false,
		},
		CustomTool2_2LUTIn2 = LUTBezier {
			KeyColorSplines = {
				[0] = {
					[0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
					[1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
				}
			},
			SplineColor = { Red = 0, Green = 204, Blue = 0 },
			CtrlWShown = false,
		},
		CustomTool2_2LUTIn3 = LUTBezier {
			KeyColorSplines = {
				[0] = {
					[0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
					[1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
				}
			},
			SplineColor = { Red = 0, Green = 0, Blue = 204 },
			CtrlWShown = false,
		},
		CustomTool2_2LUTIn4 = LUTBezier {
			KeyColorSplines = {
				[0] = {
					[0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
					[1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
				}
			},
			SplineColor = { Red = 204, Green = 204, Blue = 204 },
			CtrlWShown = false,
		}
	},
	ActiveTool = "MT_WarpPercent"
}

User avatar
JSalvo
Posts: 5
Joined: Tue Aug 14, 2018 9:15 pm

Re: Reduce Grid Warp effect

#5

Post by JSalvo » Tue Apr 09, 2019 5:31 pm

Thanks everyone. These all seem like great leads. Will check this out!