
I've been evaluating several engines and libraries to see how far they support me in loading and displaying data stored in another game's proprietary file formats (custom model format, custom texture format) as the goal is to write a simplistic and small level editor for that game.
So far, a lot of engines fail the tests quickly, primarily focussing data fetched from a content pipeline or otherwise converted file formats specific to the engine, which is not an option. Implementing custom formats there seems like a hack ontop of an otherwise unrequired abstraction layer.
It looks like Irrlicht provides more "raw" methods when it comes to implementing custom data formats (like said proprietary ones), and does not annoy with a content pipeline or comparable. Since I'm also focussing to implement code in C#, Irrlicht Lime looks like quite a rare gem in the pile of otherwise overengineered or dead C# engines / libraries.
However, I stumbled upon a small problem. I'm not _exactly_ sure how I'd implement loading the custom model format.
I read that in C++, I should implement my own IMeshLoader, but this interface doesn't exist in Irrlicht Lime, only a concrete MeshLoader class from which I apparently can't inherit.
Another way looked like I should set up an SMeshBuffer instance with the vertices and triangles.
What of the two would be the recommended way?
How would implementing a custom texture format look like? Is it possible to create raw byte array and tell the engine how to interprete pixels out of it?
Thanks for any guidance help in advance.