RenderDoc文档

官方文档
RenderDoc

欢迎使用 RenderDoc - 这是一个图形调试工具,目前可用于在 Windows、Linux、Android 和 Nintendo Switch TM 上进行 Vulkan、D3D11、D3D12、OpenGL 和 OpenGL ES 开发。

本文件作为参考指南、入门文档,解释了 RenderDoc 中可用的功能以及如何最好地使用它们。

最新的信息和讨论始终可以在 GitHub 仓库中找到。

目录

  • 引言
    • 许可证
    • 如何浏览本文档
    • 重要说明
    • 文档和教程
    • 联系信息、反馈、错误报告
    • 另见
  • 致谢与鸣谢
    • 第三方致谢
    • 感谢
    • 贡献者
  • 入门
    • 快速开始
    • 常见问题
    • 注意事项与已知问题
    • 功能
    • 提示与技巧
  • 幕后
    • 分析
    • RenderDoc 的工作原理
    • OpenGL 和 OpenGL ES 支持
    • Vulkan 支持
    • D3D12 支持
  • 应用内 API
  • Python API
    • 入门(Python)
    • 入门(RenderDoc UI)
    • Python 开发环境
    • 编写 UI 扩展
    • 描述符和绑定
    • 基本接口
    • renderdoc 示例
    • qrenderdoc 示例
    • renderdoc API 参考
    • qrenderdoc API 参考
  • 我该如何……?
    • 我该如何捕获一帧?
    • 我该如何在 Android 上使用 RenderDoc?
    • 我该如何过滤可见事件?
    • 我该如何调试着色器?
    • 我该如何使用着色器调试信息?
    • 我该如何检查像素值?
    • 我该如何指定缓冲区格式?
    • 我该如何查看特定纹理?
    • 我该如何查看对象的详细信息?
    • 我该如何捕获调用栈?
    • 我该如何使用自定义可视化着色器?
    • 我该如何编辑着色器?
    • 我该如何在网络上捕获和重放?
    • 我该如何注释捕获?
    • 我该如何导入或导出捕获?
    • 我该如何生成 RGP 配置文件?
    • 我该如何注册 Python 扩展?
    • 我该如何控制重放?
  • 窗口参考
    • 纹理查看器
    • API 检查器
    • 网格查看器
    • 缓冲区查看器
    • 捕获对话框
    • 事件浏览器
    • 设置窗口
    • 管道状态
    • 着色器查看器
    • 着色器消息
    • 时间线条
    • 捕获连接
    • 调试消息
    • Python Shell
    • 资源检查器
    • 性能计数器查看器
    • 捕获注释

引言

欢迎使用 RenderDoc - 一款当前可用于 Vulkan、D3D11、D3D12、OpenGL 和 OpenGL ES 开发的图形调试器,支持 Windows、Linux、Android 和 Nintendo Switch TM 平台。

本文档作为参考指南,介绍了 RenderDoc 中可用的功能以及如何最佳使用这些功能。

最新的信息和讨论始终可以在 GitHub 仓库中找到。

许可证

RenderDoc 采用 MIT 许可证发布,因此您在商业或非商业用途上都没有使用限制。这包括在 GitHub 上提供的源代码版本。

RenderDoc 中使用的第三方软件的许可证详细信息包含在 RenderDoc 目录中的 LICENSE 文件以及 Credits & Acknowledgements 中。

如何浏览此文档

如果您想直接开始使用 RenderDoc,可以查看快速入门部分,该部分提供了简单的入门介绍。之后,您可以参考 RenderDoc 中每个窗口的参考页面,以便在使用程序时查阅,或快速浏览以了解可用的功能。

如果您熟悉其他图形调试器,您可能会发现 RenderDoc 的许多功能是相似的,您可能想查看常见问题解答、功能、技巧与窍门,或浏览“我该如何…?”部分,这些部分详细说明了一些常见任务的完成方法。

无论您对文档的经验或耐心如何,建议您阅读“注意事项与已知问题”,因为这部分详细说明了程序的当前限制。

重要说明

RenderDoc 通常是稳定的,但根据您的使用情况,您仍可能会遇到错误,特别是在图形方面,潜在的交互和表面区域很多。我始终乐意花时间修复错误,但请记住,我需要有关如何重现您特定情况的信息。如果您能够提供可公开重现的步骤,请在 GitHub 上提交问题,或者如果您需要私下分享信息,请给我发邮件。

