Esempio n. 1
0
        public CGfxEffectDesc CloneEffectDesc()
        {
            CGfxEffectDesc result = new CGfxEffectDesc();

            result.MtlShaderPatch      = MtlShaderPatch;
            result.MdfQueueShaderPatch = MdfQueueShaderPatch.CloneMdfQueue(CEngine.Instance.RenderContext, null);
            result.EnvShaderPatch      = EnvShaderPatch.CloneEnvShaderCode();
            result.UpdateHash64(true);
            return(result);
        }
Esempio n. 2
0
        internal void UpdateHash64(bool UpdateMacro)
        {
            if (UpdateMacro)
            {
                UpdateMacroArray();
            }

            String = "";
            if (MtlShaderPatch != null)
            {
                String += MtlShaderPatch.ToString();
            }
            if (MdfQueueShaderPatch != null)
            {
                String += MdfQueueShaderPatch.ToString();
            }
            if (ShaderMacros != null)
            {
                String += ShaderMacros.ToString();
            }
            String += EnvShaderPatch.ToString();

            Hash64.CalcHash64(ref NameHash, String);
        }