public static ConcreteSlotValueType ToConcreteSlotValueType(this ConcreteSlotValueTypePopupName popup, out bool isBareResource) { switch (popup) { case ConcreteSlotValueTypePopupName.BareSamplerState: isBareResource = true; return(ConcreteSlotValueType.SamplerState); case ConcreteSlotValueTypePopupName.BareTexture2D: isBareResource = true; return(ConcreteSlotValueType.Texture2D); case ConcreteSlotValueTypePopupName.BareTexture2DArray: isBareResource = true; return(ConcreteSlotValueType.Texture2DArray); case ConcreteSlotValueTypePopupName.BareTexture3D: isBareResource = true; return(ConcreteSlotValueType.Texture3D); case ConcreteSlotValueTypePopupName.BareCubemap: isBareResource = true; return(ConcreteSlotValueType.Cubemap); } ; isBareResource = false; return((ConcreteSlotValueType)popup); }
public static ConcreteSlotValueTypePopupName ToConcreteSlotValueTypePopupName(this ConcreteSlotValueType slotType, bool isBareResource) { ConcreteSlotValueTypePopupName result = (ConcreteSlotValueTypePopupName)slotType; switch (slotType) { case ConcreteSlotValueType.SamplerState: if (isBareResource) { result = ConcreteSlotValueTypePopupName.BareSamplerState; } break; case ConcreteSlotValueType.Texture2D: if (isBareResource) { result = ConcreteSlotValueTypePopupName.BareTexture2D; } break; case ConcreteSlotValueType.Texture2DArray: if (isBareResource) { result = ConcreteSlotValueTypePopupName.BareTexture2DArray; } break; case ConcreteSlotValueType.Texture3D: if (isBareResource) { result = ConcreteSlotValueTypePopupName.BareTexture3D; } break; case ConcreteSlotValueType.Cubemap: if (isBareResource) { result = ConcreteSlotValueTypePopupName.BareCubemap; } break; } return(result); }
public static bool AllowedAsSubgraphOutput(this ConcreteSlotValueTypePopupName type) { // virtual textures and bare types disallowed return(type < ConcreteSlotValueTypePopupName.VirtualTexture); }