{"id":6526,"date":"2026-10-30T01:47:07","date_gmt":"2026-10-30T04:47:07","guid":{"rendered":"https:\/\/tucumandevelopers.com\/index.php\/2026\/10\/30\/from-gdscript-to-gdextensions-one-ide-for-your-godot-code\/"},"modified":"2026-10-30T01:47:07","modified_gmt":"2026-10-30T04:47:07","slug":"from-gdscript-to-gdextensions-one-ide-for-your-godot-code","status":"publish","type":"post","link":"https:\/\/tucumandevelopers.com\/index.php\/2026\/10\/30\/from-gdscript-to-gdextensions-one-ide-for-your-godot-code\/","title":{"rendered":"From GDScript to GDExtensions: One IDE for Your Godot Code"},"content":{"rendered":"<div>\n<div>\n<section data-clarity-region=\"article\">\n<div>\n<p>JetBrains has been <a href=\"https:\/\/godotengine.org\/article\/jetbrains-joins-dev-fund-supports-godot\/\" target=\"_blank\" rel=\"noopener\">a Platinum sponsor of the Godot Foundation<\/a> since August 2025, and we\u2019ve renewed our sponsorship into 2027. Over the past year, Rider has expanded its Godot support to cover GDScript, C#, and C++ GDExtensions in one place. It\u2019s <a href=\"https:\/\/www.jetbrains.com\/non-commercial\/\" target=\"_blank\" rel=\"noopener\">free for non-commercial use<\/a>, including hobby projects, learning, open source, and content creation.<\/p>\n<p>At GodotCon in Amsterdam, the Netherlands, this April, many developers we talked to didn\u2019t know Rider handles GDScript, and many assumed Rider required a paid subscription. If you know Rider mainly as a C# IDE, there\u2019s more in Rider for your Godot project than you might expect.<\/p>\n<p>Along the way, we\u2019ve bundled GDScript support, expanded debugging and testing, introduced an official Godot editor addon, and added project templates for addon developers. The Rider 2026.3 Early Access Program brings another set of improvements you can try today.<\/p>\n<p>Here\u2019s what all that support looks like when you sit down to build your game.<\/p>\n<h2>Work with your scripts and scenes together<\/h2>\n<p>A growing Godot project gives you more to keep track of: scripts, signals, resources, and the scene nodes that connect them. Rider helps you follow those connections while you work.<\/p>\n<p><a href=\"https:\/\/www.jetbrains.com\/rider\/whatsnew\/2025-2\/\" target=\"_blank\" rel=\"noopener\">Rider 2025.2 bundled GDScript support<\/a>, built on what was previously a community-driven plugin. It brought GDScript-specific code completion, <em>Find Usages<\/em>, <em>Rename<\/em> refactoring, documentation, and inspections into the IDE, alongside the <em>Scene Preview<\/em> tool window, which shows the nodes in your current scene.<\/p>\n<p>That gives you practical ways to explore and change a project: Find where a function is used before editing it, navigate to a declaration, or catch a missing return type while you\u2019re still writing the script.<\/p>\n<p>Rider 2026.2 made working across scenes and code more direct. You can drag nodes from <em>Scene Preview<\/em> into your script to insert their paths, or generate @onready and @export variables. You can select several nodes at once, with paths resolved relative to the script you\u2019re editing. The release also introduced a configurable GDScript formatter and improved resolution of Autoloads and uid:\/\/ resource references.<a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2026\/07\/22\/rider-2026-2-release\/\"> See the 2026.2 updates<\/a> for more details.<\/p>\n<p>You can keep building your scenes in Godot while using Rider to navigate, edit, debug, and understand the code behind them.<\/p>\n<h2>Connect Rider to the Godot editor<\/h2>\n<p>The official<a href=\"https:\/\/store.godotengine.org\/asset\/jetbrains\/jetbrains-rider-integration\/\" target=\"_blank\" rel=\"noopener\"> JetBrains Rider Integration addon<\/a> makes setting up that workflow easier.<\/p>\n<p>It detects your Rider installations, lets you choose the version you want to use, and adds a <em>Use Rider<\/em> toggle to Godot\u2019s toolbar. It also applies recommended editor settings, reducing the manual configuration needed to get started.<\/p>\n<p>The addon is available from the Godot Asset Store. Install it in your project, select Rider, and continue working with both editors.<\/p>\n<h2>Debug and test your gameplay<\/h2>\n<p>You can debug GDScript in Rider:<a href=\"https:\/\/www.jetbrains.com\/help\/rider\/Godot.html\" target=\"_blank\" rel=\"noopener\"> Set breakpoints in your scripts<\/a> and launch the game from Rider, and then execution will stop at your breakpoint. As of Rider 2025.3, you can also<a href=\"https:\/\/www.jetbrains.com\/rider\/whatsnew\/2025-3\/\" target=\"_blank\" rel=\"noopener\"> debug specific scenes and tool scripts<\/a> and pass arguments to a debugging session.<\/p>\n<p>For C# projects, Rider combines .NET editing and refactoring tools with<a href=\"https:\/\/www.jetbrains.com\/help\/rider\/Godot.html\" target=\"_blank\" rel=\"noopener\"> Godot-specific navigation and debugging<\/a>.&nbsp;<\/p>\n<p>When a gameplay bug only appears under particular conditions, conditional breakpoints help you stop at the relevant moment. Logging breakpoints let you inspect values without interrupting the game, so you don\u2019t have to scatter print() calls through your scripts. If your project mixes GDScript and C#, you can attach the .NET debugger to a GDScript debugging session and debug GDScript and C# at the same time.<\/p>\n<p>Rider 2025.3 added integration with the<a href=\"https:\/\/www.jetbrains.com\/rider\/whatsnew\/2025-3\/\" target=\"_blank\" rel=\"noopener\"> Chickensoft GoDotTest runner<\/a>, so you can run and debug C# tests from the IDE. It also introduced automatic rebuilding when Rider loses focus, helping changes to exported properties appear in the Godot Inspector without a separate manual build.<\/p>\n<p>Mega Crit moved Slay the Spire 2 from Unity to Godot, and the team uses C# and Rider to develop it.<\/p>\n<div>\n<blockquote>\n<p>\u201cIt always feels easy and intuitive to navigate Slay the Spire 2\u2019s codebase using Rider. Setting up multiplayer configurations, running unit tests locally, and getting the rest of the team up to speed has been a breeze as well!\u201d<\/p>\n<\/blockquote>\n<div>\n<p><strong>Casey Yano<\/strong> <span>CEO &amp; Co-Founder, Mega Crit<\/span> <\/p>\n<\/p><\/div>\n<\/p><\/div>\n<blockquote>\n<blockquote>\n<blockquote><\/blockquote>\n<\/blockquote>\n<\/blockquote>\n<h2>Build native extensions and reusable addons<\/h2>\n<p>Rider\u2019s C++ support covers the native side of a Godot project. Whether you\u2019re writing a GDExtension, contributing to the engine, or maintaining your own engine fork, that code lives in the same IDE as your scripts.<\/p>\n<p>At GodotCon, one developer opened a 5,000-line C++ file that had been slow to work with in their usual editor and found it to be fast in Rider.<\/p>\n<p>CMake support came out of Beta in Rider 2026.2. The same release added Natvis support to the C++ debugger on Linux and macOS, including support for Godot\u2019s godot-cpp.natvis visualizers. Those visualizers make Godot\u2019s native types easier to inspect while debugging.&nbsp;<\/p>\n<p>For addon authors, Rider 2026.2 introduced<a href=\"https:\/\/www.jetbrains.com\/help\/rider\/Godot_asset_store_addon.html\" target=\"_blank\" rel=\"noopener\"> templates for Godot games, assets, and editor plugins<\/a>, with an optional C++ GDExtension managed through CMake. The templates provide project structure, build settings, and run configurations, giving you a starting point for developing and debugging your addon.<\/p>\n<p>When the new Asset Store launched in May, the Godot Foundation<a href=\"https:\/\/godotengine.org\/article\/partners_jetbrains_rider_asset_store_addons_support\/\" target=\"_blank\" rel=\"noopener\"> highlighted Rider\u2019s support for addon developers<\/a>. Whether you\u2019re sharing a small editor tool or maintaining a native extension, Rider now provides a dedicated workflow for addon development.&nbsp;<\/p>\n<h2>Try the next improvements in the 2026.3 EAP<\/h2>\n<p>The<a href=\"https:\/\/www.jetbrains.com\/rider\/nextversion\/\" target=\"_blank\" rel=\"noopener\"> Rider 2026.3 Early Access Program<\/a> includes more Godot improvements. These are available in preview builds; they aren\u2019t part of the current stable 2026.2 release. The stable Rider 2026.3 release is due later this year.<\/p>\n<p>For GDScript, the changes make it easier to trace how your scenes and scripts connect:<\/p>\n<ul>\n<li><strong>Get completion for unique node names.<\/strong> Rider suggests %UniqueName references using the nodes marked as unique in your scene.<\/li>\n<li><strong>Navigate from code to nodes.<\/strong> $Node and %UniqueNode references link to the corresponding scene node.<\/li>\n<li><strong>Find signal connections.<\/strong> <em>Find Usages<\/em> now includes connections made through Callable, helping you trace how a callback is connected.<\/li>\n<li><strong>Explore expressions while debugging.<\/strong> Code completion is available in the debugger\u2019s <em>Immediate <\/em>window.<\/li>\n<li><strong>Navigate longer scripts.<\/strong> Code regions appear in the <em>Structure <\/em>view, making it easier to move between sections.<\/li>\n<\/ul>\n<p>These changes are documented in the<a href=\"https:\/\/youtrack.jetbrains.com\/articles\/DOTNET-A-403\" target=\"_blank\" rel=\"noopener\"> EAP 2 notes<\/a>,<a href=\"https:\/\/youtrack.jetbrains.com\/articles\/DOTNET-A-407\" target=\"_blank\" rel=\"noopener\"> EAP 4 notes<\/a>, and<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-115251\" target=\"_blank\" rel=\"noopener\"> <em>Structure <\/em>view issue<\/a>.<\/p>\n<p>A new capability is available for C# debugging. EAP 3 introduced the ability to use the<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-140036\" target=\"_blank\" rel=\"noopener\"> <em>Remote Scene<\/em> tree and node inspector<\/a> while debugging C# to see the running game\u2019s live node tree and inspect node properties.<\/p>\n<p>Rider is more reliable when working with several Godot projects at once, too. When Rider launches Godot editors, it can<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-140286\" target=\"_blank\" rel=\"noopener\"> allocate separate language-server and debugger ports<\/a>, reducing conflicts between instances.&nbsp;<\/p>\n<p>We\u2019re still improving GDScript support, and the conversations at GodotCon helped us understand where it needs more work. Trying the EAP with your own project and telling us what gets in your way helps us make useful improvements.<\/p>\n<h2>Supporting the engine and the people building with it<\/h2>\n<p>Beyond the sponsorship, some of our work happens in Godot itself. In October 2025, an<a href=\"https:\/\/github.com\/godotengine\/godot\/pull\/109637\" target=\"_blank\" rel=\"noopener\"> upstream contribution<\/a> from Rider developer Ivan \u0160achov extended Godot\u2019s Debug Adapter Protocol support with scene selection and command-line arguments. That\u2019s what lets Rider debug specific scenes and pass arguments to a session. Because the change lives in Godot, other external development tools can build on it too.<\/p>\n<p>Conversations with developers and issue reports also help us identify specific problems to fix.<\/p>\n<p>Feedback from <a href=\"https:\/\/www.photonengine.com\/\" target=\"_blank\" rel=\"noopener\">Photon Engine<\/a> helped us identify an issue with how Rider handled GDExtension singletons in GDScript. The resulting<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-142351\" target=\"_blank\" rel=\"noopener\"> highlighting fix<\/a> is available in the 2026.3 EAP \u2013 a concrete example of a report from a Godot tool developer improving the experience for others. If you build tools or middleware for Godot and something in Rider gets in your way, we want to hear about it.<\/p>\n<p>For a walkthrough of Rider across scripting and native development, watch Matt Ellis\u2019s GodotCon session,<a href=\"https:\/\/www.youtube.com\/watch?v=TdaP98BnRyk\" target=\"_blank\" rel=\"noopener\"> <em>From Game to Engine: JetBrains Rider as Your One-Stop Godot IDE<\/em><\/a>.<\/p>\n<p>If you already work with an AI agent, Rider can fit into that workflow. <a href=\"https:\/\/www.jetbrains.com\/help\/rider\/Air_in_JetBrains_IDEs.html\" target=\"_blank\" rel=\"noopener\">Air<\/a>, our plugin for agentic development, is now in Early Access. It lets you start coding agents from Rider, follow what they\u2019re doing, attach your own skills, and review their changes, while you keep using the debugger and refactorings on the code they produce. Compatible agents you run outside Rider, such as Junie, Claude Code, or Codex, can connect to <a href=\"https:\/\/www.jetbrains.com\/help\/rider\/mcp-server.html\" target=\"_blank\" rel=\"noopener\">Rider\u2019s MCP server<\/a> and use its tools, from the <em>Rename<\/em> refactoring to run configurations.<\/p>\n<p>At JetBrains GameDev Day in September, Sharmishtha Sen showed one version of this in a Godot project. In <a href=\"https:\/\/www.youtube.com\/watch?v=L4gsyW2T6BY\" target=\"_blank\" rel=\"noopener\"><em>Prompt to Playable World: Live-Building AI-Driven PCG with Godot, C#, and Gemini<\/em><\/a>, she built a procedural generation pipeline in C# driven by language models, tuned in the Godot Inspector, and debugged in Rider.<\/p>\n<h2>Try it with your project<\/h2>\n<p><a href=\"https:\/\/www.jetbrains.com\/rider\/download\/\" target=\"_blank\" rel=\"noopener\">Download Rider<\/a> and install the<a href=\"https:\/\/store.godotengine.org\/asset\/jetbrains\/jetbrains-rider-integration\/\" target=\"_blank\" rel=\"noopener\"> Rider Integration addon<\/a> to get started. Rider is free for non-commercial use. To explore the preview features described above, download a<a href=\"https:\/\/www.jetbrains.com\/rider\/nextversion\/\" target=\"_blank\" rel=\"noopener\"> 2026.3 EAP<\/a> build.<\/p>\n<p>Open a scene, follow a signal connection, or debug the part of your game you\u2019re working on. We\u2019d like to hear what helps, and what still needs work. Share your feedback on<a href=\"https:\/\/youtrack.jetbrains.com\/issues\/RIDER\" target=\"_blank\" rel=\"noopener\"> YouTrack<\/a>.<\/p>\n<p>A few of us from the Rider team will be at <a href=\"https:\/\/godotengine.org\/article\/godotfest-2026\/\" target=\"_blank\" rel=\"noopener\">GodotFest<\/a> in Munich, Germany, on November 3\u20134. If you spot us, say hi and tell us what you\u2019d like Rider to do better.<\/p>\n<p>You can also support the engine directly through the<a href=\"https:\/\/fund.godotengine.org\/\" target=\"_blank\" rel=\"noopener\"> Godot Development Fund<\/a>.<\/p>\n<\/p><\/div>\n<p> <a href=\"#\"><\/a> <\/section>\n<div>\n<p><h2>Discover more<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>Fuente: <a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2026\/10\/29\/from-gdscript-to-gdextensions-one-ide-for-your-godot-code\/\">Art\u00edculo original<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>JetBrains has been a Platinum sponsor of the Godot Foundation since August 2025, and we\u2019ve renewed our sponsorship into 2027. Over the past year, Rider has expanded its Godot support to cover GDScript, C#, and C++ GDExtensions in one place. It\u2019s free for non-commercial use, including hobby projects, learning, open source, and content creation. At [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":6525,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"webixso_pending_account_ids":""},"categories":[46],"tags":[],"class_list":["post-6526","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-jetbrain"],"jetpack_publicize_connections":[],"_links":{"self":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts\/6526","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/comments?post=6526"}],"version-history":[{"count":0,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts\/6526\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/media\/6525"}],"wp:attachment":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/media?parent=6526"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/categories?post=6526"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/tags?post=6526"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}