使用Fraps获取3D程序的FPS
Fraps为免费软件(wiki),通过Hook OpenGL(SwapBuffer)或D3D(Present)来获取目标进程的FPS信息(32位进程注入fraps32.dll,64位注入fraps64.dll),并能进行截图和视频录制。
当前最新版本为3.5.99,最高支持D3D11。通过付费升级,除了截取BMP之外,可截取JPG, PNG和TGA格式图片,且录制的视频不会有水印。
Fraps属于动态挂钩,当进程切到当前窗口,Fraps会自动挂钩到进程上;修改Fraps设置信息会立即生效(注:不用重启游戏或Fraps)。
FPS数值显示与隐藏
通过按F12,来切换FPS数值在游戏界面上的显示位置与隐藏: 左上 -- 右上 -- 左下 -- 右下 -- 隐藏
注:勾选“Only update overlay once a second”,则FPS数值会1秒刷新一次
BenchMark:获取一段时间的运行帧数、时长、FPS平均值、FPS最大值、FPS最小值
① 通过按F11来开始记录,再按F11来结束记录(也可以通过定时的方式来结束:勾选“Stop benchmark after xx seconds”)
a. 若显示出了FPS数值:开始记录时FPS数值的背景色为绿,随即FPS数值会消失,进入记录状态。
再按F11时,FPS数值会又显示出来,背景色为红,字体颜色由白变黄,并根据BenchMark选项来写文件到“Folder to save benchmarks in”所设置的目录中,结束该时间段数据的采集。
b. 若没有显示出FPS数值:只是在UI上没有明显地提示,功能会正常运行,结束后会根据BenchMark选项来写文件到“Folder to save benchmarks in”所设置的目录中。
② “Folder to save benchmarks in”所设置的目录存在,即使没有勾选任何BenchMark选项,结束记录时也会将MinMaxAvg记录添加到FRAPSLOG.TXT中
注1:目录不存在,且没有有勾选任何BenchMark选项,则不会有任何文件记录
注2:只要勾选了BenchMark选项,目录不存在时会创建该目录,并将MinMaxAvg记录添加到FRAPSLOG.TXT中
③ 勾选“FPS”,结束记录时生成形如:“进程名 YYYY-MM-DD hh-mm-ss-ms fps.csv”文件
注:FPS的采集时间间隔为1s
④ 勾选“Frametimes”,结束记录时生成形如:“进程名 YYYY-MM-DD hh-mm-ss-ms frametimes.csv”文件
注:记录每帧起始的时间信息,单位为ms
⑤ 勾选“MinMaxAvg”,结束记录时生成形如:“进程名 YYYY-MM-DD hh-mm-ss-ms minmaxavg.csv”文件
转载于:https://www.cnblogs.com/kekec/p/7766747.html
使用Fraps获取3D程序的FPS相关推荐
- Unity三维游戏开发C#编程大师班 Masterclass In C# Programing Unity 3D Game Development FPS
本课程采用现代游戏开发(Unity 2021)的最新内容和最新技术 学习任何东西的最好方法是以一种真正有趣的方式去做,这就是这门课程的来源.如果你想了解你看到的这些不可思议的游戏是如何制作的,没有比这 ...
- c#获取应用程序目录
string str1 =Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名. string str2=Enviro ...
- HTMD | 从PDB文件获取3D特征描述符
KDEEP是使用深度学习(CNN)进行亲和力预测的预测器. 关于这篇文章,我发现了一个新的名为HTMD(高通分子动力学)的python库. 我真的不擅长从头算或MD计算等计算领域. 因此,我无法评估该 ...
- Winform获取应用程序的当前路径的方法集合,具体如下,值得收藏
Winform获取应用程序的当前路径的方法集合,具体如下,值得收藏//获取当前进程的完整路径,包含文件名(进程名). string str = this.GetType().Assembly.Loca ...
- 获取应用程序文件夹路径的最佳方法
我看到有一些方法可以获取应用程序文件夹路径: Application.StartupPath System.IO.Path.GetDirectoryName( System.Reflection.As ...
- 企业内网中的WSUS更新服务 服务器连接到Microsoft Update来获取更新程序
这里我们先了解下WSUS更新的途径 1.单WSUS服务器环境 企业网络中部署了一台WSUS服务器,WSUS服务器连接到Microsoft Update来获取更新程序(称之为:同步),并分发给企业网络中 ...
- C#获取当前程序运行路径的方法集合
//获取当前进程的完整路径,包含文件名(进程名). string str = this.GetType().Assembly.Location; result: X:\xxx\xxx\xxx.exe ...
- 小程序获取input 的value_[小发现] 现在可以获取任意小程序的小程序码了!
今天在小程序后台发现了一个新功能. 具体操作如下: 点击[工具].[生成小程序码] 然后输入小程序的 AppId (这里可以输入任意小程序的 appid 了!) 点击搜索 下一步,输入小程序的页面路径 ...
- 《Unity 3D 游戏开发技术详解与典型案例》——1.3节第一个Unity 3D程序
本节书摘来自异步社区<Unity 3D 游戏开发技术详解与典型案例>一书中的第1章,第1.3节第一个Unity 3D程序,作者 吴亚峰 , 于复兴,更多章节内容可以访问云栖社区" ...
最新文章
- C#3.0 为我们带来什么(2) —— 自动属性
- 技术解析系列 PouchContainer Goroutine Leak 检测实践
- 三维列表转换成数组时,维度却只有二维
- SpringMVC的请求-文件上传-客户端表单实现
- 贴花纸怎么贴_电子便签贴怎么使用?怎么在电脑上贴便签
- Depth-first Search深度优先搜索专题6
- java mac postgresql_PostgreSQL 的安装与使用 for mac
- android 数据库模糊查询语句_单表千万行数据库:LIKE 搜索优化手记
- 大数据技术周报第 004 期
- 软件工程第二次作业(原型设计)
- php下memcache结合数据库
- protobuf java linux_linux下安装protobuf及其使用
- 让 Windows 的 R 用上 CUDA
- CCS12.0 安装并设置中文
- 测试抑郁症软件,App Store 上的“抑郁症测试 - 心理测试”
- FFmpegFFplay常用命令汇总
- 权威DNS、递归DNS以及DNS相关排名
- golang报错fatal error: all goroutines are asleep - deadlock
- redis数据类型命令
- 计算机故障图片,电脑提示损坏的图像该如何处理?
热门文章
- 【数据结构和算法】广度优先BFS遍历图(树的层序遍历的拓展)
- matlab仿真弹簧波,基于Matlab/Simulink的三弹簧谐振子微振动的仿真实验
- vscode设置templates_Vscode中快速创建自定义代码模板的方法
- 从客户端中(...)检测到有潜在危险的 Request.Form值
- layer右下脚弹窗
- 2020 年百度之星·程序设计大赛 - 复赛 1002 Binary Addition
- VisualStudio中C++程序输出一闪而过的解决方案
- 计算机网络八校联考试题,2019届高三信息技术3月联考试卷有解析与答案
- onenote打开闪退平板_爆款教学小帮手——OneNote篇
- PAT—1082 射击比赛(20)