/// <summary>
        /// Set attribute-based modifiers such as tag, layer, and scripts on
        /// the part outputs.
        /// </summary>
        /// <param name="session"></param>
        public void SetAttributeModifiersOnPartOutputs(HEU_SessionBase session)
        {
            int numParts = _parts.Count;

            for (int i = 0; i < numParts; ++i)
            {
                HEU_GeneralUtility.AssignUnityTag(session, GeoID, _parts[i].PartID, _parts[i].OutputGameObject);
                HEU_GeneralUtility.AssignUnityLayer(session, GeoID, _parts[i].PartID, _parts[i].OutputGameObject);
                HEU_GeneralUtility.MakeStaticIfHasAttribute(session, GeoID, _parts[i].PartID, _parts[i].OutputGameObject);
            }
        }
 private void ApplyAttributeModifiersOnGameObjectOutput(HEU_SessionBase session, HAPI_NodeId geoID, HAPI_PartId partId, ref GameObject go)
 {
     HEU_GeneralUtility.AssignUnityTag(session, geoID, partId, go);
     HEU_GeneralUtility.AssignUnityLayer(session, geoID, partId, go);
     HEU_GeneralUtility.MakeStaticIfHasAttribute(session, geoID, partId, go);
 }