zoukankan      html  css  js  c++  java
  • UNITY statistic中的 SetPass和Batches

    U3D文档释义:

    SetPass:The number of rendering passes. Each pass requires Unity runtime to bind a new shader

     which may introduce CPU overhead

    Batches:“Batching” is where the engine attempts to combine the rendering of multiple objects into a chunk of memory in order to reduce CPU overhead due to resources switching.

    引擎底层的绘制过程:

    setpass(0)

    settexture(0, tex)

    settexture(1, tex)

    setshader(shader)

    //绘制第一个模型

    fillmesh(0)

    drawmesh(0)

    //绘制第二个模型

    fillmesh(1)

    drawmesh(1)

    setpass(1)

    settexture(0, tex)

    setshader(shader)

    fillmesh(2)

    drawmesh(2)

    即是说:batches是对模型网格的合批,多个网格的合成一个,减少像模型网格填充到vertexbuffer中的次数,因为每次填充顶点缓存时都要lock,速度慢

    setpass是在绘制前设置材质和状态,一次设置可以多次渲染。

    因此,batches数量 大于等于 setpass数量

  • 相关阅读:
    浅谈Java中的equals和==与hashCode
    数组操作
    python-类
    javascript操控浏览器
    javascript_获取浏览器属性
    javascript_data
    python3_phantomJS_test
    python检测字符串的字母
    python百分比数比较大小
    selenium加载时间过长
  • 原文地址:https://www.cnblogs.com/timeObjserver/p/13159568.html
Copyright © 2011-2022 走看看