Designing A Modern Rendering Engine - Design Decisions And Implementation Details by Matthias Bauchinger