另一方面,如果 RenderDoc 对您有效,请提供反馈,并请求可以让您的工作更轻松或改善工作流程的功能。

您可能会遇到一些常见问题,因此如果您有任何问题,请查看常见问题解答或 GitHub 问题列表,以查看是否已报告。

文档和教程

除了您正在阅读的文档外,我还录制了一些 YouTube 视频教程,展示了一些基本功能的使用以及介绍/概述。请注意,这些视频相当旧,来自 RenderDoc 的首次发布,但基本工作流程和操作仍然相似。

还有 @Icetigris 的精彩演示,详细介绍了 RenderDoc 在实际情况中的使用:幻灯片可在此处获取。

联系信息、反馈、错误报告

如果您想就任何功能请求、建议、评论等与我联系,请随时与我联系:联系我。

错误报告可以通过电子邮件直接提交,也可以在 GitHub 问题列表中提交,您还可以在此处找到完整的源代码。

构建页面始终提供最新的稳定版本下载,以及每晚从源代码构建的最新版本。稳定版本大约每两个月更新一次,通常是最可靠的版本。

另请参见

RenderDoc 首页

致谢与鸣谢

RenderDoc的实现离不开构建过程中使用的工具和库,以及许多帮助和贡献的人,使其成为今天的程序。

第三方鸣谢

