Graphics Render Optimization

Here are some works great render optimization ideas:

1) Cull the back surface;

2) Use view frustum culling;

3) Less draw call number;

4) Batch those meshes that with the same materials;

5) Use simpler shader, consider carefully lighting in vertex shader or pixel shader;

6) Smaller texture or use mip-maps, hardware supported compression;

7) Use multiple instance instead of draw one mesh several times;

8) Use vertex buffer objects or vertex array;

9) Separate the the dynamic part from the static part when design the vertex attributes data structure, use vertex index and make the array become continues;

10) sort the render state before rendering, mainly the texture;

11) Less rendering pass (or texture stage) will be better;

12) Less pixel overlap shadering. For example, you could render the sky box after all solid objects already rendered;

13) Smaller frame buffer or render target. Use a smaller frame buffer for transparent objects and post-processing if possible.

14) Disable Multiple-Sampling, 如关闭反走样!

15) Disable the Gamma correct;

16) Disable the dynamic shadow;

17) Use light maps instead of the dynamic lighting;

18) Limit the maximum skin character bone number; Or pre-bake the skin animation into vertex animation.

posted @   opencoder  阅读(216)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示