使用 Intel GPA 与 分析3D程序和抓取模型
原文链接在这里 http://dev.cra0kalo.com/?p=213
背景信息
Intel的GPA本身是一款图形分析软件,并没有设计从3D程序里抓取模型资源的功能,但这里作者是通过hook GPA应用,让他可以把捕捉到的顶点缓冲和索引缓冲。
Intel GPA 64位的下载链接
Intel GPA 32位的下载链接
patch的补丁见附件
http://files.cnblogs.com/TracePlus/FrameAnalyzer.patched.zip
设置和捕捉
安装GPA后,启动Graphics Monitor,浏览你的3D应用,并选择,这里是ce3.6的sdk demo
有些游戏或应用崩溃的话,可以关闭tracing
进入游戏后,可以看到GPA的HUD,按CTRL+F1可以显示全部UI,CTRL+SHIFT+C就可以捕捉当前的frame
这时,即便关闭游戏后,也可以运行Graphics Frame Analyzer,来分析已经捕捉的frame。
或者运行附件里的patched的程序,还可以捕捉模型数据。
找到绘制部分,选择右边Geometry table,就可以看到这个draw call绘制的几何体,找到你想要导出的模型,右键的话,会出现额外一个save geomegry的选项
选择导出格式,就可以保存几何体的信息了,可惜没有UV- -
这个dc使用的贴图也可以在texture table里导出
很可惜,目前这个导出功能并不能导出法线和更多信息。。如果有经验的美术自己重新分UV和绘制贴图了。。
使用GPA来分析游戏的绘制
GPA另外一个用处是可以分析别人游戏的绘制技术,而且截取的frame也方便分析(保存在文档/GPA_2014_XX里)
像一些需要登录器启动的游戏,可以在这里勾选自动检测启动的应用。这里用Blade and Soul的“模拟器”来做个测试,
基本的调试功能,教学关0 0。
还是登陆界面分析起来简单一些
这里就可以定位到绘制角色
这样就定位到绘制角色用draw call上了。接下来可能会具体分析下BNS角色的绘制,谁要是已经有进展了也分享些经验给我吧
使用 Intel GPA 与 分析3D程序和抓取模型的更多相关文章
- 分析Ajax请求并抓取今日头条街拍美图
项目说明 本项目以今日头条为例,通过分析Ajax请求来抓取网页数据. 有些网页请求得到的HTML代码里面并没有我们在浏览器中看到的内容.这是因为这些信息是通过Ajax加载并且通过JavaScript渲 ...
- C#实现通过程序自动抓取远程Web网页信息的代码
http://www.jb51.net/article/9499.htm 通过程序自动的读取其它网站网页显示的信息,类似于爬虫程序.比方说我们有一个系统,要提取BaiDu网站上歌曲搜索排名.分析系统在 ...
- 【Python爬虫程序】抓取MM131美女图片,并将这些图片下载到本地指定文件夹。
一.项目名称 抓取MM131美女写真图片,并将这些图片下载到本地指定文件夹. 共有6种类型的美女图片: 性感美女 清纯美眉 美女校花 性感车模 旗袍美女 明星写真 抓取后的效果图如下,每个图集是一个独 ...
- 分析 ajax 请求并抓取今日头条街拍美图
首先分析街拍图集的网页请求头部: 在 preview 选项卡我们可以找到 json 文件,分析 data 选项,找到我们要找到的图集地址 article_url: 选中其中一张图片,分析 json 请 ...
- 分析 ajax 请求并抓取 “今日头条的街拍图”
今日头条抓取页面: 分析街拍页面的 ajax 请求: 通过在 XHR 中查看内容,获取 url 链接,params 参数信息,将两者进行拼接后取得完整 url 地址.data 中的 article_u ...
- Trickbot增加的远程应用程序凭证抓取功能
来源 https://blog.trendmicro.com/trendlabs-security-intelligence/trickbot-adds-remote-application-cred ...
- 【域控日志分析篇】CVE-2020-1472-微软NetLogon权限提升-执行Exp后域控日志分析与事件ID抓取
前言:漏洞复现篇见:https://www.cnblogs.com/huaflwr/p/13697044.html 本文承接上一篇,简单过滤NetLogon漏洞被利用后,域控上的安全及系统日志上可能需 ...
- python爬虫知识点总结(十)分析Ajax请求并抓取今日头条街拍美图
一.流程框架
- Python爬虫系列-分析Ajax请求并抓取今日头条街拍图片
1.抓取索引页内容 利用requests请求目标站点,得到索引网页HTML代码,返回结果. 2.抓取详情页内容 解析返回结果,得到详情页的链接,并进一步抓取详情页的信息. 3.下载图片与保存数据库 将 ...
随机推荐
- Ubuntu下查看linux版本,内核版本,系统位数,gcc版本
1. 查看linux版本 sunny@ubuntu:~$cat /etc/issueUbuntu 11.04 \n \l 2. 查看内核版本1) sunny@ubuntu:~$ cat /proc/ ...
- netcat nc
http://pan.baidu.com/s/1bo2IH9X#netcat 云盘下载 [root@bass ~]# tar -xjvf netcat-0.7.1.tar.bz2 [root@bass ...
- barrier()函数
转自:http://blog.chinaunix.net/uid-21961753-id-1810628.html 今天看内核发现disable_preempt这个函数,觉得挺有意思就看了下网上资料, ...
- ubuntu下简单的驱动编译
转自:http://www.eefocus.com/jefby1990/blog/13-02/291628_c39b8.html 本文是参考了网上多篇帖子而写的算不上什么原创.唯一值得欣慰的只不过在本 ...
- NVelocity模板引擎的使用
第一种使用方法直接赋值: VelocityEngine vltEngine = new VelocityEngine(); vltEngine.SetProperty(RuntimeConstants ...
- linux tricks 之 container_of.
转载:http://blog.chinaunix.net/uid-20608849-id-3027972.html 由于内核中定义了很多复杂的数据结构,而它们的实例中的成员在作为函数参数传递的时,函数 ...
- 利用jQuery实现CheckBox全选/全不选/反选
转自:http://www.cnblogs.com/linjiqin/p/3148259.html jQuery有些版本中实现CheckBox全选/全不选/反选会有bug,经测试jquery-1.3. ...
- JdbcTemplate主要提供以下五类方法:
execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句: update方法及batchUpdate方法:update方法用于执行新增.修改.删除等语句:batchUpdate方法用于执 ...
- ZOJ2332 Gems(最大流)
题目大概说,alsomagic有宝石,宝石有颜色和形状两个属性:他有一种法力可以将某些颜色形状的宝石转化成另一种颜色形状的宝石:他的女朋友对各个颜色都有一定的容忍数量,而他自己也对各个形状都有一定的容 ...
- ural 1156. Two Rounds
1156. Two Rounds Time limit: 2.0 secondMemory limit: 64 MB There are two rounds in the Urals Champio ...