// material changed check
        public void MaterialChanged(Material material)
        {
            if (material == null)
            {
                throw new ArgumentNullException("material");
            }

            // PSXMaterialUtils.SetMaterialKeywords(material);

            // Clear all keywords for fresh start
            PSXMaterialUtils.ClearMaterialKeywords(material);

            PSXMaterialUtils.SetupMaterialLightingModeNoVertexColorSupported(material);
            PSXMaterialUtils.SetupMaterialShadingEvaluationMode(material);
            // PSXMaterialUtils.SetupMaterialBlendMode(material);
            PSXMaterialUtils.SetupMaterialFogKeyword(material);
            // PSXMaterialUtils.SetupMaterialReflectionKeyword(material);
            // PSXMaterialUtils.SetupMaterialEmissionKeyword(material);
        }