Original Post
Hello, We are developing a new game engine and I wanted to get your view on ways to integrate middleware in an engine.. For example using a physics engine like PhysX, or a sound library like FMOD etc. The way I think about it is that there should be an abstraction layer that sits between the client and the respective middleware and basically works like an adaptor.. This way you have the option to change your physics engine for example, without many changes in your code... But there are a few drawbacks with this like performance drop due to extra indirections and also it would be a lot of work to provide abstractions for everything that a physics engine would do.. However it is probably less work than trying to create your own... What do you think?