06-11-2021, 12:34 PM
Assimp object model supports per vertex colors (Assimp.Mesh object defines the VertexColorChannels and VertexColorChannelsCount properties). But because Ab3d.PowerToys.Assimp library works only with WPF 3D objects, you cannot save DXEngine objects into Assimp objects.
But the source of the Ab3d.PowerToys.Assimp library is available on https://github.com/ab4d/Ab3d.PowerToys.Assimp. So you could change the AssimpWpfExporter to also set the VertexColorChannels.
But Assimp object model does not support mesh instancing, so you will not be able to export that in an efficient way - as stated in the post that you mentioned, you would need to convert the instanced meshes into individual models.
But you may use the wpf3d file format. The source code for that file format is part of the Ab3d.PowerToys.Samples project (in Wpf3DFile folder). You could extend the file format to add support for saving and loading objects with per-vertex colors and for objects with instancing. This would require some work but would be the most efficient way of storing data. You may even change the extension from .wpf3d to any other extension that you want.
But the source of the Ab3d.PowerToys.Assimp library is available on https://github.com/ab4d/Ab3d.PowerToys.Assimp. So you could change the AssimpWpfExporter to also set the VertexColorChannels.
But Assimp object model does not support mesh instancing, so you will not be able to export that in an efficient way - as stated in the post that you mentioned, you would need to convert the instanced meshes into individual models.
But you may use the wpf3d file format. The source code for that file format is part of the Ab3d.PowerToys.Samples project (in Wpf3DFile folder). You could extend the file format to add support for saving and loading objects with per-vertex colors and for objects with instancing. This would require some work but would be the most efficient way of storing data. You may even change the extension from .wpf3d to any other extension that you want.
Andrej Benedik

