Sandbox.Bitmap : api/Sandbox.Bitmap
using System.Linq; using Sandbox; public class ModelBlur : Component { /// <summary> /// Mandate that this component is attached to a GameObject with a ModelRenderer. /// If not, one will be created automatically. /// </summary> [RequireComponent] public ModelRenderer ModelRenderer { get; private set; } protected override void OnEnabled() { // Grab the first material from the model renderer var modelMaterial = ModelRenderer.Model.Materials.FirstOrDefault(); if ( modelMaterial is null ) return; // Grab the first texture from the material, apply a blur effect var textureBitmap = modelMaterial.FirstTexture.GetBitmap(0); textureBitmap.Blur(8); // Create a copy of the material and set the blurred texture var clonedMaterial = modelMaterial.CreateCopy(); clonedMaterial.Set( "color", textureBitmap.ToTexture() ); // Apply the cloned material with the blurred texture to the model renderer's MaterialOverride ModelRenderer.MaterialOverride = clonedMaterial; } protected override void OnDisabled() { ModelRenderer.MaterialOverride = null; } }