Split rendering driver project setting into renderer_name and rendering_driver. To differentiate between a driver (e.g. Vulkan or D3D12) and a renderer (e.g. clustered or mobile renderer).

This commit is contained in:
clayjohn 2022-09-07 17:44:36 -07:00
parent c2babb6558
commit 4a1c7de57c
43 changed files with 411 additions and 245 deletions

View file

@ -44,6 +44,7 @@ _arguments \
'--remote-fs-password[password for remote filesystem]:remote filesystem password' \
'--audio-driver[set the audio driver]:audio driver name' \
'--display-driver[set the display driver]:display driver name' \
"--rendering-method[set the renderer]:renderer name:((forward_plus\:'Desktop renderer' mobile\:'Desktop and mobile renderer' gl_compatibility\:'Desktop, mobile and web renderer'))" \
"--rendering-driver[set the rendering driver]:rendering driver name:((vulkan\:'Vulkan renderer' opengl3\:'OpenGL ES 3.0 renderer' dummy\:'Dummy renderer'))" \
"--gpu-index[use a specific GPU (run with --verbose to get available device list)]:device index" \
'--text-driver[set the text driver]:text driver name' \

View file

@ -47,6 +47,7 @@ _complete_godot_options() {
--remote-fs-password
--audio-driver
--display-driver
--rendering-method
--rendering-driver
--gpu-index
--text-driver
@ -58,7 +59,6 @@ _complete_godot_options() {
--always-on-top
--resolution
--position
--headless
--single-window
--debug
--breakpoints
@ -112,6 +112,10 @@ _complete_godot_bash() {
local IFS=$' \n\t'
# shellcheck disable=SC2207
COMPREPLY=($(compgen -W "unsafe safe separate" -- "$cur"))
elif [[ $prev == "--rendering-method" ]]; then
local IFS=$' \n\t'
# shellcheck disable=SC2207
COMPREPLY=($(compgen -W "forward_plus mobile gl_compatibility" -- "$cur"))
elif [[ $prev == "--rendering-driver" ]]; then
local IFS=$' \n\t'
# shellcheck disable=SC2207

View file

@ -23,6 +23,13 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
function godot_rendering_method_args
# Use a function instead of a fixed string to customize the argument descriptions.
echo -e "forward_plus\tHigh-end desktop renderer"
echo -e "mobile\tHigh-end mobile/desktop renderer"
echo -e "gl_compatibility\tLow-end desktop, mobile and web renderer"
end
function godot_rendering_driver_args
# Use a function instead of a fixed string to customize the argument descriptions.
echo -e "vulkan\tVulkan renderer"
@ -53,6 +60,7 @@ complete -c godot -l remote-fs -d "Use a remote filesystem (<host/IP>[:<port>] a
complete -c godot -l remote-fs-password -d "Password for remote filesystem" -x
complete -c godot -l audio-driver -d "Set the audio driver" -x
complete -c godot -l display-driver -d "Set the display driver" -x
complete -c godot -l rendering-method -d "Set the renderer" -x -a "(godot_rendering_method_args)"
complete -c godot -l rendering-driver -d "Set the rendering driver" -x -a "(godot_rendering_driver_args)"
complete -c godot -l gpu-index -d "Use a specific GPU (run with --verbose to get available device list)" -x
complete -c godot -l text-driver -d "Set the text driver" -x