Skip to content

Commit

Permalink
Reflect the changes to Rider setup after the fix of the project gener…
Browse files Browse the repository at this point in the history
…ation logic to support any OS without MSVC toolchain
  • Loading branch information
van800 committed Mar 9, 2025
1 parent 0b174c6 commit b9437e5
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 19 deletions.
2 changes: 2 additions & 0 deletions contributing/development/compiling/index.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
:allow_comments: False

.. _doc_compiling_index:

Building from source
====================

Expand Down
44 changes: 25 additions & 19 deletions contributing/development/configuring_an_ide/rider.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,35 +15,22 @@ JetBrains Rider
Importing the project
---------------------

You will need to install `Python <https://www.python.org/>`_ in your development environment
along with `MinGW <https://www.mingw-w64.org/downloads/>`_. You will also need the Visual Studio C++ Build Tools, which
you can install using the Visual Studio Installer. Ensure all dependencies are installed
before you continue to the next steps.

.. tip:: If you already use Visual Studio as your main IDE, you can use the same solution file in Rider.
Rider and Visual Studio use the same solution format, so you can switch between the two IDEs without rebuilding the solution file.
Debug configurations need to be changed when going from one IDE to another.

Rider requires a solution file to work on a C++ project. While Godot does not come
with a solution file, it can be generated using SCons.

- Navigate to the Godot root folder and open a Command Prompt or PowerShell window.
- Copy, paste and run the next command to generate the solution.
If you are starting from the scratch, make sure to follow :ref:`instructions<doc_compiling_index>`.
Install all the dependencies. Figure out the scons command for compiling targeting a specific platform.
Rider requires a solution file to work on a C++ project. While Godot does not come with a solution file, it can be generated using SCons.

::

scons platform=windows vsproj=yes dev_build=yes
- Add `vsproj=yes dev_build=yes` to the scons command

The ``vsproj`` parameter signals that you want Visual Studio solution generated.
The ``dev_build`` parameter makes sure the debug symbols are included, allowing to e.g. step through code using breakpoints.

- If you have Rider setup as your main IDE for .sln, you can now open the project by double-clicking on the ``godot.sln`` in the project root
or by using the **Open** option inside of Rider.
- Open the generated ``godot.sln`` in Rider.

.. note:: Rider could fail to build the solution.
If that is the case, try running `git clean -xdf` to remove all traces of the previous build artifacts
and regenerate the build files using the `scons` command again. Restarting the terminal and your
development environment may help.
.. note:: Ensure that the appropriate Solution configuration is selected on the Rider toolbar. It affects resolve of the SDKs, code analysis, build, run, etc.

Compiling and debugging the project
-----------------------------------
Expand Down Expand Up @@ -86,4 +73,23 @@ Alternatively you can use **Run > Attach to Process** to attach the debugger to
.. figure:: img/rider_attach_to_process_dialog.webp
:align: center

|
Debug visualizers
-----------------
Debug visualizers define how complex data structures are displayed in the debugger.
For Windows "natvis" (short for "Native Visualization") built-in with Godot are automatically used.
For other operating systems a similar functionality can be enabled separately.

Please follow `RIDER-123535 <https://youtrack.jetbrains.com/issue/RIDER-123535/nix-Debug-Godot-Cpp-from-Rider-pretty-printers-usability>`_.

Unit testing
------------
Utilize Rider :ref:`doctest<doc_unit_testing>` support.
Please follow `RIDER-122019 <https://youtrack.jetbrains.com/issue/RIDER-122019/Godot-doctest-Unit-Tests-Stuck-in-pending>`_.

Profiling
---------
Please refer to `the profiling instructions <https://github.com/JetBrains/godot-support/wiki/Profiling-Godot-engine-(native-code)-with-dotTrace-or-JetBrains-Rider>`_.

Please consult the `JetBrains Rider documentation <https://www.jetbrains.com/rider/documentation/>`_ for any specific information about the JetBrains IDE.

0 comments on commit b9437e5

Please sign in to comment.