AssetBundleGraph.NodeData.AddVariant C# (CSharp) Method

AddVariant() public method

public AddVariant ( string name ) : void
name string
return void
        public void AddVariant(string name)
        {
            ValidateAccess(
                NodeKind.BUNDLECONFIG_GUI
            );

            var point = new ConnectionPointData(name, this, true);
            m_inputPoints.Add(point);
            var newEntry = new Variant(name, point);
            m_variants.Add(newEntry);
        }

Usage Example

        /**
         * Duplicate this node with new guid.
         */
        public NodeData Duplicate()
        {
            var newData = new NodeData(m_name, m_kind, m_x, m_y);

            switch (m_kind)
            {
            case NodeKind.IMPORTSETTING_GUI:
                break;

            case NodeKind.PREFABBUILDER_GUI:
            case NodeKind.MODIFIER_GUI:
                newData.m_scriptClassName    = m_scriptClassName;
                newData.m_scriptInstanceData = new SerializableMultiTargetString(m_scriptInstanceData);
                break;

            case NodeKind.FILTER_GUI:
                foreach (var f in m_filter)
                {
                    newData.AddFilterCondition(f.FilterKeyword, f.FilterKeytype);
                }
                break;

            case NodeKind.LOADER_GUI:
                newData.m_loaderLoadPath = new SerializableMultiTargetString(m_loaderLoadPath);
                break;

            case NodeKind.GROUPING_GUI:
                newData.m_groupingKeyword = new SerializableMultiTargetString(m_groupingKeyword);
                break;

            case NodeKind.BUNDLECONFIG_GUI:
                newData.m_bundleConfigBundleNameTemplate = new SerializableMultiTargetString(m_bundleConfigBundleNameTemplate);
                newData.m_bundleConfigUseGroupAsVariants = m_bundleConfigUseGroupAsVariants;
                foreach (var v in m_variants)
                {
                    newData.AddVariant(v.Name);
                }
                break;

            case NodeKind.BUNDLEBUILDER_GUI:
                newData.m_bundleBuilderEnabledBundleOptions = new SerializableMultiTargetInt(m_bundleBuilderEnabledBundleOptions);
                break;

            case NodeKind.EXPORTER_GUI:
                newData.m_exporterExportPath   = new SerializableMultiTargetString(m_exporterExportPath);
                newData.m_exporterExportOption = new SerializableMultiTargetInt(m_exporterExportOption);
                break;

            default:
                throw new AssetBundleGraphException("[FATAL]Unhandled nodekind. unimplmented:" + m_kind);
            }

            return(newData);
        }
All Usage Examples Of AssetBundleGraph.NodeData::AddVariant