Abstraction in game engines

Started by
19 comments, last by bzroom 14 years, 10 months ago
The reasons for abstracting may be many, but the most important one is to reduce the usage complexity of the code such as rendering. You abstract away the vertex buffer, frame buffer, loading, shaders, and all this code so that the user is not bothered with the details and can efficiently develop at a high level.

As long as the user uses these high level objects their interface is "guaranteed" to be the same regardless of the under-lieing implementation. If you needed to switch to d3d11 and all you did was support the your existing feature set, this would take place below the abstraction layer and all the user code would remain the same.

It's only when you want to take advantage of new features will your abstraction interface change.

This topic is closed to new replies.

Advertisement