Skip to content

Commit

Permalink
Merge pull request #9155 from AThousandShips/article_fix
Browse files Browse the repository at this point in the history
Fix incorrect uses of a/an
  • Loading branch information
mhilbrunner committed Mar 31, 2024
2 parents 2227328 + bd6cc66 commit d195c9d
Show file tree
Hide file tree
Showing 41 changed files with 80 additions and 79 deletions.
10 changes: 5 additions & 5 deletions about/faq.rst
Original file line number Diff line number Diff line change
Expand Up @@ -275,7 +275,7 @@ data directory. This is usually a good approach, but this means configuration fi
will not carry across machines if you copy the folder containing the Godot executable.
See :ref:`doc_data_paths` for more information.

If *true* portable operation is desired (e.g. for use on an USB stick),
If *true* portable operation is desired (e.g. for use on a USB stick),
follow the steps in :ref:`doc_data_paths_self_contained_mode`.

Why does Godot prioritize Vulkan and OpenGL over Direct3D?
Expand All @@ -287,10 +287,10 @@ available on (nearly) all platforms. Thanks to this design decision, a project
developed with Godot on Windows will run out of the box on Linux, macOS, and
more.

While Vulkan and OpenGL remain our primary focus for their open standard and
cross-platform benefits, Godot 4.3 introduced experimental support for Direct3D 12.
This addition aims to enhance performance and compatibility on platforms where
Direct3D 12 is prevalent, such as Windows and Xbox. However, Vulkan and OpenGL
While Vulkan and OpenGL remain our primary focus for their open standard and
cross-platform benefits, Godot 4.3 introduced experimental support for Direct3D 12.
This addition aims to enhance performance and compatibility on platforms where
Direct3D 12 is prevalent, such as Windows and Xbox. However, Vulkan and OpenGL
will continue as the default rendering backends on all platforms, including Windows.

Why does Godot aim to keep its core feature set small?
Expand Down
4 changes: 2 additions & 2 deletions about/system_requirements.rst
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ Desktop or laptop PC - Minimum

Vulkan drivers for these Windows versions are known to have issues with
memory leaks. As a result, it's recommended to stick to the Compatibility
rendering method when running Godot on an Windows version older than 10.
rendering method when running Godot on a Windows version older than 10.

Mobile device (smartphone/tablet) - Minimum
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down Expand Up @@ -252,7 +252,7 @@ Desktop or laptop PC - Minimum

Vulkan drivers for these Windows versions are known to have issues with
memory leaks. As a result, it's recommended to stick to the Compatibility
rendering method when running Godot on an Windows version older than 10.
rendering method when running Godot on a Windows version older than 10.

Mobile device (smartphone/tablet) - Minimum
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -397,7 +397,7 @@ For the folders accelerated by this option, multiple ``.cpp`` files are
compiled in each translation unit, so headers can be shared between multiple
files, which can dramatically decrease build times.

To make a SCU build, use the ``scu_build=yes`` SCons option.
To peform an SCU build, use the ``scu_build=yes`` SCons option.

.. note:: When developing a Pull Request using SCU builds, be sure to make a
regular build prior to submitting the PR. This is because SCU builds
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ These files should contain the following:
// Nothing to do here in this example.
}
Next, you need to create a ``SCsub`` file so the build system compiles
Next, you need to create an ``SCsub`` file so the build system compiles
this module:

.. code-block:: python
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ These files should contain the following:
// Nothing to do here in this example.
}
Next, we need to create a ``SCsub`` file so the build system compiles
Next, we need to create an ``SCsub`` file so the build system compiles
this module:

.. code-block:: python
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ pass.

The first important change in the mobile renderer is that the mobile renderer
does not use the RGBA16F texture formats that the desktop renderer does.
Instead, it is using a R10G10B10A2 UNORM texture format. This halves the bandwidth
Instead, it is using an R10G10B10A2 UNORM texture format. This halves the bandwidth
required and has further improvements as mobile hardware often further optimizes
for 32-bit formats. The tradeoff is that the mobile renderer has limited HDR
capabilities due to the reduced precision and maximum values in the color data.
Expand Down Expand Up @@ -421,7 +421,7 @@ begins. Godot's 2D drawing methods such as the Line2D node or some CanvasItem
strips and vertex colors, which don't require MSAA to work.

