Beispiel #1
0
 public SceneDto ToDto()
 {
     return(new SceneDto
     {
         Id = Id,
         Name = Name,
         UnitOfMeasure = (Models.Uomtype)UnitOfMeasure,
         Units = Units,
         Materials = Materials.Select(x => x.ToDto()).ToList(),
         Cameras = Cameras.Select(x => x.ToDto()).ToList(),
         CurrentCamera = CurrentCamera?.Id,
         Lights = Lights.Select(x => x.ToDto()).ToList(),
         Textures = Textures.Select(x => x.ToDto()).ToList(),
         Meshes = Meshes.Select(x => x.ToDto()).ToList(),
         Skins = Skins.Select(x => x.ToDto()).ToList(),
         Root = Root.ToDto()
     });
 }
Beispiel #2
0
 /// <summary>
 /// Creates array of vertex and index buffers for entire scene.
 /// The number of array entries is equal to number of meshes in scene.
 /// </summary>
 /// <param name="device">Graphics device.</param>
 /// <param name="convert">Convertion function.</param>
 /// <param name="vertexBuffers">Output vertex buffer array.</param>
 /// <param name="indexBuffers">Output index buffer array.</param>
 public void Bake <TVertex> (GraphicsDevice device, Func <MeshVertex, TVertex> convert, out VertexBuffer[] vertexBuffers, out IndexBuffer[] indexBuffers) where TVertex : struct
 {
     vertexBuffers = Meshes.Select(m => m.CreateVertexBuffer <TVertex>(device, convert)).ToArray();
     indexBuffers  = Meshes.Select(m => m.CreateIndexBuffer(device)).ToArray();
 }