一、为什么用HW取代SW?
1 效率的提高:
CPU和GPU能够并行运行
GPU分担了大部分渲染的开销
CPU可以处理更复杂的物理,AI,特效
更高的帧率
2 品质的提升:
贴图品质的提升,免费获得MipMapping,Binlinear Filtering
更高效的Alpha Blending使很多特效成为可能
更多的Polygon,更复杂的场景
很多SW无法负担的高级特性(虽然理论上SW能实现最好的效果,但由于效率的原因,大多都不能做到RealTime)
渲染采用浮点,避免了定点数带来的精度误差(同时也避免了数据溢出)
二、常见的注意事项?
1 尽量不用CPU读写RenderTarget。不使用OS DrawCall,尽量使用Polygon渲染2D内容。
2 尽可能少的DrawCalls。批量渲染尽可能多的Polygon。
3 避免CPU和GPU等待同步。仔细安排每帧的代码段执行次序。减少渲染状态的切换。
4 尽量使用MipMapping(能提高效率)和Binlinear Filtering(不影响效率)。节约使用Trilinear Filtering。
5 尽可能测试多种实现方式,Benchmark,并选择最佳的结果。
回复Comments
作者:
{commentrecontent}