A 2D signed distance field representing LightOccluder2D nodes in the viewport is
automatically generated if an user shader requests it. This can be used for
automatically generated if a user shader requests it. This can be used for
various effects in custom shaders, such as 2D global illumination. It is also
used to calculate particle collisions in 2D.

Expand Down
2 changes: 1 addition & 1 deletion contributing/development/core_and_modules/unit_testing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ macros which allow to log test output in a format written by doctest.
+----------------+-----------------------------------------------------------------------------------------------------------+

Different reporters can be chosen at run-time. For instance, here's how the
output can be redirected to a XML file:
output can be redirected to an XML file:

.. code-block:: shell
Expand Down
6 changes: 3 additions & 3 deletions contributing/development/file_formats/tscn.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ If the file has no resources, ``load_steps`` is omitted. The engine will
still load the file correctly if ``load_steps`` is incorrect, but this will affect
loading bars and any other piece of code relying on that value.

``uid`` is an unique string-based identifier representing the scene. This is
``uid`` is a unique string-based identifier representing the scene. This is
used by the engine to track files that are moved around, even while the editor
is closed. Scripts can also load UID-based resources using the ``uid://`` path
prefix to avoid relying on filesystem paths. This makes it possible to move
Expand Down Expand Up @@ -279,8 +279,8 @@ External resources
~~~~~~~~~~~~~~~~~~

External resources are links to resources not contained within the TSCN file
itself. An external resource consists of a path, a type, an UID (used to map its
filesystem location to an unique identifier) and an ID (used to refer to the
itself. An external resource consists of a path, a type, a UID (used to map its
filesystem location to a unique identifier) and an ID (used to refer to the
resource in the scene file).

Godot always generates absolute paths relative to the resource directory and
Expand Down
2 changes: 1 addition & 1 deletion tutorials/3d/global_illumination/using_lightmap_gi.rst
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ Setting up
----------

First of all, before the lightmapper can do anything, the objects to be baked need
an UV2 layer and a texture size. An UV2 layer is a set of secondary texture coordinates
a UV2 layer and a texture size. A UV2 layer is a set of secondary texture coordinates
that ensures any face in the object has its own place in the UV map. Faces must
not share pixels in the texture.

Expand Down
2 changes: 1 addition & 1 deletion tutorials/animation/creating_movies.rst
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,7 @@ others will require a conversion step beforehand. `HandBrake <https://handbrake.
(GUI) and `FFmpeg <https://ffmpeg.org/>`__ (CLI) are popular open source tools
for this purpose. FFmpeg has a steeper learning curve, but it's more powerful.

The command below converts an AVI video to a MP4 (H.264) video with a Constant
The command below converts an AVI video to an MP4 (H.264) video with a Constant
Rate Factor (CRF) of 15. This results in a relatively large file, but is
well-suited for platforms that will re-encode your videos to reduce their size
(such as most video sharing websites):
Expand Down
22 changes: 11 additions & 11 deletions tutorials/animation/playing_videos.rst
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ of disk space.
(GUI) and `FFmpeg <https://ffmpeg.org/>`__ (CLI) are popular open source tools
for this purpose. FFmpeg has a steeper learning curve, but it's more powerful.

Here are example FFmpeg commands to convert a MP4 video to Ogg Theora. Since
Here are example FFmpeg commands to convert an MP4 video to Ogg Theora. Since
FFmpeg supports a lot of input formats, you should be able to use the commands
below with almost any input video format (AVI, MOV, WebM, …).

Expand Down Expand Up @@ -297,13 +297,13 @@ To implement the chroma key effect, follow these steps:
COLOR = vec4(color.rgb, fade_factor);
}
The shader uses the distance calculation to identify pixels close to the chroma key color and discards them,
effectively removing the selected color. Pixels that are slightly further away from the chroma key color are
faded based on the fade_factor, blending them smoothly with the surrounding colors.
This process creates the desired chroma key effect, making it appear as if the background has been replaced with
The shader uses the distance calculation to identify pixels close to the chroma key color and discards them,
effectively removing the selected color. Pixels that are slightly further away from the chroma key color are
faded based on the fade_factor, blending them smoothly with the surrounding colors.
This process creates the desired chroma key effect, making it appear as if the background has been replaced with
another image or video.

