iOS Xcode 调试OpenGL shader 步骤详解
来源:互联网 发布:淘宝刷手会受什么处罚 编辑:程序博客网 时间:2024/06/05 05:25
iOS Xcode 调试OpenGL shader 步骤详解
注意Apple的官方文档详细的描述了要使用GPU Frame Capture功能,必须使用EAGLContext作为上下文,而且要使用CAEAGLLayer或者GLKView,同时还要保证使用定时器等,去循环调用
[_context presentRenderbuffer:GL_RENDERBUFFER];//方法
否则不能使用GPU Frame Capture功能。
当不能使用GPU Frame Capture功能时,此按钮是灰色不可点击状态
下面介绍调试步骤:
首先设置 Options里面的GPU Frame Capture为 OpenGL ES默认为Automatically Enabled默认设置其实也可以调试,但是此处为了过程更符合OpenGL ES的流程,此处设置为OpenGL ES。
然后运行程序
运行过程中点击Capture按钮 捕获一帧OpenGL ES数据。捕获过程较慢。
捕获完毕之后:
但是到目前并不能看到shader的内容,已经shader内的变量的值,调试shader变量的值才是我们的目的。
在选择All GPU Objects -> All 之后 调试shader的 界面就出现了 调试OpenGL ES shader的界面为:
此处如果想一边查看frameBuffer一边调试OpenGL ES shader可以这样操作:
界面变为:
下面打开frameBuffer界面:
点击后我们想要的界面就出现了 一边为frameBuffer界面一边为调试OpenGL ES shader的界面
下面查看OpenGL ES在渲染此帧时 shader内的各个变量值是多少
此处以查看shader的变量的值为示例,双击Vertex Array Objective #0
shader 内的变量的值为:
使用的shader为:
异常为:
此异常是为了测试调试信息故意这样写的,去掉此处的异常只需要将GLfloat jeffasdColors[]改为:
//GLfloat jeffasdColors[] = { 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f };
至于原因估计属性OpenGL ES的都清除此处不再解释。
- iOS Xcode 调试OpenGL shader 步骤详解
- OpenGL中使用Shader的基本步骤
- ios之XCode调试,程序崩溃问题详解
- ios之XCode调试,程序崩溃问题详解
- IOS:xcode调试技巧
- iOS --Xcode 调试技术
- iOS Xcode LLDB 调试
- XCode iOS调试总结
- 详解Xcode调试异常
- iOS OpenGL shader 语句字符串化
- iOS - Xcode 语言国际化步骤
- OpenGL Shader
- opengl shader
- opengl shader
- iphone 刷固件,越狱,xcode调试相关步骤
- iOS断点调试(xcode )
- 【IOS】xcode调试命令收集
- 漫步IOS--Xcode断点调试
- oracle--1.概述
- Understanding Oracle APEX 5 Application Development, 2nd Edition.pdf 英文原版 免费下载
- NodeJs的应用场景及实践
- 优化sql
- Fragment生命周期
- iOS Xcode 调试OpenGL shader 步骤详解
- Java连Mongodb出错的问题
- LeetCode.176 Second Highest Salary (Limit偏移量运用)
- LeetCode 173. Binary Search Tree Iterator
- 17.12.06,web学习第二十天,还有一年,努力吧青年商城增删改查记忆
- Learning Boost C++ Libraries.pdf 英文原版 免费下载
- 51nod1299 监狱逃离 最小割
- POJ 刷题系列:3299. Humidex
- Unity3d开发MOBA游戏类《王者荣耀》记录(一)