private static void CollectExposedDesc(List <VFXMapping> outExposedParameters, string name, VFXSlot slot, VFXExpressionGraph graph) { var expression = slot.valueType != VFXValueType.None ? slot.GetInExpression() : null; if (expression != null) { var exprIndex = graph.GetFlattenedIndex(expression); if (exprIndex == -1) { throw new InvalidOperationException("Unable to retrieve value from exposed for " + name); } outExposedParameters.Add(new VFXMapping() { name = name, index = exprIndex }); } else { foreach (var child in slot.children) { CollectExposedDesc(outExposedParameters, name + "_" + child.name, child, graph); } } }
private static void CollectExposedExpression(List <VFXExpression> expressions, VFXSlot slot) { var expression = slot.valueType != VFXValueType.None ? slot.GetInExpression() : null; if (expression != null) { expressions.Add(expression); } else { foreach (var child in slot.children) { CollectExposedExpression(expressions, child); } } }