Move new extension creation wizard to python scripting

* We remove the operations and interactions from the extension manager and leave
  it purely for browsing extensions and enabling/disabling them.
This commit is contained in:
baldurk
2026-08-13 21:05:13 +01:00
parent 650188f32c
commit 4bd0245975
7 changed files with 211 additions and 327 deletions
+3
View File
@@ -8,6 +8,9 @@ Example extensions can be found at the `community contributed repository <https:
Creating extensions
-------------------
.. tip::
You can ask RenderDoc to create an empty extension for you from the :doc:`python scripting <../window/python_scripting>` window.
Extensions are simply python modules located in the user's RenderDoc config folder, with a json manifest. The config folder varies by platform, on Windows it's ``%APPDATA%\qrenderdoc\extensions`` and on linux it's ``~/.local/share/qrenderdoc/extensions``. Each extension is a python module subfolder under this root. You can nest subfolders, e.g. ``extensions/foo/bar/first`` would be the extension ``foo.bar.first``, and treated independently from ``extensions/foo/bar/second``.
Next to each python module's ``__init__.py`` you should create a file ``extension.json`` following this template:
+3 -1
View File
@@ -14,7 +14,9 @@ In any subdirectory under this path you can register an extension by creating a
Extension Manager: Configures installed extensions.
To streamline setup we will ask RenderDoc to create a new extension for us. Open the extension manager by opening the :guilabel:`Tools` menu and select :guilabel:`Manage Extensions`, then click the :guilabel:`Create New...` button and enter a package name such as ``tutorialext``. This will create the ``extension.json`` and ``__init__.py`` files in a new folder ``tutorialext`` for us.
To streamline setup we will ask RenderDoc to create a new extension for us. Open the python scripting window from :guilabel:`Window`:guilabel:`Python Scripting`. Then either double click the :guilabel:`Create New...` item under the :guilabel:`UI Extensions` section, or right click on the section title and select the option from the context menu.
From the dialog that appears enter a package name such as ``tutorialext``. This will create the ``extension.json`` and ``__init__.py`` files in a new folder ``tutorialext`` for us.
For more information about the registration of python extensions see :doc:`../how/how_python_extension`