// Filter overrides
        public virtual void setProperty(Property p)
        {
            if (p.getName() == "optimize")
                setOptimize(p.getBoolValue(getOptimize()));
            else if (p.getName() == "cull_backfaces")
                setCullBackfaces(p.getBoolValue(getCullBackfaces()));
            else if (p.getName() == "apply_cluster_culling")
                setApplyClusterCulling(p.getBoolValue(getApplyClusterCulling()));
            else if (p.getName() == "disable_lighting")
                setDisableLighting(p.getBoolValue(getDisableLighting()));
            else if (p.getName() == "line_width")
                setLineWidth(p.getFloatValue(getLineWidth()));
            else if (p.getName() == "point_size")
                setPointSize(p.getFloatValue(getPointSize()));
            else if (p.getName() == "raster_overlay")
                setRasterOverlayScript(new Script(p.getValue()));
            else if (p.getName() == "raster_overlay_max_size")
                setRasterOverlayMaxSize(p.getIntValue(getRasterOverlayMaxSize()));
            else if (p.getName() == "embed_attributes")
                setEmbedAttributes(p.getBoolValue(getEmbedAttributes()));
            else if (p.getName() == "alpha_blending")
                setAlphaBlending(p.getBoolValue(getAlphaBlending()));

            base.setProperty(p);
        }