public async void SetPrimitive(MaterialPreviewPrimitive primitive) { if (previewPrimitive != primitive) { previewPrimitive = primitive; await Update(); } }
internal static ProceduralModelDescriptor CreatePrimitiveModel(MaterialPreviewPrimitive primitive) { switch (primitive) { case MaterialPreviewPrimitive.Sphere: return(new ProceduralModelDescriptor { Type = new SphereProceduralModel() }); case MaterialPreviewPrimitive.Cube: return(new ProceduralModelDescriptor { Type = new CubeProceduralModel() }); case MaterialPreviewPrimitive.Cylinder: return(new ProceduralModelDescriptor { Type = new CylinderProceduralModel() }); case MaterialPreviewPrimitive.Torus: return(new ProceduralModelDescriptor { Type = new TorusProceduralModel() }); case MaterialPreviewPrimitive.Plane: return(new ProceduralModelDescriptor { Type = new PlaneProceduralModel { GenerateBackFace = true, Normal = NormalDirection.UpZ } }); case MaterialPreviewPrimitive.Teapot: return(new ProceduralModelDescriptor { Type = new TeapotProceduralModel() }); case MaterialPreviewPrimitive.Cone: return(new ProceduralModelDescriptor { Type = new ConeProceduralModel() }); case MaterialPreviewPrimitive.Capsule: return(new ProceduralModelDescriptor { Type = new CapsuleProceduralModel() }); default: throw new ArgumentOutOfRangeException(nameof(primitive)); } }
private void SetPrimitive(MaterialPreviewPrimitive primitive) { materialPreview.SetPrimitive(primitive); }