以下库和组件被纳入RenderDoc,按无特定顺序列出。感谢每个库背后的开发者和贡献者,他们慷慨地将自己的工作贡献给其他自由项目!

  • Google Breakpad - 版权 2006 Google Inc,依据新BSD许可证(3条款)分发。

    崩溃处理和报告准备系统。

  • miniz - 由Rich Geldreich发布为公共领域。

    用于多个地方的zip读写。

  • ILM的half实现 - 版权 2002 Industrial Light & Magic,Lucas Digital Ltd. LLC的一个部门,依据BSD许可证分发。

    用于解码half数据以供显示。

  • jpeg-compressor - 由Rich Geldreich发布为公共领域。

    用于jpg的读写。

  • lz4 - 版权 2013 Yann Collet,依据BSD 2-Clause许可证分发。

    用于快速压缩,速度比压缩比更重要。

  • stb - 由Sean Barrett发布为公共领域。

    用于读取、写入和调整各种图像格式的大小。

  • Source Code Pro - 版权 2010, 2012 Adobe Systems Incorporated,依据SIL开放字体许可证1.1分发。

    用于程序内覆盖的字体。

  • tinyexr - 版权 2014 Syoyo Fujita,依据新BSD许可证(3条款)分发。

    用于OpenEXR文件的加载和保存。

  • glslang - 版权 2002-2005 3Dlabs Inc. Ltd,版权 2012-2013 LunarG, Inc,依据新BSD许可证(3条款)分发。

    用于将GLSL编译为SPIR-V。

  • Qt - 版权 2015 The Qt Company Ltd,依据GNU较宽通用公共许可证(LGPL)版本2.1分发。

    用于QRenderDoc重放UI程序。

  • cmdline - 版权 2009 Hideyuki Tanaka,依据新BSD许可证(3条款)分发。

    用于解析renderdoccmd的命令行参数。

  • include-bin - 版权 2016 Eveline Jarosz,依据zlib许可证分发。

    用于在非Windows平台上编译嵌入到源代码中的数据文件。

  • plthook - 版权 2013-2014 Kubo Takehiro,依据2条款BSD许可证分发。

    用于在Linux上钩住使用DEEPBIND加载的一些库。

  • tinyfiledialogs - 版权 © 2014 - 2016 Guillaume Vareille,依据zlib许可证分发。

    用于从非UI核心代码跨平台显示消息框。

  • AMD GPUPerfAPI - 版权 © 2016-2018 Advanced Micro Devices, Inc.,依据MIT许可证分发。

    提供超出单个硬件无关图形API所能提供的硬件特定计数器。

  • Farm-Fresh Web Icons - 版权 © 2009-2014 FatCow Web Hosting,依据创意共享署名3.0许可证分发。

    提供比famfamfam Silk集更高分辨率的图标,这些图标允许缩放以适应高DPI显示器。

  • AMD Radeon GPU Analyzer - 版权 © 2015-2018 Advanced Micro Devices, Inc.,依据MIT许可证分发。

    提供将任何API表示的着色器反汇编为编译的GCN ISA以进行更低级别分析的能力。

  • Catch - 版权 © 2012 Two Blue Cubes Ltd.,依据Boost软件许可证分发。

    在开发过程中实现单元测试。

  • zstd - 版权 © 2016至今,Facebook, Inc.,依据BSD许可证分发。

    离线压缩捕获文件,压缩率更高(而非在捕获时)。

  • pugixml - 版权 © 2006-2017 Arseny Kapoulkine,依据MIT许可证分发。

    用于将捕获文件转换为xml及其反向转换。

  • AOSP - 版权 © 2006-2016,Android开源项目,依据Apache 2.0许可证分发。

    通过分发一些来自android SDK的工具以及修补android清单文件以启用调试,简化Android工作流程。

  • interceptor-lib - 版权 © 2017,Google Inc.,依据Apache 2.0许可证分发。

    来自GAPID项目,用于在构建时如果LLVM可用,则将钩子注入到android库函数中。

  • LLVM - 版权 © 2003-2017 伊利诺伊大学香槟分校,依据伊利诺伊大学/NCSA开源许可证分发。

    用于支持interceptor-lib以将钩子注入到android库函数中。

  • OpenSSL - 版权 © 1998-2018 OpenSSL项目。版权 © 1995-1998 Eric Young。依据OpenSSL和SSLeay许可证的双重许可证分发。

    用于安全连接到RenderDoc的服务器以进行更新检查和错误报告。

  • Microsoft PDB信息 - 版权 © 2015 Microsoft Corporation。依据MIT许可证分发。

    用于从D3D11/D3D12的DXBC着色器中恢复调试信息。

  • Compressonator - 版权 © 2018 Advanced Micro Devices, Inc. 版权 © 2004-2006 ATI Technologies Inc. 依据MIT许可证分发。

    用于为块压缩的DDS文件提供外壳缩略图预览。

  • nvapi开源SDK - 版权 © 2019,NVIDIA CORPORATION。依据MIT许可证分发。

    用于在D3D11/D3D12上拦截nvapi调用。

  • half.hpp - 版权 © 2012-2019 Christian Rau。依据MIT许可证分发。

    用于在着色器调试中模拟半精度操作。

  • Superluminal - 版权 © 2019-2020 Superluminal。依据BSD许可证分发。

    用于在开发构建中发出性能分析事件。

  • AGS - 版权 © 2020 Advanced Micro Devices, Inc. 依据MIT许可证分发。

    用于在D3D11/D3D12上拦截和测试AGS调用。

  • md5哈希 - 由Alexander Peslyak发布为公共领域。

    用于计算DXBC容器哈希。

  • NVIDIA Nsight Perf SDK - 可再分发部分依据RenderDoc源代码库或SDK中提供的NVIDIA Nsight Perf SDK许可证分发。

    提供超出单个硬件无关图形API所能提供的硬件特定计数器。

  • pythoncapi-compat - 版权 pythoncapi_compat项目的贡献者。依据BSD零条款许可证分发。

    用于简化与广泛Python版本的兼容性。

  • intellij-community - 版权 intellij-community项目的贡献者。依据Apache许可证分发。

    用于为二进制模块生成Python存根。

感谢

本文件中的截图来自Sascha Willems的Vulkan演示。

有许多人在RenderDoc的创建中提供了帮助。无论是测试、提供反馈,还是贡献艺术作品和设计评论,这里列出的每一个人以及其他许多人在将RenderDoc从纸上的想法转变为现在的状态中都发挥了不可或缺的作用。向以下人员致以问候,按无特定顺序列出。

Chris Bunner, Charlie Cole, James Chilvers, Andrew Khan, Benjamin Hill, Jake Turner, Alex Weighell以及Crytek UK研发团队的其他成员。

Colin Bonstead, Marco Corbetta, Pascal Eggert, Marcel Hatam, Sascha Hoba, Theodor Mader, Mathieu Pinard, Chris Raine, Nicolas Schulz, Tiago Sousa, Sean Tracy, Carsten Wenzel,以及Crytek Studios的其他所有人。

Daniel Sexton

Jason Mendel

Jacob Kapostins

Iain Cantlay

Luke Lambert

Gareth Thomas

George Ilenei

Matías N. Goldberg

Louis De Carufel

Steve Marton

Elizabeth Baumel

Jon Ashburn

Greg Fischer

Karen Ghavem

