loading请求处理中...
x
当前位置: 首页 > 行业资讯 > 文章详情

如何优化苏州3D建模渲染通道负载 苏州3D建模渲染通道负载的优化方法

发布时间:阅读次数:

  通常,定位苏州3D建模渲染通道瓶颈的方法就是改变渲染通道每个步骤的工作量, 如果吞吐量也改变了, 那个步骤就是瓶颈。找到了瓶颈就要想办法消除瓶颈, 以减少该步骤的工作量, 增加其他步骤的工作量。

如何优化苏州3D建模渲染通道负载  苏州3D建模渲染通道负载的优化方法


  苏州3D建模渲染一般在光栅化之前的瓶颈称作”transform bound”, 三角形设置处理后的瓶颈称作”fill bound”定位瓶颈的办法:
  1.改变帧缓冲或者苏州3D建模渲染目标(Render Target)的颜色深度(16 到 32 位), 如果帧速改变了, 那么瓶颈应该在帧缓冲(RenderTarget)的填充率上。
  2.否则试试改变贴图大小和贴图过滤设置, 如果帧速变了,那么瓶颈应该是在贴图这里。
  3.否则改变分辨率.如果帧速改变了, 那么改变一下pixel shader的指令数量, 如果苏州3D建模渲染帧速变了, 那么瓶颈应该就是pixel shader. 否则瓶颈就在光栅化过程中。
  4.否则, 改变顶点格式的大小, 如果帧速改变了, 那么苏州3D建模渲染瓶颈应该在显卡带宽上。
  5.如果以上都不是, 那么瓶颈就在CPU这一边。
  优化方法36条:
  1.苏州3D建模渲染尽量减少无用的顶点数据, 比如贴图坐标, 如果有Object使用2组有的使用1组, 那么不 要将他们放在一个vertex buffer中, 这样可以减少传输的数据量。
  2.使用多个streamsource, 比如SkinMesh渲染, 苏州3D建模渲染可以把顶点坐标和法线这些每一帧都要修改的数据放在一个动态VB中, 其它不需要修改的(如贴图坐标)放到一个静态VB中, 这样就减少了数据传输量。
  3.苏州3D建模渲染尽量使用16位的索引缓冲,避免32位的. 一方面浪费带宽, 一方面也不是所有的显卡都支持32位的索引缓冲。
  4.可以考虑使用vertex shader来计算静态VB中的数据.比如SkinMesh的顶点可以放到vectex shader中计算, 这样就可以避免每一帧都从AGP内存中向显存传送数据. 这样也可以使用静态VB了。
      一品威客网,新型设计开发 托付式服务平台
  • 发布一个任务,让千万威客为您服务!
立即发布一个需求

创意交易

为什么选择一品威客

千万专业威客商铺
威客实名认证,雇主放心交易
担保交易,满意后付款
赏金托管一品,安全全程保障
无风险,免费发布
所有类型任务,雇主免费发布
无风险,全额退款
零交稿零投标,任务全额退款

快速发布一个任务

让一品千万人才为您分忧解难!
  • 需求标题
  • 需求分类
  • 手机号码
  • 手机验证码