3 using System.Runtime.CompilerServices;
5 using UnityEngine.Experimental.VFX;
6 using Object = UnityEngine.Object;
8 namespace UnityEditor.VFX
10 class VFXTexture2DValue : VFXValue<Texture>
12 public VFXTexture2DValue(Texture content = null, Mode mode = Mode.FoldableVariable) : base(content, mode)
16 sealed protected override int[] additionnalOperands
20 return new int[] { (int)VFXValueType.Texture2D };
24 sealed public override VFXValue CopyExpression(Mode mode)
26 var copy = new VFXTexture2DValue(Get(), mode);
31 class VFXTexture3DValue : VFXValue<Texture>
33 public VFXTexture3DValue(Texture content = null, Mode mode = Mode.FoldableVariable) : base(content, mode)
37 sealed protected override int[] additionnalOperands
41 return new int[] { (int)VFXValueType.Texture3D };
45 sealed public override VFXValue CopyExpression(Mode mode)
47 var copy = new VFXTexture3DValue(Get(), mode);
52 class VFXTextureCubeValue : VFXValue<Texture>
54 public VFXTextureCubeValue(Texture content = null, Mode mode = Mode.FoldableVariable) : base(content, mode)
58 sealed protected override int[] additionnalOperands
62 return new int[] { (int)VFXValueType.TextureCube };
66 sealed public override VFXValue CopyExpression(Mode mode)
68 var copy = new VFXTextureCubeValue(Get(), mode);
73 class VFXTexture2DArrayValue : VFXValue<Texture>
75 public VFXTexture2DArrayValue(Texture content = null, Mode mode = Mode.FoldableVariable) : base(content, mode)
79 sealed protected override int[] additionnalOperands
83 return new int[] { (int)VFXValueType.Texture2DArray };
87 sealed public override VFXValue CopyExpression(Mode mode)
89 var copy = new VFXTexture2DArrayValue(Get(), mode);
94 class VFXTextureCubeArrayValue : VFXValue<Texture>
96 public VFXTextureCubeArrayValue(Texture content = null, Mode mode = Mode.FoldableVariable) : base(content, mode)
100 sealed protected override int[] additionnalOperands
104 return new int[] { (int)VFXValueType.TextureCubeArray };
108 sealed public override VFXValue CopyExpression(Mode mode)
110 var copy = new VFXTextureCubeArrayValue(Get(), mode);