Jens Owen

Derrick Owens

Jon Kennedy

Matthäus G. Chajdas

Dan Ginsburg

Dean Sekulic

Rolando Caloca Olivares

Arne Schober

Michael Vance

Dominik Witczak

Chia-I Wu

Cory Bloor

John McDonald

Pierre-Loup Griffais

Jason Mitchell

Michael Rennie

Ian Elliot

Callan McInally

Gordon Selley

Cody Northrop

Dominik Baumeister

Adrian Bucur

Peter Gal

Janos Pantos

Marton Tamas

Nat Duca

Ben Clayton

Aliya Pazylbekova

Benson Joeris

Haiyu Zhen

Alex Kharlamov

Steve Karolewics

Kevin McCullough

Ting Cai

Zi Ming He

Orson Baines

John Kattukudiyil

Tony Tascioglu

贡献者

以下列表突出显示了显著的开源贡献。还有许多人贡献了单独的错误修复和调整,可以在github上看到!

Michael Vance - 为D3D11实现了一个复杂的帧统计系统,围绕绑定和绘制API调用。

Matthäus G. Chajdas - 将此文档从sandcastle转换为sphinx。

Michael Rennie, Peter Gal和Janos Pantos在Samsung - 添加了对Android平台捕获的支持,以及对Vulkan和OpenGL ES的支持。

Adrian Bucur - 添加了自定义SPIR-V反汇编器支持。

James Fulop - 更新了顶点拾取算法。

Balazs Torok - 为D3D9实现了RenderDoc的应用内覆盖。

Steve Karolewics - 为D3D12实现了DXBC着色器调试支持。

Aliya Pazylbekova - 为Vulkan实现了像素历史支持。

Orson Baines, Zi Ming He, John Kattukudiyil, Ting Cai, Tony Tascioglu - 为OpenGL实现了像素历史支持。

Steve Karolewics, Jovan Ristic - 为D3D12实现了像素历史支持。

快速入门

本文档简要介绍了如何使用RenderDoc捕获和分析您的应用程序。它不会详细说明可用于深入挖掘的具体功能,因为这些信息可以在其他地方找到。相反,它专注于从头到尾的工作流程,以及大致在哪里查找不同的内容。

在本教程中,我们将使用Sascha Willems的Vulkan示例库中的debugmarker示例。

捕获帧

要捕获一帧,首先选择“文件”→“启动应用程序”。默认情况下,这将打开一个新的停靠窗口,您可以在其中配置捕获时使用的不同设置。您可能会发现此窗口已经可用。

../_images/QuickStart1.png

启动可执行文件¶

默认设置在大多数情况下效果很好,因此您可以直接浏览或将您的exe拖入可执行文件框中。如果工作目录框为空,则将使用可执行文件的目录。输入您可能需要的任何命令行,然后单击“启动”以使用RenderDoc启动应用程序。

有关特定选项及其功能的更多详细信息,请参见捕获对话框的详细页面。

注意

您应该选择与您的操作系统匹配的RenderDoc版本——Windows x64使用64位,反之亦然。

您只能使用64位版本的RenderDoc捕获64位进程。32位进程可以使用任一版本的RenderDoc进行捕获。

RenderDoc应用内
RenderDoc具有相当简约的应用内覆盖层,仅用于指示RenderDoc已成功加载并准备捕获一帧。

准备好后,按下捕获键(F12或Print Screen),在按键后下一个帧将被捕获,并在覆盖层上显示,以让您知道一帧已成功保存。

../_images/QuickStart2.png

应用内RenderDoc覆盖层¶

当应用程序退出时,如果您捕获了一帧,它将自动开始在RenderDoc UI中打开。如果您没有捕获帧,则不会发生任何事情,RenderDoc UI将恢复到您单击“启动”时的状态。

如果您进行了多次捕获,您将看到一个缩略图列表,允许您根据需要打开(在当前实例或新实例中进行并排比较)、保存和删除它们。您还可以在程序仍在运行时访问此视图,更多信息请参见捕获连接以获取有关进行多帧捕获的信息。不过请注意,对于简单的用例,您不需要担心这一点!

RenderDoc布局

RenderDoc的布局可以进行相当大的自定义,因此本节将仅涵盖默认布局。我们将介绍默认打开的窗口以及每个窗口在分析程序时的使用方法。

