Переглянути джерело

Grammar and spelling fixes in manuals. (#485)

reviewed all English manual files for grammar and spelling errors

- small grammar and spelling fixes for various manual .md files applied
Agustin 11 місяців тому
батько
коміт
9337bdaadc

+ 2 - 2
docs/en/manuals/bob.md

@@ -93,7 +93,7 @@ usage: bob [options] [commands]
  -mp,--mobileprovisioning <arg>          mobileprovisioning profile (iOS)
     --ne-build-dir <arg>                 Specify a folder with includes or
                                          source, to build a specific
-                                         library. More than one occurrance
+                                         library. More than one occurrence
                                          is allowed.
     --ne-output-name <arg>               Specify a library target name
  -o,--output <arg>                       Output directory. Default is
@@ -112,7 +112,7 @@ usage: bob [options] [commands]
     --resource-cache-remote-user <arg>   Username to authenticate access
                                          to the remote resource cache.
     --settings <arg>                     Path to a game project settings
-                                         file. More than one occurrance is
+                                         file. More than one occurrence is
                                          allowed. The settings files are
                                          applied left to right.
     --strip-executable                   Strip the dmengine of debug

+ 1 - 1
docs/en/manuals/building-blocks.md

@@ -94,7 +94,7 @@ Here the sprite image of the prototype file is changed and immediately all insta
 
 ## Childing game objects
 
-In a collection file, you can build hierarchies of game objects so that one or more game objects are children to a single parent game object. By simply <kbd>dragging</kbd> one game object and <kbd>dropping</kbd> it onto another, the dragged game object is childed under the target:
+In a collection file, you can build hierarchies of game objects so that one or more game objects are children to a single parent game object. By simply <kbd>dragging</kbd> one game object and <kbd>dropping</kbd> it onto another, the dragged game object becomes a child of the target:
 
 ![Childing game objects](images/building_blocks/childing.png){srcset="images/building_blocks/[email protected] 2x"}
 

+ 1 - 1
docs/en/manuals/compute.md

@@ -34,7 +34,7 @@ Procedural Generation
 
 Rendering effects
   - Global illumination: Simulating realistic lighting by approximating the way light bounces around a scene.
-  - Voxelisation: Create a 3D voxel grid from mesh data.
+  - Voxelization: Create a 3D voxel grid from mesh data.
 
 ## How does compute shaders work?
 

+ 1 - 1
docs/en/manuals/debugging-game-and-system-logs.md

@@ -63,7 +63,7 @@ $ adb logcat -s defold
 I/defold  ( 6210): INFO:DLIB: SSDP started (ssdp://192.168.0.97:58089, http://0.0.0.0:38637)
 I/defold  ( 6210): INFO:ENGINE: Defold Engine 1.2.50 (8d1b912)
 I/defold  ( 6210): INFO:ENGINE: Loading data from:
-I/defold  ( 6210): INFO:ENGINE: Initialised sound device 'default'
+I/defold  ( 6210): INFO:ENGINE: Initialized sound device 'default'
 I/defold  ( 6210):
 D/defold  ( 6210): DEBUG:SCRIPT: Hello there, log!
 ...

+ 1 - 1
docs/en/manuals/debugging-game-logic.md

@@ -136,4 +136,4 @@ If you have problems with physics and collisions aren't working as expected it i
 
 When this checkbox is enabled Defold will draw all collision shapes and contact points of collisions:
 
-![physics debug visualisation](images/debugging/physics_debug_visualisation.png)
+![physics debug visualization](images/debugging/physics_debug_visualisation.png)

+ 1 - 1
docs/en/manuals/editor-scripts-ui.md

@@ -270,7 +270,7 @@ The editor expects reactive function components to behave nicely for them to wor
 
 1. Component functions must be pure. There is no guarantee on when or how often the component function will be invoked. All side-effects should be outside of rendering, e.g. in callbacks
 2. Props and local state must be immutable. Don't mutate props. If your local state is a table, don't mutate it in-place, but create a new one and pass it to the setter when the state needs to change.
-3. Component functions must call the same hooks in the same order on every invokation. Don't call hooks inside loops, in conditional blocks, after early returns etc. It is a best practice to call hooks in the beginning of the component function, before any other code.
+3. Component functions must call the same hooks in the same order on every invocation. Don't call hooks inside loops, in conditional blocks, after early returns etc. It is a best practice to call hooks in the beginning of the component function, before any other code.
 4. Only call hooks from component functions. Hooks work in a context of a reactive component, so it's only allowed to call them in the component function (or another function called directly by the component function).
 
 ### Hooks

+ 3 - 3
docs/en/manuals/editor.md

@@ -49,7 +49,7 @@ There is a toolbar in the top right corner of the scene view where you find obje
 
 ### Outline pane
 
-This view shows the content of the file currently being edited, but in a hierarchial tree structure. The outline reflects the editor view and allows you to perform operations on your items:
+This view shows the content of the file currently being edited, but in a hierarchical tree structure. The outline reflects the editor view and allows you to perform operations on your items:
    - <kbd>Click</kbd> to select an item. Hold <kbd>Shift</kbd> or <kbd>Option</kbd> to expand the selection.
    - <kbd>Drag and drop</kbd> to move items. Drop a game object on another game object in a collection to child it.
    - <kbd>Right click</kbd> to open a _context menu_ from where you can add items, delete selected items etc.
@@ -100,7 +100,7 @@ To move objects, use the *Move Tool*. You find it in the toolbar in the top righ
 
 ![Move object](images/editor/move.png)
 
-The selected object shows a set of manipulators (squares and arrows). Click and drag the green center square handle to move the object freely in screen space, click and drag the arrows to move the object along the X, Y or Z-axis. There arn also square handles for moving the object in the X-Y plane and (visible if rotating the camera in 3D) for moving the object in the X-Z and Y-Z planes.
+The selected object shows a set of manipulators (squares and arrows). Click and drag the green center square handle to move the object freely in screen space, click and drag the arrows to move the object along the X, Y or Z-axis. There are also square handles for moving the object in the X-Y plane and (visible if rotating the camera in 3D) for moving the object in the X-Z and Y-Z planes.
 
 ### Rotate tool
 ![Rotate tool](images/editor/icon_rotate.png){.left}
@@ -108,7 +108,7 @@ To rotate objects, use the *Rotate Tool* by selecting it in the toolbar, or by p
 
 ![Move object](images/editor/rotate.png)
 
-This tool consists of four circular manipulators. An orange manipulator that rotates the object in screen space and one for rotation around each of the X, Y and Z axes. Since the view is peripendicular to the X- and Y-axis, the circles only appear as two lines crossing the object.
+This tool consists of four circular manipulators. An orange manipulator that rotates the object in screen space and one for rotation around each of the X, Y and Z axes. Since the view is perpendicular to the X- and Y-axis, the circles only appear as two lines crossing the object.
 
 
 ### Scale tool

+ 2 - 2
docs/en/manuals/extensions-best-practices.md

@@ -96,13 +96,13 @@ Defold does not make use of any exceptions in the engine. Exceptions are general
 
 Since the Defold engine doesn't use any STL code, except for some algorithms and math (`std::sort`, `std::upper_bound` etc), it may work for you to use STL in your extension.
 
-Again, bear in mind that ABI incompatibilites may hinder you when using your extension in conjunction with other extensions or 3rd party libraries.
+Again, bear in mind that ABI incompatibilities may hinder you when using your extension in conjunction with other extensions or 3rd party libraries.
 
 Avoiding the (heavily templated) STL libraries, also improves on our build times, and more importantly, the executable size.
 
 #### Strings
 
-In the Defold engine `const char*` is used instead of `std::string`. The use `std::string` is a common pitfall when mixing different versions of C++ or compiler versions since it may resultin an ABI mismatch. Using `const char*` and a few helper functions will avoid this.
+In the Defold engine `const char*` is used instead of `std::string`. The use `std::string` is a common pitfall when mixing different versions of C++ or compiler versions since it may result in an ABI mismatch. Using `const char*` and a few helper functions will avoid this.
 
 ### Make functions hidden
 

+ 1 - 1
docs/en/manuals/factory.md

@@ -257,7 +257,7 @@ When the *Dynamic Prototype* option is set the collection component count cannot
 
 ## Instance limits
 
-The project setting *max_instances* in *Collection related settings* limits the total number of game object instances that can exist in a world (the main.collection loaded at startup or any world loaded via a collection proxy). All game objects that exist in the world are counted agaist that limit and it does not matter if they are placed by hand in the editor or spawned in runtime through a script.
+The project setting *max_instances* in *Collection related settings* limits the total number of game object instances that can exist in a world (the main.collection loaded at startup or any world loaded via a collection proxy). All game objects that exist in the world are counted against that limit and it does not matter if they are placed by hand in the editor or spawned in runtime through a script.
 
 ![Max instances](images/factory/factory_max_instances.png)
 

+ 4 - 4
docs/en/manuals/flash.md

@@ -13,7 +13,7 @@ Some of the key advantages of Flash were the accessibility and low barriers to e
 
 Flash games are programmed in ActionScript (with 3.0 being the most recent version), while Defold scripting is done in Lua. This guide will not go into a detailed comparison of Lua and Actionscript 3.0. The [Defold manual](/manuals/lua) provides a good introduction to Lua programming in Defold, and references the tremendously useful [Programming in Lua](https://www.lua.org/pil/) (first edition) which is freely available online.
 
-An article by Jesse Warden provides a [basic comparison of Actionscript and Lua](http://jessewarden.com/2011/01/lua-for-actionscript-developers.html), which may serve as a good starting point. Note thought that there are deeper differences in how Defold and Flash are constructed than what is visible at the language level. Actionscript and Flash is object oriented in the classical sense with classes and inheritance. Defold does not have classes, nor inheritance. It includes the concept of a *game object* which can contain audivisual representation, behavior and data. Operations on game objects are done with *functions* available in the Defold APIs. Furthermore, Defold encourages the use of *messages* to communicate between objects. Messages are a higher level construct than method calls and are not intended to be used as such. These differences are important and takes a while to get used to, but will not be covered in detail in this guide.
+An article by Jesse Warden provides a [basic comparison of Actionscript and Lua](http://jessewarden.com/2011/01/lua-for-actionscript-developers.html), which may serve as a good starting point. Note thought that there are deeper differences in how Defold and Flash are constructed than what is visible at the language level. Actionscript and Flash is object oriented in the classical sense with classes and inheritance. Defold does not have classes, nor inheritance. It includes the concept of a *game object* which can contain audiovisual representation, behavior and data. Operations on game objects are done with *functions* available in the Defold APIs. Furthermore, Defold encourages the use of *messages* to communicate between objects. Messages are a higher level construct than method calls and are not intended to be used as such. These differences are important and takes a while to get used to, but will not be covered in detail in this guide.
 
 Instead, this guide explores some of the key concepts of game development in Flash, and outlines what the closest Defold equivalents are. Similarities and differences are discussed, along with common pitfalls, to enable you to get off to a running start in transitioning from Flash to Defold.
 
@@ -37,7 +37,7 @@ In Flash, instances of movie clips can be added to your scene manually by draggi
 
 ## Defold—manually creating game objects
 
-As mentioned previously, Defold does not have a timeline concept. Instead, game objects are organised in collections. Collections are containers (or prefabs) that hold game objects and other collections. At the most basic level, a game can consist of only one collection. More frequently, Defold games make use of multiple collections, either added manually to the bootstrap “main” collection or dynamically loaded via [collection proxies](/manuals/collection-proxy). This concept of loading "levels" or "screens" does not have a direct Flash equivalent.
+As mentioned previously, Defold does not have a timeline concept. Instead, game objects are organized in collections. Collections are containers (or prefabs) that hold game objects and other collections. At the most basic level, a game can consist of only one collection. More frequently, Defold games make use of multiple collections, either added manually to the bootstrap “main” collection or dynamically loaded via [collection proxies](/manuals/collection-proxy). This concept of loading "levels" or "screens" does not have a direct Flash equivalent.
 
 In the example below, the "main" collection contains three instances (listed on the right, in the *Outline* window) of the "logo" game object (seen on the left, in the *Assets* browser window):
 
@@ -136,7 +136,7 @@ Motion tweens allow the animation of various properties of an object, including
 
 Defold works with pixel images as opposed to vector graphics, thus it does not have an equivalent for shape tweening. However, motion tweening has a powerful equivalent in [property animation](/ref/go/#go.animate). This is accomplished via script, using the `go.animate()` function. The go.animate() function tweens a property (such as color, scale, rotation or position) from the starting value to the desired end value, using one of many available easing functions (including custom ones). Where Flash required user implementation of more advanced easing functions, Defold includes [many easing functions](/manuals/animation/#easing) built-into the engine.
 
-Where Flash makes use of keyframes of graphics on a timeline for animation, one of the main methods of graphic animation in Defold is by flipbook animation of imported image sequences. Animations are organised in a game object component known as an atlas. In this instance we have an atlas for a game character with an animation sequence called "run". This consists of a series of png files:
+Where Flash makes use of keyframes of graphics on a timeline for animation, one of the main methods of graphic animation in Defold is by flipbook animation of imported image sequences. Animations are organized in a game object component known as an atlas. In this instance we have an atlas for a game character with an animation sequence called "run". This consists of a series of png files:
 
 ![flipbook](images/flash/flipbook.png)
 
@@ -251,7 +251,7 @@ Event objects and their associated listeners are used to detect various events (
 The Defold equivalent of the Flash event handling system consists of a few aspects. Firstly, each script component comes with a set of callback-functions that detect specific events. These are:
 
 init
-:   Called when the script component is initialised. Equivalent to the constructor function in Flash.
+:   Called when the script component is initialized. Equivalent to the constructor function in Flash.
 
 final
 :   Called when the script component is destroyed (e.g. a spawned game object is removed).

+ 1 - 1
docs/en/manuals/gui-clipping.md

@@ -72,4 +72,4 @@ In this example, both the clipper nodes "Donut BG" and "BG" are using the same l
 - BG Frame
 - Donut Shadow
 
-Here you can see that the "Donut Shadow" object will be clipped by both clipping nodes due to the layering, eventhough it is only a child to one of them.
+Here you can see that the "Donut Shadow" object will be clipped by both clipping nodes due to the layering, even though it is only a child to one of them.

+ 2 - 2
docs/en/manuals/gui-template.md

@@ -7,7 +7,7 @@ brief: This manual explains the Defold GUI template system that is used to creat
 
 GUI template nodes provide a powerful mechanism to create reusable GUI components based on shared templates or "prefabs". This manual explains the feature and how to use it.
 
-A GUI template is a GUI scene that is instanciated, node for node, in another GUI scene. Any property values in the original template nodes can then be overridden.
+A GUI template is a GUI scene that is instantiated, node for node, in another GUI scene. Any property values in the original template nodes can then be overridden.
 
 ## Creating a template
 
@@ -59,4 +59,4 @@ end
 
 There is no node corresponding to the template instance itself. If you need a root node for an instance, add it to the template.
 
-If a script is associated with a template GUI scene, the script is not part of the instance node tree. You may attach one single script to each GUI scene so your script logic needs to sit on the GUI scene where you have instanciated your templates.
+If a script is associated with a template GUI scene, the script is not part of the instance node tree. You may attach one single script to each GUI scene so your script logic needs to sit on the GUI scene where you have instantiated your templates.

+ 2 - 2
docs/en/manuals/importing-models.md

@@ -37,13 +37,13 @@ Defold imposes some limitations on exported animation data:
 
 ### Requirements
 When you export a model it's good to know that we don't yet support all features.
-Currently known issues/not supported features from the Gltf format:
+Currently known issues/not supported features from the glTF format:
 
 * Morph target animations
 * Material properties
 * Embedded textures
 
-While our ambition is to fully support the Gltf format, we're not fully there yet.
+While our ambition is to fully support the glTF format, we're not fully there yet.
 If a feature is missing, please make a feature request for it in [our repo](https://github.com/defold/defold/issues)
 
 ### Exporting a texture

+ 2 - 2
docs/en/manuals/input-gamepads.md

@@ -4,7 +4,7 @@ brief: This manual explains how gamepad input works.
 ---
 
 ::: sidenote
-It is recommended that you familiarise yourself with the general way in which input works in Defold, how to receive input and in which order input is received in your script files. Learn more about the input system in the [Input Overview manual](/manuals/input).
+It is recommended that you familiarize yourself with the general way in which input works in Defold, how to receive input and in which order input is received in your script files. Learn more about the input system in the [Input Overview manual](/manuals/input).
 :::
 
 # Gamepads
@@ -166,7 +166,7 @@ If your game is running from inside an `iframe` you must also make sure that the
 ### Standard gamepad
 (From Defold 1.4.1)
 
-If a connected gamepad is identifed by the browser as a standard gamepad it will use the mapping for "Standard Gamepad" in the [gamepads settings file](/manuals/input-gamepads/#gamepads-settings-file) (a Standard Gamepad mapping is included in the `default.gamepads` file in `/builtins`). A standard gamepad is defined as having 16 buttons and 2 analog sticks with a button layout similar to a PlayStation or Xbox controller (see the [W3C definition and button layout](https://w3c.github.io/gamepad/#dfn-standard-gamepad) for more information). If the connected gamepad is not identified as a standard gamepad Defold will look for a mapping matching the hardware gamepad type in the gamepad settings file.
+If a connected gamepad is identified by the browser as a standard gamepad it will use the mapping for "Standard Gamepad" in the [gamepads settings file](/manuals/input-gamepads/#gamepads-settings-file) (a Standard Gamepad mapping is included in the `default.gamepads` file in `/builtins`). A standard gamepad is defined as having 16 buttons and 2 analog sticks with a button layout similar to a PlayStation or Xbox controller (see the [W3C definition and button layout](https://w3c.github.io/gamepad/#dfn-standard-gamepad) for more information). If the connected gamepad is not identified as a standard gamepad Defold will look for a mapping matching the hardware gamepad type in the gamepad settings file.
 
 ## Gamepads on Windows
 On Windows, only XBox 360 controllers are currently supported. To hook up your 360 controller to your Windows machine, [make sure it is setup correctly](http://www.wikihow.com/Use-Your-Xbox-360-Controller-for-Windows).

+ 2 - 2
docs/en/manuals/input-key-and-text.md

@@ -4,7 +4,7 @@ brief: This manual explains how key and text input works.
 ---
 
 ::: sidenote
-It is recommended that you familiarise yourself with the general way in which input works in Defold, how to receive input and in which order input is received in your script files. Learn more about the input system in the [Input Overview manual](/manuals/input).
+It is recommended that you familiarize yourself with the general way in which input works in Defold, how to receive input and in which order input is received in your script files. Learn more about the input system in the [Input Overview manual](/manuals/input).
 :::
 
 # Key Triggers
@@ -45,7 +45,7 @@ end
 ```
 
 ## Marked text
-The `marked-text` is used primarily for asian keyboards where multiple keypresses can map to single inputs. For example, with the iOS "Japanese-Kana" keyboard, the user can type combinations and the top of the keyboard will display avaliable symbols or sequences of symbols that can be entered.
+The `marked-text` is used primarily for Asian keyboards where multiple keypresses can map to single inputs. For example, with the iOS "Japanese-Kana" keyboard, the user can type combinations and the top of the keyboard will display available symbols or sequences of symbols that can be entered.
 
 ![Input marked text](images/input/marked_text.png){srcset="images/input/[email protected] 2x"}
 

+ 1 - 1
docs/en/manuals/input-mouse-and-touch.md

@@ -4,7 +4,7 @@ brief: This manual explains how mouse and touch input works.
 ---
 
 ::: sidenote
-It is recommended that you familiarise yourself with the general way in which input works in Defold, how to receive input and in which order input is received in your script files. Learn more about the input system in the [Input Overview manual](/manuals/input).
+It is recommended that you familiarize yourself with the general way in which input works in Defold, how to receive input and in which order input is received in your script files. Learn more about the input system in the [Input Overview manual](/manuals/input).
 :::
 
 # Mouse Triggers

+ 1 - 1
docs/en/manuals/libraries.md

@@ -71,7 +71,7 @@ https://gitlab.com/defold/private/-/archive/main/test-main.zip?private_token=per
 
 ### Advanced access authentication
 
-When using the basic access authentication a user's access token and username will be shared on any repository used for the project.  With a greater than 1 man team this can be an issue. To solve this issue a "read only" user needs to be used for library access to the repository, on GitHub this requires an organisation, a team and a user who doesn't need to edit the repo (hence read only).
+When using the basic access authentication a user's access token and username will be shared on any repository used for the project.  With a greater than 1 man team this can be an issue. To solve this issue a "read only" user needs to be used for library access to the repository, on GitHub this requires an organization, a team and a user who doesn't need to edit the repo (hence read only).
 
 GitHub Steps:
 * [Create an organisation](https://docs.github.com/en/github/setting-up-and-managing-organizations-and-teams/creating-a-new-organization-from-scratch)

+ 1 - 1
docs/en/manuals/live-update-scripting.md

@@ -121,7 +121,7 @@ end
 ```
 
 1. The `liveupdate.add_mount()` mounts a single archive using a specified name, priority and a zip file. The data is then immediately available for loading (there is no need to restart the engine).
-The mount info is stored and will be automatically readded upon next engine restart (no need to call liveupdate.add_mount() again on the same mount)
+The mount info is stored and will be automatically re-added upon next engine restart (no need to call liveupdate.add_mount() again on the same mount)
 2. You need to store the archive online (e.g. on S3), where you can download it from.
 3. Given a collection proxy name, you need to figure our which archive(s) to download, and how to mount them
 4. At startup, we try to load the level.

+ 3 - 3
docs/en/manuals/live-update.md

@@ -73,7 +73,7 @@ While our current pipeline only supports creating a single .zip file, it is in f
 
 ## Splitting .zip archives
 
-It is often desireable to split the excluded content into several smaller archives for more granular control over resource usage. One such example is to split a level based game into multiple level packs. Another is to put different holiday themed UI decorations into separate archives and load and mount only the theme currently active in the calendar.
+It is often desirable to split the excluded content into several smaller archives for more granular control over resource usage. One such example is to split a level based game into multiple level packs. Another is to put different holiday themed UI decorations into separate archives and load and mount only the theme currently active in the calendar.
 
 The resource graph is stored in `build/default/game.graph.json` and it is automatically generated each time the project is bundled. The generated file contains a list of all resources in the project and the dependencies of each resource. Example entry:
 
@@ -94,7 +94,7 @@ You can parse the `game.graph.json` file and use this information to identify gr
 One of the major features of the live update system, is that you can now use many content archives, potentially from many different Defold versions.
 
 The `liveupdate.add_mount()` default behavior, is to add an engine version check when attaching a mount.
-This means that both the game base archive and live update archive(s) need to be created at the same time  with the same engine version, using the bundle option. This will invalidate any previously downloaded archives by the client, forcing them to redownload the content.
+This means that both the game base archive and live update archive(s) need to be created at the same time  with the same engine version, using the bundle option. This will invalidate any previously downloaded archives by the client, forcing them to re-download the content.
 
 This behavior can be turned off with an options flag.
 When turned off, the content verification responsibility lies entirely with the developer, to guarantee that each live update archive will work with the running engine.
@@ -113,7 +113,7 @@ If two archives have the same file `sprite.texturec`, the engine will load the f
 
 The engine doesn't keep a reference to any resource in a mount. Once a resource is loaded into memory, the archive may be unmounted. The resource will remain in memory until it is unloaded.
 
-The mounts are automatically readded upon engine restart.
+The mounts are automatically re-added upon engine restart.
 
 ::: sidenote
 Mounting an archive doesn't copy or move the archive. The engine only stores the path to the archive. Thus, the developer can remove the archive at any time, and the mount will also be removed at next startup.

+ 1 - 1
docs/en/manuals/porting-guidelines.md

@@ -73,7 +73,7 @@ Read the [Optimization manual](/manuals/optimizations) on how to optimize your a
 
 
 ## Performance
-Always test on target hardware! Check game performance and optimise if needed. Use the [profiler](/manuals/profiling) to find bottlenecks in the code.
+Always test on target hardware! Check game performance and optimize if needed. Use the [profiler](/manuals/profiling) to find bottlenecks in the code.
 
 
 ## Screen resolution and refresh rate

+ 2 - 2
docs/en/manuals/profiling.md

@@ -40,7 +40,7 @@ The Frame profiler allows you to sample your game while it is running and analyz
 1. Start your game on your target device.
 2. Select <kbd> Debug ▸ Open Web Profiler</kbd> menu.
 
-The frame profiler is divided into several sections that all give different views into the runing game. Press the Pause button in the top right corner to temporarily stop the profiler from updating the views.
+The frame profiler is divided into several sections that all give different views into the running game. Press the Pause button in the top right corner to temporarily stop the profiler from updating the views.
 
 ![Web profiler](images/profiling/webprofiler_page.png)
 
@@ -130,7 +130,7 @@ OpenGL profiler (macOS)
 Android Profiler (Android)
 : https://developer.android.com/studio/profile/android-profiler.html
 
-  A set of profiling tools that captures realtime data of your game's CPU, memory, and network activity. You can perform sample-based method tracing of code execution, capture heap dumps, view memory allocations, and inspect the details of network-transmitted files. Using the tool requires that you set `android:debuggable="true"` in "AndroidManifest.xml".
+  A set of profiling tools that captures real-time data of your game's CPU, memory, and network activity. You can perform sample-based method tracing of code execution, capture heap dumps, view memory allocations, and inspect the details of network-transmitted files. Using the tool requires that you set `android:debuggable="true"` in "AndroidManifest.xml".
 
   ![android profiler](images/profiling/android_profiler.png)
 

+ 2 - 2
docs/en/manuals/project-settings.md

@@ -417,7 +417,7 @@ Storyboard file (.storyboard). Learn more about how to create one in the [iOS ma
 (iOS 6 and earlier) Check if your icons are pre-rendered. If this is unchecked the icons will get a glossy highlight added automatically.
 
 #### Bundle Identifier
-The bundle identifier lets iOS recognize any updates to your app. Your bundle ID must be registered with Apple and be unique to your app. You cannot use the same identifier for both iOS and macOS apps. Must consist of two or more segments separated by a dot. Each segment must start with a letter. Each segment must only consist of alphanumeric letters, the underscore or hypen (-) character (see [`CFBundleIdentifier`](https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/20001431-130430))
+The bundle identifier lets iOS recognize any updates to your app. Your bundle ID must be registered with Apple and be unique to your app. You cannot use the same identifier for both iOS and macOS apps. Must consist of two or more segments separated by a dot. Each segment must start with a letter. Each segment must only consist of alphanumeric letters, the underscore or hyphen (-) character (see [`CFBundleIdentifier`](https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/20001431-130430))
 
 #### Bundle Name
 The bundle short name (15 characters) (see [`CFBundleName`](https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/20001431-130430)).
@@ -500,7 +500,7 @@ If set, use the specified info.plist file when bundling.
 The Apple Privacy Manifest for the application. The field will default to `/builtins/manifests/osx/PrivacyInfo.xcprivacy`.
 
 #### Bundle Identifier
-The bundle identifier lets macOS recognize updates to your app. Your bundle ID must be registered with Apple and be unique to your app. You cannot use the same identifier for both iOS and macOS apps. Must consist of two or more segments separated by a dot. Each segment must start with a letter. Each segment must only consist of alphanumeric letters, the underscore or hypen (-) character.
+The bundle identifier lets macOS recognize updates to your app. Your bundle ID must be registered with Apple and be unique to your app. You cannot use the same identifier for both iOS and macOS apps. Must consist of two or more segments separated by a dot. Each segment must start with a letter. Each segment must only consist of alphanumeric letters, the underscore or hyphen (-) character.
 
 #### Default Language
 The language used if the application doesn't have user's preferred language in `Localizations` list (see [CFBundleDevelopmentRegion](https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/20001431-130430)). Use the two-letter ISO 639-1 standard if preferred language is available there or the three-letter ISO 639-2.

+ 6 - 6
docs/en/manuals/shader.md

@@ -30,12 +30,12 @@ Vertex shader
 Fragment shader
 : After the vertex shader is done, it is the job of the fragment shader to decide the coloring of each fragment (or pixel) of the resulting primitives.
 
-  The input of a fragment shader is constants (`uniforms`) as well as any `varying` variables that has been set by the verter shader.
+  The input of a fragment shader is constants (`uniforms`) as well as any `varying` variables that has been set by the vertex shader.
 
   The output of the fragment shader is the color value for the particular fragment (`gl_FragColor`).
 
 Compute shader
-: A compute shader is a general purpose shader that can be used to perform any type of work on a GPU. It is not part of the graphics pipeline at all, compute shaders run in a separate execution context and is not dependant on input from any other shader.
+: A compute shader is a general purpose shader that can be used to perform any type of work on a GPU. It is not part of the graphics pipeline at all, compute shaders run in a separate execution context and is not dependent on input from any other shader.
 
   The input of a compute shader is constant buffers (`uniforms`), texture images (`image2D`), samplers (`sampler2D`) and storage buffers (`buffer`).
 
@@ -110,7 +110,7 @@ Since the Defold engine supports multiple platforms and graphics APIs, it must b
 1. The legacy pipeline, where shaders are written in ES2 compatible GLSL code.
 2. The modern pipeline, where shaders are written in SPIR-v compatible GLSL code.
 
-Starting with Defold 1.9.2, it is encouraged to write shaders that utilise the new pipeline, and to achieve this most shaders need to be migrated into shaders written in at least version 140 (OpenGL 3.1). To migrate a shader, make sure these requirements are met:
+Starting with Defold 1.9.2, it is encouraged to write shaders that utilize the new pipeline, and to achieve this most shaders need to be migrated into shaders written in at least version 140 (OpenGL 3.1). To migrate a shader, make sure these requirements are met:
 
 ### Version declaration
 Put at least #version 140 at the top of the shader:
@@ -171,12 +171,12 @@ uniform vertex_inputs
 
 void main()
 {
-    // Invididual members of the uniform block can be used as-is
+    // Individual members of the uniform block can be used as-is
     gl_Position = mtx_proj * mtx_view * mtx_world * vec4(position, 1.0);
 }
 ```
 
-All members in the uniform block is exposed to materials and components as invididual constants. No migration is needed for using render constant buffers, or `go.set` and `go.get`.
+All members in the uniform block is exposed to materials and components as individual constants. No migration is needed for using render constant buffers, or `go.set` and `go.get`.
 
 ### Built-in Variables
 
@@ -420,7 +420,7 @@ void main()
 ```
 1. The varying texture coordinate variable is declared. The value of this variable will be interpolated for each fragment between the values set for each vertex in the shape.
 2. A `sampler2D` uniform variable is declared. The sampler, together with the interpolated texture coordinates, is used to perform texture lookup so the sprite can be textured properly. Since this is a sprite, the engine will assign this sampler to the image set in the sprite's *Image* property.
-3. A constant of type `CONSTANT_TYPE_USER` is defined in the material and declared as a `uniform`. Its valueis used to allow color tinting of the sprite. The default is pure white.
+3. A constant of type `CONSTANT_TYPE_USER` is defined in the material and declared as a `uniform`. Its value is used to allow color tinting of the sprite. The default is pure white.
 4. The color value of the tint gets pre-multiplied with its alpha value since all runtime textures already contain pre-multiplied alpha.
 5. Sample the texture at the interpolated coordinate and return the sampled value.
 6. `gl_FragColor` is set to the output color for the fragment: the diffuse color from the texture multiplied with the tint value.

+ 1 - 1
docs/en/manuals/sprite.md

@@ -129,7 +129,7 @@ run/hero_run_2
 
 ### UVs
 
-The UVs are taken from the first texture. Since there is only one set of vertices, we cannot guarantuee
+The UVs are taken from the first texture. Since there is only one set of vertices, we cannot guarantee
 a good match anyways if the secondary textures have either more UV coordinates or a different shape.
 
 This is important to note, so make sure the images have similar enough shapes, or you might experience texture bleeding.

+ 1 - 1
docs/en/manuals/texture-profiles.md

@@ -144,7 +144,7 @@ The following lossy compression formats are currently supported:
 The following software image compression types are supported. The data is uncompressed when the texture file is loaded into memory.
 
 ::: sidenote
-We are currently looking into how to reintroduce support for hardware formats, as well as readding support for WEBP compression.
+We are currently looking into how to reintroduce support for hardware formats, as well as reading support for WEBP compression.
 Our current long running task of introducing content pipeline plugins aim to fix this.
 :::