Godot Project Breakdown
Suzuka Ka
Godot VSCode Gamedev Programación
VSCode extension for managing Godot projects
Contenido
Godot Project Breakdown 🤖

Extensión de VSCode que obtiene todos los archivos .gd de tu proyecto de Godot, los analiza y proporciona una vista general de todos ellos en un único archivo.
Para cada archivo .gd, muestra sus variables y métodos privados o públicos*, señales definidas, referencias a nodos y enums.
* Los campos privados y públicos no existen (al menos por ahora) en GDScript, pero si utilizas el prefijo “_” para diferenciar campos privados (con “_”) de públicos (sin “_”), lo tendrá en cuenta.*
Hice esta extensión hace muchos años, cuando Godot todavía no contaba con soporte para C#, por lo cual, al menos de momento, solo funciona con archivos gdscript (.gd)
Razones y Motivación
Hice esta extensión para mí mismo, para poder rastrear y actualizar fácilmente cada cambio en mi proyecto, de modo que pudiera gestionar/actualizar fácilmente la documentación de mi proyecto (en mi caso, un diagrama UML para mi juego).
En lugar de llevar el seguimiento de cada cambio manualmente, simplemente genero un nuevo archivo, lo comparo con la versión anterior (usando control de versiones) y actualizo efectivamente mi documentación.
Publiqué la extensión por si resulta útil para alguien más.
Uso 🔧
Requisitos previos: esta extensión requiere Godot tools
- Descarga la última versión e instálala
Si estás usando una versión de Godot Tools inferior a 1.X.X, descarga la versión 1.0.1
Si estás usando Godot 3.2 o superior y una versión de Godot Tools igual o superior a 1.X.X descarga la última versión
Para instalar los archivos .vsix, ve a
extensions -> ... -> "Install from vsix"
Abre la paleta de comandos (F1)
Escribe
Generate breakdown fileEjecuta el comando

- ¡Listo! 🥳
Opciones de la extensión ⚙
El archivo de resultado es altamente personalizable para adaptarse a tus necesidades.
Puedes especificar qué datos mostrar, en qué orden y cómo.
La mayoría de las opciones se explican por sí mismas en la descripción de sus ajustes. Pero algunas de ellas:
godotProjectBreakdown.file.order
Esta es una de las configuraciones más importantes. Es unstringque especifica los datos a mostrar y el orden. Su valor por defecto esf# p ne svm
Cada carácter representa un dato en el archivo:n - Referencias a nodoss - Señalesv - Variablesm - Métodosp - Ruta del archivof - Nombre del archivoe - Enums# - Comentarios de clase. En cualquier GDScript, puedes poner el texto que quieras mostrar en el archivo si lo incluyes entre ###\ y /###. Por ejemplo:###\ (Tu comentario aquí) /###
(Espacio vacío) - Separación de línea (equivale a \n)
godotProjectBreakdown.file.sortScriptsBy
Permite ordenar los scripts por su ruta, nombre o nodo/script extendido.godotProjectBreakdown.separator.{...}
Unstringque te permite añadir un encabezado personalizado para cada propiedad.godotProjectBreakdown.prefix.{...}
Permite añadir un prefijo personalizado para cada propiedad.godotProjectBreakdown.file.ignoreFolders
Un Glob Pattern para ignorar carpetas/archivos que no quieras mostrar en el archivo de resumen.
Su valor por defecto es "**/addons/**", lo que significa que ignorará archivos dentro de cualquier carpeta llamada “addons”.
Si los Glob Patterns son nuevos para ti, esta herramienta es muy útil para asegurarte de que tu patrón glob es correcto.
godotProjectBreakdown.file.showEnumValues
Unboolpara mostrar (true) o no (false) los valores de cada enum.
Posibles mejoras futuras
Analizar todos los archivos
.tscndel proyecto para obtener más información, como por ejemplo señales conectadas mediante el editor.Quizá suba la extensión al marketplace de VSCode en el futuro.
FAQ
¿Cúal es el estado actual de la extensión?
Esta extensión fue hecha originalmente para Godot 3.X.
Por el momento no voy a continuar con el mantenimiento de esta extensión. Fue mi primera (y única) extensión de VSCode, y en el momento en que escribo esto (5 años después de haberla hecho), las herramientas han cambiado (TypeScript ha cambiado, la API de extensiones de VSCode ha cambiado, Godot ha cambiado, etc.) y no tengo el tiempo, la energía ni la motivación para seguir con ella.
Licencia del logo ©
El logo de la extensión utiliza y modifica el logo original de Godot de Andrea Calabró.
Su licencia:
Godot Logo (C) Andrea Calabró
Distribuido bajo los términos de la licencia Creative Commons Attribution
versión 3.0 (CC-BY 3.0) https://creativecommons.org/licenses/by/3.0/legalcode.