这些窗口中的每一个都有一个更深入的部分,提供有关每个功能和特性的详细信息,对于更复杂的窗口(如纹理查看器),您可能希望浏览这些信息,以了解可用内容并在将来作为参考。

纹理查看器
../_images/QuickStart3.png

纹理查看器¶

有关更多详细信息,请参见纹理查看器页面。

纹理查看器几乎可以做您所期望的事情——它允许您检查应用程序中的纹理和渲染目标。

有各种可视化控件,允许您选择不同的通道、mip级别或纹理的其他方面,更多详细信息请参见上述页面。在这里,我们将仅提及亮点:

缩略图条(默认位于右侧)列出了当前绑定和使用的输出目标或着色器输入。选择每个缩略图(红色轮廓指示所选项)时,您将随着浏览场景而跟随绑定到该插槽的资源。

例如,如果您选择渲染目标0,则纹理显示将更新为显示当前绑定的渲染目标0,而不管那是什么纹理。如果您跟踪的插槽变得未绑定或未使用,之前的纹理仍将显示,直到您选择不同的管线插槽或该插槽再次绑定。未绑定的纹理插槽在其缩略图下显示“未绑定”。

要打开特定纹理并在其更改插槽或变为未绑定时进行观察,您可以在新的锁定选项卡中打开它。双击它,右键单击并选择“在新锁定选项卡中打开”,或按名称打开它。

纹理的格式和尺寸显示在纹理显示本身下方的状态栏上。在此状态栏上,您还可以看到您悬停的当前像素坐标,以及可以通过右键单击纹理显示的“选中”像素值。

此外,在纹理查看器窗口的右下角有一个小的缩放区域,显示最后选中像素的上下文。在这里,您还可以启动像素历史记录或调试器,详细信息请参见“我该如何调试着色器?”。

我们要强调的最后一点是范围控制。这是一个相当灵活的工具,允许您调整图像中的可见范围。这在查看范围超出[0, 1]的HDR图像时特别有用。

要使用范围控制,您可以拖动白色和黑色点进行微调,或输入值以更改白色和黑色点的值(默认分别为0和1)。范围控制本身右侧还有一些有用的控件,详细信息请参见纹理查看器页面。

事件浏览器
…/_images/QuickStart4.png
事件浏览器¶

有关更多详细信息,请参见事件浏览器页面。

事件浏览器是逐帧浏览和浏览其中发生的事件的主要方法。第一列EID(事件ID)指示该帧中的哪个事件或API调用,按时间顺序排列。

默认情况下,此处列出的事件称为操作。绘制和调度是操作的示例,但也包括修改资源的事件,如清除和复制。状态设置和其他CPU更新调用(如映射)不包括在内,并可在API调用视图中找到(见下文)。您可以使用过滤字段根据需要包含或排除事件,更多信息请参见“我该如何过滤可见事件?”。

列可以自定义和重新排序,时间线标记选择列按钮(或右键单击)将允许您选择显示哪些列。

标准性能标记可用,并创建您所期望的层次结构/标签。这些可以展开或折叠,并且可以通过正常控件进行键盘浏览——左右键在层次结构中向上或向下移动,上下键在兄弟节点之间上下移动。有关这些标记的更多信息,请参见“我该如何注释捕获?”。

“当前”事件——即我们正在检查图形状态的事件——用绿色标志突出显示,行也被高亮显示。选择任何行时,它立即成为新的当前事件。

在选择事件浏览器时,您可以按快捷键CTRL-F查找给定事件或操作。您可以输入一个数字以跳转到该给定EID。

星号橙色书签按钮将允许您为事件添加书签,快捷键为CTRL-B。

书签事件的列表将显示在事件浏览器顶部的工具栏上,它们和快捷键CTRL-1到CTRL-0将跳转到相应的书签EID。这些快捷键将在应用程序的任何地方工作。

书签可以与捕获一起保存并与他人共享。有关更多信息,请参见“我该如何注释捕获?”页面。

API检查器
…/_images/QuickStart5.png
API调用 + 调用栈面板¶

有关更多详细信息,请参见API检查器页面。

API调用窗口在选择新事件时更新。它显示单个API调用及其参数。如果选择了一个操作,列表将显示前一个操作和此操作之间的所有API调用,并且此列表中的最后一项始终对应于该操作。每一行都可以展开以显示传递给该API调用的参数。

窗口底部是一个可选的可展开部分,显示从应用程序代码到API函数的调用栈(如果可用且已记录)。