The code above represents a simple demonstration of the Chroma Key shader,
The code above represents a simple demonstration of the Chroma Key shader,
and users can customize it according to their specific requirements.

UI Controls
Expand Down Expand Up @@ -338,11 +338,11 @@ also make sure that the range of the sliders are appropriate, our settings are :
Signal Handling
^^^^^^^^^^^^^^^^

Connect the appropriate signal from the UI elements to the `Control` node's script.
you created in the `Control` node's script to control the chroma key effect.
These signal handlers will update the shader's uniform variables
Connect the appropriate signal from the UI elements to the `Control` node's script.
you created in the `Control` node's script to control the chroma key effect.
These signal handlers will update the shader's uniform variables
in response to user input.

Save and run the scene to see the chroma key effect in action! With the provided UI controls,
you can now adjust the chroma key color, pickup range, and fade amount in real-time, achieving the desired
Save and run the scene to see the chroma key effect in action! With the provided UI controls,
you can now adjust the chroma key color, pickup range, and fade amount in real-time, achieving the desired
chroma key functionality for your video content.
2 changes: 1 addition & 1 deletion tutorials/assets_pipeline/escn_exporter/material.rst
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,6 @@ file when the ``escn`` file opens in Godot.

.. image:: img/external_mat_option.jpg

``.material`` file can be assigned to any material slot to be a external resource.
``.material`` file can be assigned to any material slot to be an external resource.

