标签:|| cas function metal pac 矩阵 mes ken 邮件
在 上一篇 中使用ComputeShader进行了向量和矩阵的相乘计算,然后在C#代码中通过ComputeBuffer.GetData
方法从GPU中读取计算结果,这个方法是一个同步操作,即调用时会堵塞调用线程,直到GPU返回数据为止,所以在需要读取的数据量很大时会有比较高的耗时,会导致游戏卡顿影响体验。
Google了一番法线有异步的方法可以调用,在Unity2018版本以后增加了AsyncGPUReadback
和AsyncGPUReadbackRequest
类,可以实现异步方式从GPU读取数据,大致逻辑是:
- AsyncGPUReadback.Request 发起一个异步获取数据的请求,返回一个AsyncGPUReadbackRequest对象
- 在Update中每帧检测该异步请求是否完成,完成的话就去该请求对象中获取数据
© 著作权归作者所有
举报
发表评论
0/200