Esempio n. 1
0
        public static TweenerCore <Color, Color, ColorOptions> DOFade(this SerializedPass target, int propertyId, float endValue, float duration)
        {
            var tweener = DOTween.ToAlpha(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration);

            tweener.SetOptions(true).SetTarget(target);
            return(tweener);
        }
Esempio n. 2
0
        public static TweenerCore <Vector4, Vector4, VectorOptions> DOVector(this SerializedPass target, int propertyId, Vector4 endValue, float duration)
        {
            var tweener = DOTween.To(() => target.GetVector(propertyId), x => target.SetVector(propertyId, x), endValue, duration);

            tweener.SetOptions(false).SetTarget(target);
            return(tweener);
        }
Esempio n. 3
0
        public static TweenerCore <Color, Color, ColorOptions> DOColor(this SerializedPass target, string propertyName, Color endValue, float duration)
        {
            var tweener = DOTween.To(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration);

            tweener.SetOptions(false).SetTarget(target);
            return(tweener);
        }
Esempio n. 4
0
        public static TweenerCore <float, float, FloatOptions> DOFloat(this SerializedPass target, string propertyName, float endValue, float duration)
        {
            var tweener = DOTween.To(() => target.GetFloat(propertyName), x => target.SetFloat(propertyName, x), endValue, duration);

            tweener.SetOptions(true).SetTarget(target);
            return(tweener);
        }
        public override void Export(ShaderWriter writer, ref ShaderSubProgram subProgram)
        {
            using (MemoryStream ms = new MemoryStream(subProgram.ProgramData))
            {
                using (BinaryReader reader = new BinaryReader(ms))
                {
                    int requirements = reader.ReadInt32();
                    int minOffset    = subProgram.ProgramData.Length;
                    int snippetCount = SerializedPass.HasProgRayTracing(writer.Version) ? 6 : 5;
                    for (int i = 0; i < snippetCount; i++)
                    {
#warning TEMP: HACK: pull/591
                        if (reader.BaseStream.Position >= minOffset)
                        {
                            break;
                        }

                        int offset = reader.ReadInt32();
                        int size   = reader.ReadInt32();
                        if (size > 0)
                        {
                            if (offset < minOffset)
                            {
                                minOffset = offset;
                            }
                            ExportSnippet(writer, ms, offset, size);
                        }
                    }
                }
            }
        }
Esempio n. 6
0
        void ExportSerializedPass(SerializedPass pass, ShaderWriter writer)
        {
            writer.WriteIndent(2);
            writer.Write("{0} ", pass.Type.ToString());

            if (pass.Type == SerializedPassType.UsePass)
            {
                writer.Write("\"{0}\"\n", pass.UseName);
            }
            else
            {
                writer.Write("{\n");

                if (pass.Type == SerializedPassType.GrabPass)
                {
                    if (pass.TextureName != string.Empty)
                    {
                        writer.WriteIndent(3);
                        writer.Write("\"{0}\"\n", pass.TextureName);
                    }
                }
                else if (pass.Type == SerializedPassType.Pass)
                {
                    pass.State.Export(writer);

                    ExportSerializedProgram(pass.ProgVertex, writer, ShaderType.Vertex);
                    ExportSerializedProgram(pass.ProgFragment, writer, ShaderType.Fragment);
                    ExportSerializedProgram(pass.ProgGeometry, writer, ShaderType.Geometry);
                    ExportSerializedProgram(pass.ProgHull, writer, ShaderType.Hull);
                    ExportSerializedProgram(pass.ProgDomain, writer, ShaderType.Domain);

#warning ProgramMask?
#warning HasInstancingVariant?
                }
                else
                {
                    throw new NotSupportedException($"Unsupported pass type {pass.Type}");
                }

                writer.WriteIndent(2);
                writer.Write("}\n");
            }
        }
Esempio n. 7
0
 public override void Export(ShaderWriter writer, ref ShaderSubProgram subProgram)
 {
     using (MemoryStream ms = new MemoryStream(subProgram.ProgramData))
     {
         using (BinaryReader reader = new BinaryReader(ms))
         {
             int requirements = reader.ReadInt32();
             int snippetCount = SerializedPass.HasProgRayTracing(writer.Version) ? 6 : 5;
             for (int i = 0; i < snippetCount; i++)
             {
                 int offset = reader.ReadInt32();
                 int size   = reader.ReadInt32();
                 if (size > 0)
                 {
                     ExportSnippet(writer, ms, offset, size);
                 }
             }
         }
     }
 }
Esempio n. 8
0
 public static int DOKill(this SerializedPass target, bool complete)
 {
     return(DOTween.Kill(target, complete));
 }