Gfx.ProcessCommands包含哪些行为操作

关注1 关注

O

odiecc创建于 5 年前

据我目前的了解该行为是在RenderThread中的,最主要的导致该行为的耗时是DrawCall。
那么除了DrawCall还有那些行为被记录到该过程中呢?
另外这过程耗时统计是否还包括顶点,材质贴图,Shader等从内存到GPU的IO时间呢?
该问题限制在Opengl es2.0/3.0驱动下思考,无需考虑Vulcan/Matel等目前面向多线程的驱动。

UnityRendering & Effects

赞同 0评论 分享

1条回复

ZFK回答于 5 年前

感觉应该是都在里面的。因为,即使是多线程渲染,图形API的调用也需要在同一个线程中。其一,是Android系统的EGLContext一般不是线程独共享的,也就是只有一个线程能向同一个EGLContext里面发送GL指令。其二,如果使用共享的EGLContext,多个线程都能提交图形API,渲染的结果很难保证正确性。比如:如何保证线程A绑定了VBO或者Texture之后,线程B提交DrawCall时一定是它需要的呢。所以,应该都在一个线程里面做的。

赞同 1评论 2 分享

  • O

    odiecc

    是的 像我说的只考虑es2和3 就是为了说明一件事 只有一个渲染线程 但是这些是否都被算进了ProcessCommands我就不太敢肯定了

    5 年前

  • ZFK

    嗯,我也觉得是在里面的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值