Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
 public static bool AllowedAsSubgraphOutput(this ConcreteSlotValueTypePopupName type)
 {
     // virtual textures and bare types disallowed
     return(type < ConcreteSlotValueTypePopupName.VirtualTexture);
 }