摘要:抓取MemoryGraph 在Xcode中配置游戏的Scheme来开启Malloc Stack Logging 注1:如果不开启Malloc Stack Logging,在对某个地址执行malloc_history命令获取堆栈时,会报如下错误 The target process has no st
阅读全文
摘要:Rider诞生于2016年,是JetBrains旗下一款非常年轻的跨平台IDE(Windows、MacOS和Linux)。目前支持.NET开发(C#)、Unity(C#) 和 Unreal Engine(C++)游戏开发。 相比VS+VA,Rider符号的解析速度和搜索非常快,提示和跳转十分准确。不
阅读全文
摘要:AGDE(Android Game Development Enironment,安卓游戏开发环境)是一款VS插件,用于在VS中进行Android平台的C++ Native代码构建、部署、调试和性能分析。可以从这里下载。Release Note详见这里。 ① 使用MSBuild构建(支持Incred
阅读全文
摘要:PhysX在编译时必须开启PX_SUPPORT_PVD宏(PhysX的Debug、Profiler版本的库会开启该宏),才能支持 PVD 的调试。 游戏缺省会使用localhost,端口为5425,连接超时时间为100ms来与Physx Visual Debugger工具建立连接。 如果要修改PVD
阅读全文
摘要:命令行工具systrace(System Trace)跟踪的是系统级的内容,如CPU各核心调度,SurfaceFlinger、VSync(垂直同步)、BufferQueue。 通过收集系统事件和App逻辑中插入的自定义事件的组合数据,在排查性能问题时 (例如UI卡顿或功耗过高)就会显得十分有用。 关
阅读全文
摘要:Tree It是一款windows上免费创建植被的共享软件,可从这里下载安装版本和绿色版本。 其文件目录结构如下,里面除了软件所需的二进制和资源外,还带有Textures纹理库(树皮Bark、树叶Leaves、数桩Stump)和Trees模型库。 更多的Tree模型库可从官网下载。 创建树并导出fb
阅读全文
摘要:物件Actor引用资源文件,存放在关卡中。关卡则是场景加载的最小单元,支持动态流式载入和卸载(Level Streaming)。多个关卡构成一个完整的场景,给玩家提供一个虚拟游戏体验环境。 编辑器EWorldType::Editor世界 编辑器Edit世界中的所有物件均为Placeable Acto
阅读全文
摘要:CMake(Cross platform Make,在线帮助文档,wiki,chs)是一个开源的跨平台自动化建构系统(目前仅支持C / C++ / Java语言),不依赖于某特定编译器,并可支持多层目录、多个应用程序与多个库。 对于其他GNU Make ,QT的qmake ,微软的nmake等Mak
阅读全文
摘要:Arm Mobile Studio是一套分析Android(无需root)上App的CPU,GPU的高效性能优化工具,辅助开发人员来定位App性能瓶颈。 由以下4个子工具组成:Performance Advisor、Streamline、Graphics Analyzer和Mali Offline
阅读全文
摘要:Android Studio 中 System Trace(系统跟踪)功能(注:为命令行工具systrace的GUI版本),是用于记录一段时间内的设备活动,用于提升App的性能。 不同于函数跟踪(如 Java Method 或 C/C++ Function Trace),System Trace 跟
阅读全文
摘要:Android Studio Profiler的CPU Profiler下的Sample C/C++ Functions功能(注:为命令行工具simpleperf的GUI版本),来跟踪各个线程的C/C++函数使用CPU的情况。 根据Profile信息来确定哪些C/C++函数在被频繁地调用,以优化相应
阅读全文
摘要:scrcpy是一款可以用电脑显示并控制Android 手机的全平台(Windows、macOS、Linux)开源工具,支持 USB、WiFi 两种方式连接,无需在手机安装任何应用,无需 root。 通过Scrcpy可以直接借助鼠标在投屏窗口中进行交互:使用鼠标左键进行点击、长按和按住拖动即可相应地在
阅读全文
摘要:echo $(uname) // 输出Darwin 注:Darwin为MacOS的内核 uname -a // Darwin KEKEC-MC4 22.3.0 Darwin Kernel Version 22.3.0: Mon Jan 30 20:42:11 PST 2023; root:xnu-8
阅读全文
摘要:某个Stats文件所统计到大类(Group Name)如下: 某个Stats文件Group Name为Memory的所统计到细项如下: 统计项类型: 为int或float数字类型 // 用于Stat HUD展示,如下图所示 Stat GPU // 显示帧的GPU统计数据 注:android平台上没有
阅读全文
摘要:Android手机中有个debuggerd进程,当发生Native Crash,系统会自动调用debuggerd来dump到tombstone文件(所在目录:/data/tombstones)中。 /data/tombstones需要root才能访问,非root的Android手机,可通过adb b
阅读全文
摘要:解锁Bootloader 1. 插入手机sim卡,然后关掉wifi,启用数据网络(用sim卡来上网) 2. 在设置里面登录用该手机号申请的小米账号 3.进入“设置 -- 开发者选项 -- 设备解锁状态”中绑定账号和设备。成功后,会提示如下tips: 4. 先关机,然后同时按住开机键和音量下键来启动系
阅读全文
摘要:Stat命令(chs en)提供了游戏和引擎各个方面的实时统计信息,输入不同参数会在屏幕HUD上显示对应统计数据。 Debug、Development包才会启用STATS宏,统计逻辑才会编译进可执行二进制中,才能使用Stat命令相关的功能 若想让Shipping和Test包也有Stat命令功能,可在
阅读全文
摘要:Blueprint Stats是一款在Editor类型的统计蓝图插件,只能在编辑器中使用。 该插件默认是不启用的,可在项目的uproject文件中将其启用: 启动编辑器后,在Output Log窗口中执行DumpBlueprintStats控制台命令,可统计出当前项目的蓝图的使用情况,如下: Cmd
阅读全文
摘要:D3D Runtime是分层构造的,从核心的基本功能开始,在外部层中构建可选的功能和开发人员辅助功能。各个层(layers)只会添加功能,但不会修改现有行为。 可在调用D3D11CreateDevice或D3D11CreateDeviceAndSwapChain创建设备时并提供一个或多个D3D11_
阅读全文
摘要:adb(wiki)全称为Android Debug Bridge, 是一种功能多样的命令行工具,可让Android设备进行通信。adb 命令可用于执行安装和调试应用等操作,典型的C/S架构: $提示符普通权限,#表示拥有root权限 USB连上手机后,windows update会自动安装手机驱动,
阅读全文