-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Working With An External Lua Debugger
galibzon edited this page Apr 14, 2023
·
6 revisions
O3DE developers can choose which IDE to use when editing/debugging Lua scripts.
The default behavior of the Editor, when the user clicks the Open in Lua Editor
(
) button of a Lua Script component is to open the Lua script with LuaIDE.
To override this default behavior, the user can define the registry key O3DE/Lua/Debugger/Uri
with a URL representing an application capable of editing and debugging Lua scripts. For example, if you wish to use this Visual Studio Code debugger extension for Lua: https://marketplace.visualstudio.com/items?itemName=lumbermixalot.o3de-lua-debug, you can do something like this in a *.setreg
file:
{
"O3DE": {
"Lua": {
"Debugger" : {
"Uri": "vscode://lumbermixalot.o3de-lua-debug/debug?"
}
}
}
}
The Editor
will execute the following URL Query as a system call to open a Lua script in an external debugger:
<App URI>?projectPath=<Game project path>&enginePath=<O3DE path>&files[]=<Lua Script path>
-
<App URI>
: The value ofO3DE/Lua/Debugger/Uri
, e.g.vscode://lumbermixalot.o3de-lua-debug/debug?
. -
<Game project path>
: Absolute path to the current game project, e.g.C:\GIT\MyGame
. -
<O3DE path>
: Absolute path to the root of O3DE, e.g.C:\GIT\o3de
. -
<Lua Script path>
: Absolute path to the Lua script that needs to be edited/debugged, e.g.C:\GIT\MyGame\Assets\score_counter.lua
.
- GPU Crash Debugging and Reporting
- CPU & GPU Debugging Tools
- CPU Profiling Tools
- GPU Profiling Tools
- GPU Memory Profiling
- Faster Shader Iteration
- Commit sign off
- PerformanceCollector API
- Allocator Tagging Guide
- What happens when entering/exiting Game mode?
- Hello World
- Using Tick Bus
- Using Transform Bus
- Reflecting Properties to the Editor
- Working With An External Lua Debugger
- Attachment Images and Buffers
- Image Builder
- Scene And Render Pipeline
- Shader Management Console (SMC)
- Work With Passes In Gems
- Developer Guide: Shader Build Arguments Customization
- Developer Guide: Customize AZSLc Executable
- Collecting Graphics Performance Metrics
- Mesh Instancing: For Content Creators
- Mesh Instancing: For Shader Authors
- Mesh Instancing: For Engine Maintainers/Contributors
- Screen Capture Image Comparison Testing