Xcode External Build System 失败的 Capture GPU Frame 经历

栏目: IOS · 发布时间: 7年前

内容简介:文档列表见:根据kvark指导,用Xcode创建External Build System项目可通过Capture GPU Frame抓取如果谁测试正常,工程打包发我并请加我微信(资料上写了),发你红包表示感谢。

文档列表见: Rust 移动端跨平台复杂图形渲染项目开发系列总结(目录)

根据kvark指导,用Xcode创建External Build System项目可通过Capture GPU Frame抓取 gfx-hal 的examples项目,这很方便开发gfx。但是,折腾一番,我在3台mac上一执行就崩溃。劉子殊兄弟在他本地测试也崩溃。

如果谁测试正常,工程打包发我并请加我微信(资料上写了),发你红包表示感谢。

2015年用External Build System项目单步调试FFmpeg源码,很顺利。我觉得 可能是工程配置出错了 。终端直接运行gfx/examples/quad是正常的。

几个替代方案:

  • Rust暴露C接口接入macOS项目。给gfx/examples填写FFI接口,让C/C++调用Rust实现的功能。在绘制过程中正常使用Capture GPU Frame。
  • 利用Metal MTLCommandBuffer addCompletedHandler接口添加执行完成的日志。缺点是,只能验证MTLCommandBuffer确实被GPU执行完,没法查看渲染结果。用Compute Shader做数值计算场合用这个方案倒是可以接受。
  • 类似上一方案,不输出日志,改为读取MTLCommandBuffer目标纹理的像素值,通过CIImage生成图像,通过Xcode插件进行查看。缺点,在线调试Shader没Capture GPU Frame方便。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入浅出强化学习:原理入门

深入浅出强化学习:原理入门

郭宪、方勇纯 / 电子工业出版社 / 2018-1 / 79

《深入浅出强化学习:原理入门》用通俗易懂的语言深入浅出地介绍了强化学习的基本原理,覆盖了传统的强化学习基本方法和当前炙手可热的深度强化学习方法。开篇从最基本的马尔科夫决策过程入手,将强化学习问题纳入到严谨的数学框架中,接着阐述了解决此类问题最基本的方法——动态规划方法,并从中总结出解决强化学习问题的基本思路:交互迭代策略评估和策略改善。基于这个思路,分别介绍了基于值函数的强化学习方法和基于直接策略......一起来看看 《深入浅出强化学习:原理入门》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换