要查看这些调用栈,您必须首先解析与捕获一起记录的符号。为此,请单击工具菜单下的“解析符号”。有关此过程的更多详细信息,请参见指南:“我该如何捕获调用栈?”。

时间线条
…/_images/QuickStart6.png
时间线条¶

有关更多详细信息,请参见时间线条页面。

时间线条本质上是帧的另一种视图,水平轴表示帧中的时间。水平轴按API调用均匀缩放,因此在任何给定的缩放级别下,每个API调用的宽度相同。

在这种情况下,帧标记层次结构是自上而下的,可以通过单击每个部分进行展开或折叠。在此图像中,“渲染场景”和“卡通着色绘制”都已展开,但其他部分保持折叠。每个操作在其子层次结构的部分下以蓝色点的形式呈现。当前操作(如果可见)以绿色圆圈呈现。

当前操作周围有一条垂直线,以及上方的绿色标志,鼠标悬停的事件周围有灰色轮廓。

当当前选择的纹理在帧中使用时,每个引用它的操作在条下方绘制一个标记。标记的不同颜色指示该点的操作是写入纹理、读取、同时读取和写入等。如果标记太靠近,它们将自动调整间距以便可读,并且不一定会与特定操作对齐,除非您放大。

这可以是跟踪数据通过帧的非常有用的工具,同时突出显示潜在的冗余或错误,如果目标被写入到不应该写入的地方。

管线状态
…/_images/QuickStart7.png
管线状态查看器¶

有关更多详细信息,请参见管线状态页面。

管线状态窗口可能是最详细但也是最简单理解的。此窗口简单列出图形管线的每个状态方面以及在当前事件中存在的值或对象。

默认情况下,管线将不包含空或未使用的条目——即,如果着色器仅从资源0和1读取,即使插槽2绑定了某些内容,它也不会显示。同样,如果插槽3-128为空,它们也不会显示。此行为可以通过工具栏上的“显示未使用项”和“显示空项”切换进行修改。显示未使用将显示插槽2,即使着色器不从中读取。显示空将显示插槽3-128。此行为因API而异,因为着色器绑定模型通常相当不同。

需要注意的一点是,每个管线阶段的部分中的大多数内容都可以展开以查看更详细的信息。查找“前往”图标(go_arrow)以指示可用更详细的视图。通常,这意味着对于着色器,将打开着色器源代码/反汇编,对于纹理类型资源,纹理查看器将为该资源打开一个新选项卡,对于缓冲区,它将打开网格查看器窗口、该缓冲区的原始视图,或弹出窗口显示常量内容——具体取决于缓冲区的绑定位置。

另一个有用的约定是,任何提到API对象的地方,其名称以粗体书写,后面跟着一个链接。这是一个可点击的链接,指向资源检查器窗口,允许您更详细地检查对象的定义以及它链接到的其他API对象。

有关更多详细信息,请查看如何:我该如何查看对象的详细信息?。

网格查看器
…/_images/QuickStart8.png
网格查看器¶

有关更多详细信息,请参见网格查看器页面。

网格查看器允许您检查几何数据在管线中的传递情况。可以以网格视图的原始数据和3D检查的方式进行查看。预览窗口中的选项卡允许您选择希望在管线的哪个部分可视化数据。

默认情况下,预览显示网格的线框渲染,但您可以选择不同的可视化。这可以是简单的着色、顶点爆炸工具,或使用次要属性作为颜色。右键单击任何列可以选择用于渲染的次要属性。

您还可以选择哪个属性是位置,以防自动检测失败或您希望在3D空间中可视化另一个属性,如纹理坐标。

您可以按住或单击网格预览上的右键以选择网格数据表中的顶点。

最终顶点输出数据的默认视图(您可以通过重置按钮arrow_undo重置)显示相机位于视图原点,向外看透视口。默认情况下,输出尝试从输出数据猜测透视矩阵,但可以通过打开选项齿轮并输入更准确或更正的值来进行细化或更改为正交视图。

结束说明
显然,您在程序中完成的工作将因您需要调查的内容而有所不同,但希望这能为您提供可用功能的概述。还有许多更详细的功能可用,本文档的其余部分将帮助您找到这些功能。

查看“提示与技巧”页面可能是个好主意,该页面列出了几条不明显但可能为您节省大量时间的有用说明。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你一身傲骨怎能输

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值