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

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

查看所有标签

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

学习JavaScript数据结构与算法

学习JavaScript数据结构与算法

[巴西] 格罗纳(Loiane Groner) / 孙晓博、邓钢、吴双、陈迪、袁源 / 人民邮电出版社 / 2015-10-1 / 39.00

本书首先介绍了JavaScript语言的基础知识,接下来讨论了数组、栈、队列、链表、集合、字典、散列表、树、图等数据结构,之后探讨了各种排序和搜索算法,包括冒泡排序、选择排序、插入排序、归并排序、快速排序、顺序搜索、二分搜索,还介绍了动态规划和贪心算法等常用的高级算法及相关知识。一起来看看 《学习JavaScript数据结构与算法》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

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

HEX CMYK 互转工具