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方便。

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

查看所有标签

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

Linux内核完全剖析

Linux内核完全剖析

赵炯 / 机械工业出版社 / 2008.10 / 99.00元

本书对早期Linux内核(v0.12)全部代码文件进行了详细、全面的注释和说明,旨在帮助读者用较短的时间对Linux的工作机理获得全面而深刻的理解,为进一步学习和研究Linux打下坚实的基础。虽然选择的版本较低,但该内核已能够正常编译运行,并且其中已包括了Linux工作原理的精髓。书中首先以Linux源代码版本的变迁为主线,介绍了Linux的历史,同时着重说明了各个内核版本的主要区别和改进,给出了......一起来看看 《Linux内核完全剖析》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具