public (TransparentModel, Bounds) Construct(Entity entity, Model model) { var transparentModel = new TransparentModel(entity, model); this.Container.Add(transparentModel); BoundaryComputer.ComputeExtremes(model, out var min, out var max); var bounds = new Bounds(entity, min, max); this.Bounds.Add(bounds); return(transparentModel, bounds); }
public Geometry Construct(Entity entity, GBufferVertex[] vertices, int[] indices, Texture2D diffuseMap, PrimitiveType primitiveType = PrimitiveType.TriangleList) { var specularMap = this.GenerateTexture(Color.White, 1, 1); var normalMap = this.GenerateTexture(new Color(0.5f, 0.5f, 1.0f, 1.0f), 1, 1); var reflectionMap = this.GenerateTexture(Color.Black, 1, 1); var mask = this.GenerateTexture(Color.White, 1, 1); var skybox = this.GenerateSkybox(Color.White); var geometry = new Geometry(entity, vertices, indices, diffuseMap, specularMap, normalMap, reflectionMap, mask, skybox, primitiveType); this.Container.Add(geometry); BoundaryComputer.ComputeExtremes(geometry, out var min, out var max); var bounds = new Bounds(entity, min, max); this.Bounds.Add(bounds); return(geometry); }