.. image:: img/gd_dot_material.jpg
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,7 @@ These options are only visible if some of the above options are enabled:
use cases.
- **Occluder > Simplification Distance:** Only visible if **Generate >
Occluder** is set to **Mesh + Occluder** or **Occluder Only**. Higher values
result in a occluder mesh with fewer vertices (resulting in decreased CPU
result in an occluder mesh with fewer vertices (resulting in decreased CPU
utilization), at the cost of more occlusion culling issues (such as false
positives or false negatives). If you run into objects disappearing when they
shouldn't when the camera is near a certain mesh, try decreasing this value.
Expand Down
12 changes: 6 additions & 6 deletions tutorials/assets_pipeline/importing_audio_samples.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Each format has different advantages:
smaller file size, but require significantly more processing power to
play back.
- MP3 files use better compression than WAV with IMA-ADPCM, but worse than
Ogg Vorbis. This means that a MP3 file with roughly equal quality to
Ogg Vorbis. This means that an MP3 file with roughly equal quality to
Ogg Vorbis will be significantly larger. On the bright side, MP3 requires
less CPU usage to play back compared to Ogg Vorbis.

Expand Down Expand Up @@ -71,13 +71,13 @@ the FileSystem dock:

Import options in the Import dock after selecting a WAV file in the FileSystem dock

The set of options available after selecting a Ogg Vorbis or MP3 file is different:
The set of options available after selecting an Ogg Vorbis or MP3 file is different:

.. figure:: img/importing_audio_samples_import_options_mp3.webp
:align: center
:alt: Import options in the Import dock after selecting a MP3 file in the FileSystem dock
:alt: Import options in the Import dock after selecting an MP3 file in the FileSystem dock

Import options in the Import dock after selecting a MP3 file in the
Import options in the Import dock after selecting an MP3 file in the
FileSystem dock. Options are identical for Ogg Vorbis files.

After importing a sound, you can play it back using the AudioStreamPlayer,
Expand Down Expand Up @@ -246,9 +246,9 @@ If you double-click an Ogg Vorbis or MP3 file in the FileSystem dock (or choose

.. figure:: img/importing_audio_samples_advanced_import_settings.webp
:align: center
:alt: Advanced dialog when double-clicking a Ogg Vorbis or MP3 file in the FileSystem dock
:alt: Advanced dialog when double-clicking an Ogg Vorbis or MP3 file in the FileSystem dock

Advanced dialog when double-clicking a Ogg Vorbis or MP3 file in the FileSystem dock
Advanced dialog when double-clicking an Ogg Vorbis or MP3 file in the FileSystem dock

This dialog allows you to edit the audio's loop point with a real-time preview,
in addition to the :abbr:`BPM (Beats Per Minute)`, beat count and bar beats.
Expand Down
2 changes: 1 addition & 1 deletion tutorials/assets_pipeline/importing_images.rst
Original file line number Diff line number Diff line change
Expand Up @@ -526,7 +526,7 @@ editing the original text afterwards:
- Select your text object in Inkscape, then duplicate it in place by pressing
:kbd:`Ctrl + D` and use **Path > Object to Path**. Hide the original text
object afterwards using the **Layers and Objects** dock.
- Use the Inkscape command line to export a SVG from another SVG file with text
- Use the Inkscape command line to export an SVG from another SVG file with text
converted to paths:

::
Expand Down
4 changes: 2 additions & 2 deletions tutorials/editor/using_the_android_editor.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Using the Android editor
========================

In 2023, `we added <https://godotengine.org/article/android_godot_editor_play_store_beta_release/>`__
a `Android port of the editor <https://godotengine.org/download/android/>`__
an `Android port of the editor <https://godotengine.org/download/android/>`__
that can be used to work on new or existing projects on Android devices.

.. note::
Expand Down Expand Up @@ -45,7 +45,7 @@ Here are the known limitations and issues of the Android editor:
- UX not optimized for Android phones form-factor
- `Android Go devices <https://developer.android.com/guide/topics/androidgo>`__ lacks
the *All files access* permission required for device read/write access.
As a workaround, when using a Android Go device, it's recommended to create new projects only in the Android *Documents* or *Downloads* directories.
As a workaround, when using an Android Go device, it's recommended to create new projects only in the Android *Documents* or *Downloads* directories.
- The editor doesn't properly resume when *Don't keep activities* is enabled in the *Developer Options*

.. seealso::
Expand Down
3 changes: 2 additions & 1 deletion tutorials/export/exporting_for_macos.rst
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,8 @@ If you do not have an Apple Developer ID Certificate
- Select ``Built-in (ad-hoc only)`` in the ``Code Signing > Codesign`` option.
- Select ``Disabled`` in the ``Notarization > Notarization`` option.

In this case Godot will use a ad-hoc signature, which will make running an exported app easier for the end users, see the :ref:`Running Godot apps on macOS <doc_running_on_macos>` page for more information.
In this case Godot will use an ad-hoc signature, which will make running an exported app easier for the end users,
see the :ref:`Running Godot apps on macOS <doc_running_on_macos>` page for more information.

Signing Options
~~~~~~~~~~~~~~~
Expand Down
2 changes: 1 addition & 1 deletion tutorials/export/one-click_deploy.rst
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ Web > Use TLS**.
and bypass the warning by clicking **Advanced** and then **Proceed to
(address)**.

If you have a SSL/TLS certificate that is trusted by browsers, you can specify
If you have an SSL/TLS certificate that is trusted by browsers, you can specify
the paths to the key and certificate files in the **Export > Web > TLS Key**
and **Export > Web > TLS Certificate**. This will only work if the project
is accessed through a domain name that is part of the TLS certificate.
4 changes: 2 additions & 2 deletions tutorials/i18n/localization_using_gettext.rst
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ it can be worth it to use binary (compiled) MO message files instead of text-bas
PO files. Binary MO files are smaller and faster to read than the equivalent
PO files.

You can generate a MO file with the command below:
You can generate an MO file with the command below:

.. code-block:: shell
Expand All @@ -218,7 +218,7 @@ the PO file. This MO file can then be loaded in Godot as described above.

The original PO file should be kept in version control so you can update
your translation in the future. In case you lose the original PO file and
wish to decompile a MO file into a text-based PO file, you can do so with:
wish to decompile an MO file into a text-based PO file, you can do so with:

.. code-block:: shell
Expand Down
2 changes: 1 addition & 1 deletion tutorials/inputs/inputevent.rst
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ received input, in order:
6. If so far no one consumed the event, the :ref:`Node._unhandled_key_input() <class_Node_private_method__unhandled_key_input>` callback
will be called if overridden (and not disabled with
:ref:`Node.set_process_unhandled_key_input() <class_Node_method_set_process_unhandled_key_input>`).
This happens only if the event is a :ref:`InputEventKey <class_InputEventKey>`.
This happens only if the event is an :ref:`InputEventKey <class_InputEventKey>`.
If any function consumes the event, it can call :ref:`Viewport.set_input_as_handled() <class_Viewport_method_set_input_as_handled>`, and the
event will not spread any more. The unhandled key input callback is ideal for key events.
7. If so far no one consumed the event, the :ref:`Node._unhandled_input() <class_Node_private_method__unhandled_input>` callback
Expand Down
2 changes: 1 addition & 1 deletion tutorials/io/background_loading.rst
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ Example
-------

This example demonstrates how to load a scene in the background.
We will have a button spawn a enemy when pressed.
We will have a button spawn an enemy when pressed.
The enemy will be ``Enemy.tscn`` which we will load on ``_ready`` and instantiate when pressed.
The path will be ``"Enemy.tscn"`` which is located at ``res://Enemy.tscn``.

Expand Down
2 changes: 1 addition & 1 deletion tutorials/io/runtime_file_loading_and_saving.rst
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ Image's :ref:`Image.load_from_file <class_Image_method_load_from_file>` static m
handles everything, from format detection based on file extension to reading the
file from disk.

If you need error handling or more control (such as changing the scale a SVG is
If you need error handling or more control (such as changing the scale an SVG is
loaded at), use one of the following methods depending on the file format:

- :ref:`Image.load_jpg_from_buffer <class_Image_method_load_jpg_from_buffer>`
Expand Down
2 changes: 1 addition & 1 deletion tutorials/navigation/navigation_introduction_2d.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Godot provides the following objects and classes for 2D navigation:
The AStar2D class is best suited for cell-based 2D gameplay that does not require actors to reach any possible position within an area but only predefined, distinct positions.

- :ref:`NavigationServer2D<class_NavigationServer2D>`
``NavigationServer2D`` provides a powerful server API to find the shortest path between two positions on a area defined by a navigation mesh.
``NavigationServer2D`` provides a powerful server API to find the shortest path between two positions on an area defined by a navigation mesh.

The NavigationServer is best suited for 2D realtime gameplay that does require actors to reach any possible position within a navigation mesh defined area.
Mesh-based navigation scales well with large game worlds as a large area can often be defined with a single polygon when it would require many, many grid cells.
Expand Down
4 changes: 2 additions & 2 deletions tutorials/networking/high_level_multiplayer.rst
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ residential connections use a `NAT
high-level multiplayer API only uses UDP, so you must forward the port in UDP,
not just TCP.

After forwarding an UDP port and making sure your server uses that port, you can
After forwarding a UDP port and making sure your server uses that port, you can
use `this website <https://icanhazip.com/>`__ to find your public IP address.
Then give this public IP address to any Internet clients that wish to connect to
your server.
Expand Down Expand Up @@ -196,7 +196,7 @@ For a remote call to be successful, the sending and receiving node need to have
must have the same name. When using ``add_child()`` for nodes which are expected to use RPCs, set the argument
``force_readable_name`` to ``true``.

.. warning::
.. warning::

If a function is annotated with ``@rpc`` on the client script (resp. server script),
then this function must also be declared on the server script (resp. client script).
Expand Down

0 comments on commit d195c9d

Please sign in to comment.