Get the File Path to an Extension
If you want to refer to assets included with your extension, you need to first get the file path to the extension. You can do this through ExtensionManager
from the IApp
interface. There are three ways to do this:
ExtensionManager.get_extension_path()
ExtensionManager.get_extension_dict()
ExtensionManager.get_extension_path_by_module()
import omni.kit.app
manager = omni.kit.app.get_app().get_extension_manager()
# There could be multiple extensions with same name, but different version
# Extension id is: [ext name]-[ext version].
# Many functions accept extension id.
# You can get extension of enabled extension by name or by python module name:
ext_id = manager.get_enabled_extension_id("omni.kit.window.script_editor")
print(ext_id)
ext_id = manager.get_extension_id_by_module("omni.kit.window.script_editor")
print(ext_id)
# There are few ways to get fs path to extension:
print(manager.get_extension_path(ext_id))
print(manager.get_extension_dict(ext_id)["path"])
print(manager.get_extension_path_by_module("omni.kit.window.script_editor"))