Split IDE instructions into several pages, improve writing style
This removes the link to the KDevelop setup video tutorial as it's now outdated. IDE screenshots were also optimized losslessly using `oxipng -o6 --strip --zopfli`. See #3485.
@@ -1,405 +0,0 @@
|
||||
.. _doc_configuring_an_ide:
|
||||
|
||||
Configuring an IDE
|
||||
==================
|
||||
|
||||
We assume that you have already `cloned <https://github.com/godotengine/godot>`_
|
||||
and :ref:`compiled <toc-devel-compiling>` Godot.
|
||||
|
||||
You can easily develop Godot with any text editor and by invoking ``scons``
|
||||
on the command line, but if you want to work with an IDE (Integrated
|
||||
Development Environment), here are setup instructions for some popular ones:
|
||||
|
||||
- :ref:`Qt Creator <doc_configuring_an_ide_qtcreator>` (all desktop platforms)
|
||||
- :ref:`Kdevelop <doc_configuring_an_ide_kdevelop>` (all desktop platforms)
|
||||
- :ref:`Xcode <doc_configuring_an_ide_xcode>` (macOS)
|
||||
- :ref:`Visual Studio <doc_configuring_an_ide_vs>` (Windows)
|
||||
- :ref:`Visual Studio Code<doc_configuring_an_ide_vscode>` (all desktop platforms)
|
||||
- :ref:`Android Studio<doc_configuring_an_ide_android_studio>` (all desktop platforms)
|
||||
- :ref:`CLion<doc_configuring_an_ide_clion>` (all desktop platforms)
|
||||
|
||||
It is possible to use other IDEs, but their setup is not documented yet.
|
||||
|
||||
.. _doc_configuring_an_ide_qtcreator:
|
||||
|
||||
Qt Creator
|
||||
----------
|
||||
|
||||
Importing the project
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
- Choose *New Project* -> *Import Project* -> *Import Existing Project*.
|
||||
|
||||
.. image:: img/qtcreator-new-project.png
|
||||
|
||||
- Set the path to your Godot root directory and enter the project name.
|
||||
|
||||
.. image:: img/qtcreator-set-project-path.png
|
||||
|
||||
- Here you can choose which folders and files will be visible to the project. C/C++ files
|
||||
are added automatically. Potentially useful additions: \*.py for buildsystem files, \*.java for Android development,
|
||||
\*.mm for macOS. Click "Next".
|
||||
|
||||
.. image:: img/qtcreator-apply-import-filter.png
|
||||
|
||||
- Click *Finish*.
|
||||
- Add a line containing ``.`` to *project_name.includes* to get working code completion.
|
||||
|
||||
.. image:: img/qtcreator-project-name-includes.png
|
||||
|
||||
Build and run
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
Build configuration:
|
||||
|
||||
- Click on *Projects* and open the *Build* tab.
|
||||
- Delete the pre-defined ``make`` build step.
|
||||
|
||||
.. image:: img/qtcreator-projects-build.png
|
||||
|
||||
- Click *Add Build Step* -> *Custom Process Step*.
|
||||
|
||||
.. image:: img/qtcreator-add-custom-process-step.png
|
||||
|
||||
- Type ``scons`` in the *Command* field. If it fails with 'Could not start process "scons"',
|
||||
it can mean that ``scons`` is not in your ``PATH`` environment variable, so you may have to
|
||||
use the full path to the SCons binary.
|
||||
- Fill the *Arguments* field with your compilation options. (e.g.: ``p=linuxbsd target=debug -j 4``)
|
||||
|
||||
.. image:: img/qtcreator-set-scons-command.png
|
||||
|
||||
Run configuration:
|
||||
|
||||
- Open the *Run* tab.
|
||||
- Point the *Executable* to your compiled Godot binary (e.g: ``%{buildDir}/bin/godot.linuxbsd.opt.tools.64``)
|
||||
- If you want to run a specific game or project, point *Working directory* to the game directory.
|
||||
- If you want to run the editor, add ``-e`` to the *Command line arguments* field.
|
||||
|
||||
.. image:: img/qtcreator-run-command.png
|
||||
|
||||
Updating sources after pulling latest commits
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
As a developer you usually want to frequently pull the latest commits
|
||||
from the upstream git repository or a specific fork etc. However, this
|
||||
brings a little problem with it: as the development continues, source files
|
||||
(and folders) are added or removed. These changes need to be reflected in
|
||||
your project files for Qt Creator too, so you continue to have a nice
|
||||
experience coding in it. A simple way to check is to right click
|
||||
at your root folder in the "Projects View" and click on "Edit files..."
|
||||
|
||||
.. image:: img/qtcreator-edit-files-menu.png
|
||||
|
||||
Now a new dialog should appear that is similar in functionality to the one in the third step
|
||||
of the "Importing the project" section. Here you can check whether you want to add/remove
|
||||
specific files and/or folders. You can choose by clicking with your mouse or just simply by
|
||||
clicking the "Apply Filter" button. A simple click on "Ok" and you're ready to continue your work.
|
||||
|
||||
.. image:: img/qtcreator-edit-files-dialog.png
|
||||
|
||||
Code style configuration
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Developers must follow the project's :ref:`code style <doc_code_style_guidelines>`
|
||||
and IDE should help them to do it. By default, Qt Creator does use spaces for indentation
|
||||
which is incorrect for Godot project. You can change this behavior by
|
||||
changing the "Code Style" in *Options* -> *C++*.
|
||||
|
||||
.. image:: img/qtcreator-options-cpp.png
|
||||
|
||||
Click on *Edit* to change the current settings, then click on *Copy Built-in Code Style* button
|
||||
to set a new code style. Set a name for it (e.g. Godot) and change the Tab policy
|
||||
to be *Tabs Only*.
|
||||
|
||||
.. image:: img/qtcreator-edit-codestyle.png
|
||||
|
||||
.. _doc_configuring_an_ide_kdevelop:
|
||||
|
||||
KDevelop
|
||||
--------
|
||||
|
||||
`KDevelop <https://www.kdevelop.org>`_ is a free, open source IDE for all desktop platforms.
|
||||
|
||||
You can find a video tutorial `here <https://www.youtube.com/watch?v=yNVoWQi9TJA>`_.
|
||||
Or you may follow this text version tutorial.
|
||||
|
||||
Start by opening KDevelop and choosing "open project".
|
||||
|
||||
.. image:: img/kdevelop_newproject.png
|
||||
|
||||
Choose the directory where you cloned Godot.
|
||||
|
||||
On the next screen, choose "Custom Build System" for the *Project manager*.
|
||||
|
||||
.. image:: img/kdevelop_custombuild.png
|
||||
|
||||
Now that the project has been imported, open the project configuration.
|
||||
|
||||
.. image:: img/kdevelop_openconfig.png
|
||||
|
||||
Add the following includes/imports:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
. // a dot to indicate the root of the Godot project
|
||||
core/
|
||||
core/os/
|
||||
core/math/
|
||||
drivers/
|
||||
platform/linuxbsd/ // make that platform/osx/ if you're using macOS
|
||||
|
||||
.. image:: img/kdevelop_addincludes.png
|
||||
|
||||
Apply the changes.
|
||||
|
||||
Switch to the "Custom Build System" tab. Add a build configuration
|
||||
and keep the build directory blank. Enable build tools and add ``scons``
|
||||
as the executable then add ``platform=linuxbsd target=debug`` (``platform=osx``
|
||||
if you're on macOS) as the arguments.
|
||||
|
||||
.. image:: img/kdevelop_buildconfig.png
|
||||
|
||||
Next we need to tell KDevelop where to find the binary.
|
||||
From the "Run" menu, choose "Configure Launches".
|
||||
|
||||
.. image:: img/kdevelop_configlaunches.png
|
||||
|
||||
Click "Add" if no launcher exists. Then add the path to your
|
||||
executable in the executable section. Your executable should be located
|
||||
in the ``bin/`` sub-directory and should be named something like
|
||||
``godot.linuxbsd.tools.64`` (the name could be different depending on your
|
||||
platform and depending on your build options).
|
||||
|
||||
.. image:: img/kdevelop_configlaunches2.png
|
||||
|
||||
That's it! Now you should be good to go :)
|
||||
|
||||
|
||||
.. _doc_configuring_an_ide_xcode:
|
||||
|
||||
Xcode
|
||||
-----
|
||||
|
||||
Project setup
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
- Create an Xcode external build project anywhere
|
||||
|
||||
.. image:: img/xcode_1_create_external_build_project.png
|
||||
|
||||
- Set the *Build tool* to the path to scons
|
||||
|
||||
Modify Build Target's Xcode Info Tab:
|
||||
|
||||
- Set *Arguments* to something like: platform=osx tools=yes bits=64 target=debug
|
||||
- Set *Directory* to the path to Godot's source folder. Keep it blank if project is already there.
|
||||
- You may uncheck *Pass build settings in environment*
|
||||
|
||||
.. image:: img/xcode_2_configure_scons.png
|
||||
|
||||
Add a Command Line Target:
|
||||
|
||||
- Go to Xcode File > New > Target... and add a new Xcode command line target
|
||||
|
||||
.. image:: img/xcode_3_add_new_target.png
|
||||
|
||||
.. image:: img/xcode_4_select_command_line_target.png
|
||||
|
||||
- Name it something so you know not to compile with this target
|
||||
- e.g. ``GodotXcodeIndex``
|
||||
- Goto the newly created target's *Build Settings* tab and search for *Header Search Paths*
|
||||
- Set *Header Search Paths* to an absolute path to Godot's source folder
|
||||
- Make it recursive by adding two \*'s to the end of the path
|
||||
- e.g. ``/Users/me/repos/godot-source/\**``
|
||||
|
||||
Add Godot Source to the Project:
|
||||
|
||||
- Drag and drop Godot source into project file browser.
|
||||
- Uncheck *Create External Build System*
|
||||
|
||||
.. image:: img/xcode_5_after_add_godot_source_to_project.png
|
||||
|
||||
- Click Next
|
||||
- Select *create groups*
|
||||
|
||||
.. image:: img/xcode_6_after_add_godot_source_to_project_2.png
|
||||
|
||||
- Check off only your command line target in the *Add to targets* section
|
||||
- Click finish. Xcode will now index the files.
|
||||
- Grab a cup of coffee... Maybe make something to eat, too
|
||||
- You should have jump to definition, auto completion, and full syntax highlighting when it is done.
|
||||
|
||||
Scheme setup
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Edit Build Scheme of External Build Target:
|
||||
|
||||
- Open scheme editor of external build target
|
||||
- Expand the *Build* menu
|
||||
- Goto *Post Actions*
|
||||
- Add a new script run action, select your project in ``Provide build settings from`` as this allows you to use ``${PROJECT_DIR}`` variable.
|
||||
|
||||
.. image:: img/xcode_7_setup_build_post_action.png
|
||||
|
||||
- Write a script that gives the binary a name that Xcode will recognize
|
||||
- e.g. ``ln -f ${PROJECT_DIR}/godot/bin/godot.osx.tools.64 ${PROJECT_DIR}/godot/bin/godot``
|
||||
- Build the external build target
|
||||
|
||||
Edit Run Scheme of External Build Target:
|
||||
|
||||
- Open the scheme editor again
|
||||
- Click Run
|
||||
|
||||
.. image:: img/xcode_8_setup_run_scheme.png
|
||||
|
||||
- Set the *Executable* to the file you linked in your post build action script
|
||||
- Check *Debug executable* if it isn't already
|
||||
- You can go to *Arguments* tab and add an -e and a -path to a project to debug the editor
|
||||
not the project selection screen
|
||||
|
||||
Test it:
|
||||
|
||||
- Set a breakpoint in platform/osx/godot_main_osx.mm
|
||||
- It should break at the point!
|
||||
|
||||
|
||||
.. _doc_configuring_an_ide_vs:
|
||||
|
||||
Visual Studio
|
||||
-------------
|
||||
|
||||
Visual Studio Community is free for non-commercial use and has many useful features,
|
||||
such as memory view, performance view, source control and more.
|
||||
You can get it `from Microsoft <https://visualstudio.microsoft.com/downloads/>`__.
|
||||
|
||||
Setup
|
||||
^^^^^
|
||||
|
||||
To start developing with Visual Studio, follow these steps:
|
||||
|
||||
- Open the Visual Studio Installer and install the C++ package:
|
||||
|
||||
.. image:: img/vs_1_install_cpp_package.png
|
||||
|
||||
- Open a Command Prompt or PowerShell window, use ``cd`` to reach the Godot source
|
||||
directory and run ``scons platform=windows vsproj=yes``.
|
||||
|
||||
- Now open the Godot folder by clicking **Open a project or solution** and choose
|
||||
``godot.sln``.
|
||||
- You can also double-click the ``godot.sln`` file in Explorer.
|
||||
|
||||
You can now start developing with Visual Studio.
|
||||
|
||||
Debugging
|
||||
^^^^^^^^^
|
||||
|
||||
Visual Studio features a powerful debugger. This allows the user to examine Godot's
|
||||
source code, stop at specific points in the code, make changes, and view them on the run.
|
||||
|
||||
.. note:: Debugging the Godot Engine inside the editor will require an extra setup step.
|
||||
|
||||
Because opening Godot opens the Project Manager at first instead of the project
|
||||
you're working on, the debugger will detach as soon as you open a project.
|
||||
This means that the debugger will stop, even though Godot is still running in
|
||||
another process.
|
||||
|
||||
To overcome this, you need to edit the debugging command line arguments in VS. In your
|
||||
project, click **Project > Project Properties**:
|
||||
|
||||
.. image:: img/vs_2_project_properties.png
|
||||
|
||||
Then add this to the command arguments:
|
||||
|
||||
.. image:: img/vs_3_debug_command_line.png
|
||||
|
||||
- The ``-e`` flag is for entering the editor directly (which skips the Project Manager).
|
||||
- The ``--path`` argument should be an *absolute* path to a project directory (not a
|
||||
`project.godot` file).
|
||||
|
||||
To learn more about command line arguments, refer to the
|
||||
:ref:`command line tutorial <doc_command_line_tutorial>`.
|
||||
|
||||
To check that everything is working, put a breakpoint in ``main.cpp`` and press F5 to
|
||||
start debugging.
|
||||
|
||||
.. image:: img/vs_4_debugging_main.png
|
||||
|
||||
|
||||
.. _doc_configuring_an_ide_vscode:
|
||||
|
||||
Visual Studio Code
|
||||
------------------
|
||||
|
||||
- Ensure that C/C++ extension is installed. You can find instructions in `docs <https://code.visualstudio.com/docs/languages/cpp>`_.
|
||||
|
||||
- Open cloned godot folder in VS Code with ``File > Open Folder...``
|
||||
|
||||
In order to build the project, you need two configuration files: *launch.json* and *tasks.json*.
|
||||
To create them:
|
||||
|
||||
- Open *Debug* view by pressing :kbd:`Ctrl + Shift + D` and select cogwheel with an orange dot:
|
||||
|
||||
.. image:: img/vscode_1_create_launch.json.png
|
||||
|
||||
- Select *C++ (GDB/LLDB)* (it might be named differently on macOS or Windows)
|
||||
|
||||
- Update *launch.json* to match:
|
||||
|
||||
.. image:: img/vscode_2_launch.json.png
|
||||
|
||||
(Note that *godot.linuxbsd.tools.64* in "program" value might be named differently on macOS or Windows)
|
||||
|
||||
- Create *tasks.json* by starting the Debug process with :kbd:`F5`. VS Code will show a dialog with a *Configure Task* button. Tap it and select *Create tasks.json file from template*, then select *Others*
|
||||
|
||||
- Update *tasks.json* to match:
|
||||
|
||||
.. image:: img/vscode_3_tasks.json.png
|
||||
|
||||
(Note that *platform=linuxbsd* will be different for macOX and Windows)
|
||||
|
||||
- You can now start the Debug process again to test that everything works.
|
||||
|
||||
- If the build phase fails, check the console for hints. On Linux, it's most
|
||||
likely due to missing dependencies. Check :ref:`doc_compiling_for_linuxbsd`.
|
||||
|
||||
|
||||
.. _doc_configuring_an_ide_android_studio:
|
||||
|
||||
Android Studio
|
||||
--------------
|
||||
|
||||
`Android Studio <https://developer.android.com/studio>`_ is a `JetBrains <https://www.jetbrains.com/>`_ IDE for Android development. It has a feature-rich editor which supports Java and C/C++, so it can be used for development of the Godot core engine, and Android platform codebases.
|
||||
|
||||
Project setup
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
- From the Android Studio *Welcome to Android Studio* window, select *Open an existing Android Studio project*
|
||||
|
||||
.. image:: img/android_studio_setup_project_1.png
|
||||
|
||||
- Navigate to ``<godot root directory>/platform/android/java`` and select the ``settings.gradle`` gradle file.
|
||||
- Android Studio will import and index the project.
|
||||
- To build the project, follow the :ref:`compiling instructions <toc-devel-compiling>`.
|
||||
|
||||
.. _doc_configuring_an_ide_clion:
|
||||
|
||||
CLion
|
||||
-----
|
||||
|
||||
`CLion <https://www.jetbrains.com/clion/>`_ is a commercial IDE for C++. It requires a ``CMakeLists.txt`` file as a project file, which is problematic for Godot which uses the SCons buildsystem and not CMake. However, there is a ``CMakeLists.txt`` configuration for :ref:`Android Studio <doc_configuring_an_ide_android_studio>` which can also be used by CLion.
|
||||
|
||||
- Choose *File* -> *Open*.
|
||||
|
||||
- Navigation to your Godot Git clone, and select the folder ``platform/android/java/lib`` (the ``CMakeLists.txt`` file is located there). Select the folder, not the ``CMakeLists.txt file``. Then click *Ok*.
|
||||
|
||||
.. image:: img/clion_1_open.png
|
||||
|
||||
- If this popup window appears, select *This window* to open the project.
|
||||
|
||||
.. image:: img/clion_2_this_window.png
|
||||
|
||||
- Choose *Tools* -> *CMake* -> *Change Project Root* and select the root Godot folder.
|
||||
|
||||
.. image:: img/clion_3_change_project_root.png
|
||||
|
||||
- You should be now be able to see all the project files. Autocomplete should work, when the project finish indexing.
|
||||
@@ -0,0 +1,21 @@
|
||||
.. _doc_configuring_an_ide_android_studio:
|
||||
|
||||
Android Studio
|
||||
==============
|
||||
|
||||
`Android Studio <https://developer.android.com/studio>`_ is a free
|
||||
`JetBrains <https://www.jetbrains.com/>`_ IDE for Android development.
|
||||
It has a feature-rich editor which supports Java and C/C++. It can be used to
|
||||
work on Godot's core engine as well as the Android platform codebase.
|
||||
|
||||
- From Android Studio's welcome window, select
|
||||
**Open an existing Android Studio project**.
|
||||
|
||||
.. image:: img/android_studio_setup_project_1.png
|
||||
|
||||
- Navigate to ``<Godot root directory>/platform/android/java`` and select the ``settings.gradle`` gradle file.
|
||||
- Android Studio will import and index the project.
|
||||
- To build the project, follow the :ref:`compiling instructions <toc-devel-compiling>`.
|
||||
|
||||
If you run into any issues, ask for help in one of
|
||||
`Godot's community channels <https://godotengine.org/community>`__.
|
||||
@@ -0,0 +1,34 @@
|
||||
.. _doc_configuring_an_ide_clion:
|
||||
|
||||
CLion
|
||||
=====
|
||||
|
||||
`CLion <https://www.jetbrains.com/clion/>`_ is a commercial IDE for C++.
|
||||
It requires a ``CMakeLists.txt`` file as a project file, which is problematic
|
||||
for Godot which uses the SCons buildsystem instead of CMake.
|
||||
However, there is a ``CMakeLists.txt`` configuration for
|
||||
:ref:`Android Studio <doc_configuring_an_ide_android_studio>` which can also
|
||||
be used by CLion.
|
||||
|
||||
- If you've already opened another project, choose **File > Open** at the top of
|
||||
the CLion window. Otherwise, choose the option to import an existing project
|
||||
in the Welcome window.
|
||||
- Navigate to your Godot Git clone then select the folder
|
||||
``platform/android/java/lib`` - the ``CMakeLists.txt`` file is located there.
|
||||
Select the folder (*not* the ``CMakeLists.txt file``), then click **OK**.
|
||||
|
||||
.. image:: img/clion_1_open.png
|
||||
|
||||
- If this popup window appears, select **This Window** to open the project:
|
||||
|
||||
.. image:: img/clion_2_this_window.png
|
||||
|
||||
- Choose **Tools > CMake >Change Project Root** and select the root Godot folder.
|
||||
|
||||
.. image:: img/clion_3_change_project_root.png
|
||||
|
||||
- You should be now be able to see all the project files. Autocomplete should
|
||||
work once the project has finished indexing.
|
||||
|
||||
If you run into any issues, ask for help in one of
|
||||
`Godot's community channels <https://godotengine.org/community>`__.
|
||||
|
After Width: | Height: | Size: 63 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 94 KiB |
|
After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 93 KiB |
|
After Width: | Height: | Size: 70 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 43 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 8.0 KiB |
|
After Width: | Height: | Size: 35 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 5.8 KiB |
|
After Width: | Height: | Size: 8.8 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 8.8 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 8.3 KiB |
|
After Width: | Height: | Size: 6.6 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 11 KiB |
@@ -0,0 +1,23 @@
|
||||
Configuring an IDE
|
||||
==================
|
||||
|
||||
We assume that you have already `cloned <https://github.com/godotengine/godot>`_
|
||||
and :ref:`compiled <toc-devel-compiling>` Godot.
|
||||
|
||||
You can easily develop Godot with any text editor and by invoking ``scons``
|
||||
on the command line, but if you want to work with an IDE (Integrated
|
||||
Development Environment), here are setup instructions for some popular ones:
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:name: toc-devel-configuring_an_ide
|
||||
|
||||
android_studio
|
||||
clion
|
||||
kdevelop
|
||||
qt_creator
|
||||
visual_studio_code
|
||||
visual_studio
|
||||
xcode
|
||||
|
||||
It is possible to use other IDEs, but their setup is not documented yet.
|
||||
@@ -0,0 +1,58 @@
|
||||
.. _doc_configuring_an_ide_kdevelop:
|
||||
|
||||
KDevelop
|
||||
========
|
||||
|
||||
`KDevelop <https://www.kdevelop.org>`_ is a free, open source IDE for all desktop platforms.
|
||||
|
||||
Start by opening KDevelop and choosing **Open Project**.
|
||||
|
||||
.. image:: img/kdevelop_newproject.png
|
||||
|
||||
Choose the directory where you cloned Godot.
|
||||
|
||||
On the next screen, choose **Custom Build System** for the **Project Manager**.
|
||||
|
||||
.. image:: img/kdevelop_custombuild.png
|
||||
|
||||
Now that the project has been imported, open the project configuration.
|
||||
|
||||
.. image:: img/kdevelop_openconfig.png
|
||||
|
||||
Add the following includes/imports:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
. // a dot to indicate the root of the Godot project
|
||||
core/
|
||||
core/os/
|
||||
core/math/
|
||||
drivers/
|
||||
platform/linuxbsd/ // make that platform/osx/ if you're using macOS
|
||||
|
||||
.. image:: img/kdevelop_addincludes.png
|
||||
|
||||
Apply the changes.
|
||||
|
||||
Switch to the **Custom Build System** tab. Add a build configuration
|
||||
and keep the build directory blank. Enable build tools and add ``scons``
|
||||
as the executable then add ``platform=linuxbsd target=debug`` (``platform=osx``
|
||||
if you're on macOS) as the arguments.
|
||||
|
||||
.. image:: img/kdevelop_buildconfig.png
|
||||
|
||||
Next, we need to tell KDevelop where to find the binary.
|
||||
From the **Run** menu, choose **Configure Launches**.
|
||||
|
||||
.. image:: img/kdevelop_configlaunches.png
|
||||
|
||||
Click **Add** if no launcher exists. Then add the path to your
|
||||
executable in the executable section. Your executable should be located
|
||||
in the ``bin/`` subdirectory and should be named something like
|
||||
``godot.linuxbsd.tools.64`` (the name could be different depending on your
|
||||
platform and build options).
|
||||
|
||||
.. image:: img/kdevelop_configlaunches2.png
|
||||
|
||||
If you run into any issues, ask for help in one of
|
||||
`Godot's community channels <https://godotengine.org/community>`__.
|
||||
@@ -0,0 +1,105 @@
|
||||
.. _doc_configuring_an_ide_qtcreator:
|
||||
|
||||
Qt Creator
|
||||
==========
|
||||
|
||||
Qt Creator is a free, open source IDE for all desktop platforms.
|
||||
|
||||
Importing the project
|
||||
---------------------
|
||||
|
||||
- Choose **New Project > Import Project > Import Existing Project**.
|
||||
|
||||
.. image:: img/qtcreator-new-project.png
|
||||
|
||||
- Set the path to your Godot root directory and enter the project name.
|
||||
|
||||
.. image:: img/qtcreator-set-project-path.png
|
||||
|
||||
- Here you can choose which folders and files will be visible to the project.
|
||||
C/C++ files are added automatically. Potentially useful additions:
|
||||
``*.py`` for buildsystem files, ``*.java`` for Android platform development,
|
||||
``*.mm`` for macOS platform development. Click **Next**.
|
||||
|
||||
.. image:: img/qtcreator-apply-import-filter.png
|
||||
|
||||
- Click **Finish**.
|
||||
- Add a line containing ``.`` to ``project_name.includes`` to get working
|
||||
code completion.
|
||||
|
||||
.. image:: img/qtcreator-project-name-includes.png
|
||||
|
||||
Build and run
|
||||
--------------
|
||||
|
||||
Build configuration:
|
||||
|
||||
- Click on **Projects** and open the **Build** tab.
|
||||
- Delete the predefined ``make`` build step.
|
||||
|
||||
.. image:: img/qtcreator-projects-build.png
|
||||
|
||||
- Click **Add Build Step > Custom Process Step**.
|
||||
|
||||
.. image:: img/qtcreator-add-custom-process-step.png
|
||||
|
||||
- Type ``scons`` in the **Command** field. If it fails with
|
||||
``Could not start process "scons"``, it can mean that ``scons`` is not in
|
||||
your ``PATH`` environment variable. In this case, you'll have to specify the
|
||||
full path to the SCons binary.
|
||||
- Fill the **Arguments** field with your compilation options
|
||||
(e.g.: ``p=linuxbsd target=debug -j 4``).
|
||||
|
||||
.. image:: img/qtcreator-set-scons-command.png
|
||||
|
||||
Run configuration:
|
||||
|
||||
- Open the **Run** tab.
|
||||
- Point the **Executable** to your compiled Godot binary
|
||||
(e.g: ``%{buildDir}/bin/godot.linuxbsd.opt.tools.64``).
|
||||
- If you want to run a specific project, point **Working directory** to the
|
||||
project folder.
|
||||
- If you want to run the editor, add ``-e`` to the **Command line arguments**
|
||||
field.
|
||||
|
||||
.. image:: img/qtcreator-run-command.png
|
||||
|
||||
Updating sources after pulling latest commits
|
||||
---------------------------------------------
|
||||
|
||||
As a developer, you usually want to frequently pull the latest commits from the
|
||||
upstream Git repository or a specific fork. However, this brings a problem with
|
||||
it: as the development continues, source files (and folders) are added or
|
||||
removed. These changes need to be reflected in your project files for Qt Creator
|
||||
too, so you continue to have a nice programming experience. A simple way to
|
||||
check is to right click at your root folder in the **Projects View** and click
|
||||
on **Edit files...**.
|
||||
|
||||
.. image:: img/qtcreator-edit-files-menu.png
|
||||
|
||||
Now a new dialog should appear that is similar in functionality to the one in
|
||||
the third step of the *Importing the project* section above. Here, you can check
|
||||
whether you want to add/remove specific files and/or folders. You can choose by
|
||||
clicking with your mouse or just simply by clicking the **Apply Filter** button.
|
||||
Click on **OK** and you're ready to continue working.
|
||||
|
||||
.. image:: img/qtcreator-edit-files-dialog.png
|
||||
|
||||
Code style configuration
|
||||
------------------------
|
||||
|
||||
Developers must follow the project's :ref:`code style <doc_code_style_guidelines>`
|
||||
and the IDE should help them follow it. By default, Qt Creator does use spaces
|
||||
for indentation which doesn't match the Godot code style guidelines. You can
|
||||
change this behavior by changing the **Code Style** in **Options > C++**.
|
||||
|
||||
.. image:: img/qtcreator-options-cpp.png
|
||||
|
||||
Click on **Edit** to change the current settings, then click on
|
||||
**Copy Built-in Code Style** button to set a new code style. Set a name for it
|
||||
(e.g. Godot) and change the Tab policy to be **Tabs Only**.
|
||||
|
||||
.. image:: img/qtcreator-edit-codestyle.png
|
||||
|
||||
If you run into any issues, ask for help in one of
|
||||
`Godot's community channels <https://godotengine.org/community>`__.
|
||||
@@ -0,0 +1,64 @@
|
||||
.. _doc_configuring_an_ide_vs:
|
||||
|
||||
Visual Studio
|
||||
=============
|
||||
|
||||
Visual Studio Community is a Windows-only IDE that's free for non-commercial use.
|
||||
It has many useful features, such as memory view, performance view, source
|
||||
control and more. You can get it
|
||||
`from Microsoft <https://visualstudio.microsoft.com/downloads/>`__.
|
||||
|
||||
Setup
|
||||
-----
|
||||
|
||||
To start developing with Visual Studio, follow these steps:
|
||||
|
||||
- Open the Visual Studio Installer and install the C++ package:
|
||||
|
||||
.. image:: img/vs_1_install_cpp_package.png
|
||||
|
||||
- Open a Command Prompt or PowerShell window, use ``cd`` to reach the Godot source
|
||||
directory and run ``scons platform=windows vsproj=yes``.
|
||||
|
||||
- Now open the Godot folder by clicking **Open a project or solution** and choose
|
||||
``godot.sln``.
|
||||
- You can also double-click the ``godot.sln`` file in Explorer.
|
||||
|
||||
You can now start developing with Visual Studio.
|
||||
|
||||
Debugging
|
||||
---------
|
||||
|
||||
Visual Studio features a powerful debugger. This allows the user to examine Godot's
|
||||
source code, stop at specific points in the code, make changes, and view them on the run.
|
||||
|
||||
.. note:: Debugging the Godot Engine inside the editor will require an extra setup step.
|
||||
|
||||
Because opening Godot opens the Project Manager at first instead of the project
|
||||
you're working on, the debugger will detach as soon as you open a project.
|
||||
This means that the debugger will stop, even though Godot is still running in
|
||||
another process.
|
||||
|
||||
To overcome this, you need to edit the debugging command line arguments in VS. In your
|
||||
project, click **Project > Project Properties**:
|
||||
|
||||
.. image:: img/vs_2_project_properties.png
|
||||
|
||||
Then add this to the command arguments:
|
||||
|
||||
.. image:: img/vs_3_debug_command_line.png
|
||||
|
||||
- The ``-e`` flag is for entering the editor directly (which skips the Project Manager).
|
||||
- The ``--path`` argument should be an *absolute* path to a project directory (not a
|
||||
`project.godot` file).
|
||||
|
||||
To learn more about command line arguments, refer to the
|
||||
:ref:`command line tutorial <doc_command_line_tutorial>`.
|
||||
|
||||
To check that everything is working, put a breakpoint in ``main.cpp`` and press F5 to
|
||||
start debugging.
|
||||
|
||||
.. image:: img/vs_4_debugging_main.png
|
||||
|
||||
If you run into any issues, ask for help in one of
|
||||
`Godot's community channels <https://godotengine.org/community>`__.
|
||||
@@ -0,0 +1,49 @@
|
||||
.. _doc_configuring_an_ide_vscode:
|
||||
|
||||
Visual Studio Code
|
||||
==================
|
||||
|
||||
Visual Studio Code is a free cross-platform IDE (not to be confused with
|
||||
:ref:`doc_configuring_an_ide_vs`). You can get it
|
||||
`from Microsoft <https://code.visualstudio.com/>`__.
|
||||
|
||||
|
||||
- Make sure the C/C++ extension is installed. You can find instructions in
|
||||
the `documentation <https://code.visualstudio.com/docs/languages/cpp>`_.
|
||||
- Open the cloned Godot folder in Visual Studio Code with
|
||||
**File > Open Folder...**.
|
||||
|
||||
In order to build the project, you need two configuration files:
|
||||
``launch.json`` and ``tasks.json``. To create them:
|
||||
|
||||
- Open the **Debug** view by pressing :kbd:`Ctrl + Shift + D` and select the
|
||||
cogwheel with an orange dot:
|
||||
|
||||
.. image:: img/vscode_1_create_launch.json.png
|
||||
|
||||
- Select **C++ (GDB/LLDB)** (it might be named differently on macOS or Windows).
|
||||
|
||||
- Update ``launch.json`` to match:
|
||||
|
||||
.. image:: img/vscode_2_launch.json.png
|
||||
|
||||
If you're following this guide on macOS or Windows, you will have to adjust
|
||||
``godot.linuxbsd.tools.64`` accordingly.
|
||||
|
||||
- Create a ``tasks.json`` file by starting the Debug process with :kbd:`F5`.
|
||||
Visual Studio Code will show a dialog with a **Configure Task** button.
|
||||
Choose it and select **Create tasks.json file from template**, then select **Others**.
|
||||
|
||||
- Update ``tasks.json`` to match:
|
||||
|
||||
.. image:: img/vscode_3_tasks.json.png
|
||||
|
||||
If you're following this guide on macOS or Windows, you will have to adjust
|
||||
``platform=linuxbsd`` accordingly.
|
||||
|
||||
- You can now start the Debug process again to test that everything works.
|
||||
- If the build phase fails, check the console for hints. On Linux, it's most
|
||||
likely due to missing dependencies. Check :ref:`doc_compiling_for_linuxbsd`.
|
||||
|
||||
If you run into any issues, ask for help in one of
|
||||
`Godot's community channels <https://godotengine.org/community>`__.
|
||||
@@ -0,0 +1,95 @@
|
||||
.. _doc_configuring_an_ide_xcode:
|
||||
|
||||
Xcode
|
||||
=====
|
||||
|
||||
Xcode is a free macOS-only IDE. You can download it from the Mac App Store.
|
||||
|
||||
Project setup
|
||||
-------------
|
||||
|
||||
- Create an Xcode external build project anywhere.
|
||||
|
||||
.. image:: img/xcode_1_create_external_build_project.png
|
||||
|
||||
Go to the build target's **Info** tab, then:
|
||||
|
||||
- Set **Build Tool** to the full path to SCons.
|
||||
- Set **Arguments** to something like
|
||||
``platform=osx tools=yes bits=64 target=debug``.
|
||||
- Set **Directory** to the path to Godot's source folder.
|
||||
- You may uncheck **Pass build settings in environment**.
|
||||
|
||||
.. image:: img/xcode_2_configure_scons.png
|
||||
|
||||
Add a Command Line Tool target which will be used for indexing the project:
|
||||
|
||||
- In Xcode's menu, choose **File > New > Target...** and add a new Xcode
|
||||
command line tool target.
|
||||
|
||||
.. image:: img/xcode_3_add_new_target.png
|
||||
|
||||
.. image:: img/xcode_4_select_command_line_target.png
|
||||
|
||||
- Name it something so you know not to compile with this target (e.g. ``GodotXcodeIndex``).
|
||||
- Goto the newly created target's **Build Settings** tab and look for **Header Search Paths**.
|
||||
- Set **Header Search Paths** to the absolute path to Godot's source folder.
|
||||
- Make it recursive by adding two asterisks (``**``) to the end of the path,
|
||||
e.g. ``/Users/me/repos/godot-source/**``.
|
||||
|
||||
Add the Godot source to the project:
|
||||
|
||||
- Drag and drop Godot source into the project file browser.
|
||||
- Uncheck **Create external build system project**.
|
||||
|
||||
.. image:: img/xcode_5_after_add_godot_source_to_project.png
|
||||
|
||||
- Click **Next**.
|
||||
- Select **Create groups**.
|
||||
|
||||
.. image:: img/xcode_6_after_add_godot_source_to_project_2.png
|
||||
|
||||
- Check *only* your command line indexing target in the
|
||||
**Add to targets** section.
|
||||
- Click finish. Xcode will now index the files. This may take a few minutes.
|
||||
- Once Xcode is done indexing, you should have jump-to-definition,
|
||||
autocompletion, and full syntax highlighting.
|
||||
|
||||
Scheme setup
|
||||
------------
|
||||
|
||||
To enable debugging support, edit the external build target's build scheme:
|
||||
|
||||
- Open the scheme editor of the external build target.
|
||||
- Expand the **Build** menu.
|
||||
- Goto **Post Actions**.
|
||||
- Add a new script run action, select your project in **Provide build settings from**
|
||||
as this allows you to use the``${PROJECT_DIR}`` variable.
|
||||
|
||||
.. image:: img/xcode_7_setup_build_post_action.png
|
||||
|
||||
- Write a script that gives the binary a name that Xcode will recognize, such as:
|
||||
``ln -f ${PROJECT_DIR}/godot/bin/godot.osx.tools.64 ${PROJECT_DIR}/godot/bin/godot``
|
||||
- Build the external build target.
|
||||
|
||||
Edit the external build target's Run scheme:
|
||||
|
||||
- Open the scheme editor again.
|
||||
- Click **Run**.
|
||||
|
||||
.. image:: img/xcode_8_setup_run_scheme.png
|
||||
|
||||
- Set the **Executable** to the file you linked in your post-build action script.
|
||||
- Check **Debug executable** if it isn't checked already.
|
||||
- You can go to **Arguments** tab and specify the full path to a
|
||||
``project.godot`` file to debug the editor instead of the project manager.
|
||||
Alternatively, use ``--path`` to point to a project *folder* which will be
|
||||
run directly (instead of opening the editor).
|
||||
|
||||
Test the Run scheme:
|
||||
|
||||
- Set a breakpoint in ``platform/osx/godot_main_osx.mm``.
|
||||
- If all goes well, it should break at the specified breakpoint.
|
||||
|
||||
If you run into any issues, ask for help in one of
|
||||
`Godot's community channels <https://godotengine.org/community>`__.
|
||||
|
Before Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 119 KiB |
|
Before Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 118 KiB |
|
Before Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 58 KiB |
|
Before Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 5.7 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 6.1 KiB |
|
Before Width: | Height: | Size: 49 KiB |
|
Before Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 9.2 KiB |
|
Before Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 9.0 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 12 KiB |
@@ -6,7 +6,7 @@ Engine development
|
||||
:name: toc-devel-cpp
|
||||
|
||||
introduction_to_godot_development
|
||||
configuring_an_ide
|
||||
configuring_an_ide/index
|
||||
core_types
|
||||
variant_class
|
||||
object_class
|
||||
|
||||