Principle 2: Be efficient
What does efficiency mean for high performance rendering? By this point in the development cycle, you should have already applied effective optimization to ensure that only useful work is sent to the GPU.
It is now time to focus on optimizing the remaining workload that contributes to the final render.
These optimizations can include activities such as:
- Ensuring API usage is efficient, with minimal state changes.
- Checking models are well structured, with good locality, and minimal precision in data buffers.
- Ensuring textures are using appropriate data formats, texture compression, and filtering modes.
- Reviewing shader programs and their execution cost.