From aa520a75ead31373dfa22ad21fa2b3ad75c03c62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= Date: Sun, 23 Apr 2017 15:09:46 +0200 Subject: [PATCH] Language fixes and improvements Based of first part of the patch in #184. --- learning/workflow/assets/exporting_images.rst | 15 ++++++------ learning/workflow/assets/import_process.rst | 23 ++++++++----------- learning/workflow/assets/importing_fonts.rst | 2 +- .../assets/importing_translations.rst | 22 +++++++++--------- .../workflow/assets/managing_image_files.rst | 4 ++-- .../workflow/export/exporting_projects.rst | 20 ++++++++-------- 6 files changed, 41 insertions(+), 45 deletions(-) diff --git a/learning/workflow/assets/exporting_images.rst b/learning/workflow/assets/exporting_images.rst index bd99e766a..b1c7c381e 100644 --- a/learning/workflow/assets/exporting_images.rst +++ b/learning/workflow/assets/exporting_images.rst @@ -3,9 +3,9 @@ Exporting images ================ -It is often desired to do an operation to all or a group of images upon -export. Godot provides some tools for this. Examples of such operations -are: +It is often desirable to perform an operation on all or a group of +images upon export. Godot provides some tools for this. Examples of +such operations are: - Converting all images from a lossless format to a lossy one (ie: png -> WebP) for greater compression. @@ -31,7 +31,7 @@ groups, see the next section for those): - **Shrink**: This allows to shrink all images by a given amount. It's useful to export a game to half or less resolution for special devices. -- **Compress Formats**: Allows to select which image exensions to +- **Compress Formats**: Allows to select which image extensions to convert. On export, Godot will perform the desired operation. The first export @@ -44,9 +44,8 @@ Image group export options This section is similar to the previous one, except it can operate on a selected group of images. When a image is in a group, the settings from the global export options are overridden by the ones from the group. An -image can only be in one group at the same time. So if the image is in -another group different to the current one being edited, it will not be -selectable. +image can only be in one group at a time. So if the image is in a group +other than the current one being edited, it will not be selectable. .. image:: /img/imagegroup.png @@ -60,7 +59,7 @@ support textures bigger than 2048x2048 pixels. If this happens, just create another atlas. The atlas can be useful to speed up drawing of some scenes, as state -changes are minimized when drawing from it (through unlike other +changes are minimized when drawing from it (though unlike other engines, Godot is designed so state changes do not affect it as much). Textures added to an atlas get cropped (empty spaces around the image are removed), so this is another reason to use them (save space). If diff --git a/learning/workflow/assets/import_process.rst b/learning/workflow/assets/import_process.rst index 54077d9d4..b6358e708 100644 --- a/learning/workflow/assets/import_process.rst +++ b/learning/workflow/assets/import_process.rst @@ -6,14 +6,12 @@ Import process What is it for? --------------- -When Godot was created, it was probably after several failed and not so -failed engine attempts (well, each attempt failed a little less.. and so -on). One of the most difficult areas of creating game engines is -managing the import process. That means, getting the assets that artists +One of the most difficult things to get right when creating game engines +is managing the import process. That means, getting the assets that artists make into the game, in a way that functions optimally. Artists use certain tools and formats, and programmers would rather have -their data into a different format. This is because artists put their +their data in a different format. This is because artists put their focus on creating assets with the best quality possible, while programmers have to make sure they actually run at decent speed (or run at all), use a certain amount of memory, and don't take ages loading @@ -22,8 +20,8 @@ from disk. One would think that just writing a converter/importer would be enough, but this is not all there is to it. The same way programmers iterate several times over their code, artists keep making changes to their -assets. This generates some bottleneck, because *someone* has to keep -re-importing that artwork right? And importing assets is often something +assets. This generates a bottleneck, because *someone* has to keep +re-importing that artwork, right? And importing assets is often something that has to be agreed by both parties, as the programmer needs to decide how the artwork is imported and the artists needs to see how it looks. @@ -91,11 +89,10 @@ from the project path to the asset (In windows, this works as long as they are on the same drive, otherwise an absolute path is stored). This ensures that the same asset can be re-imported in another computer. -The usual approach to this, when using a VCS such as Subversion, -Perforce or GIT, is to create the project in a subfolder, so both it and -the source assets can be committed to a same repository. For example: - -Repository layout: +The usual approach to this, when using a VCS such as Git, Mercurial or +Subversion, is to create the project in a subfolder, so both the game's +project files and the source assets can be committed to a same repository. +For example, the repository layout can look like this: :: @@ -119,7 +116,7 @@ accessed from the import dialog: .. image:: /img/import.png -Each of the dialog shares a similar function, a source file (or several +Each of the dialogs shares a similar function, a source file (or several of them) must be provided, as well as a target destination inside the project folders. Once imported, Godot saves this information as metadata in the imported asset itself. diff --git a/learning/workflow/assets/importing_fonts.rst b/learning/workflow/assets/importing_fonts.rst index ca4a26c64..8b4043adb 100644 --- a/learning/workflow/assets/importing_fonts.rst +++ b/learning/workflow/assets/importing_fonts.rst @@ -102,7 +102,7 @@ To solve this, Godot allows the user to specify a text file (in UTF-8 format) where it expects to find all the characters that will be used in the project. This seems difficult to provide at first, and more to keep up to date, but it becomes rather easy when one realizes that the .csv -with the translations can be used as such source file (see the +with the translations can be used as such a source file (see the :ref:`doc_importing_translations` section). As Godot re-imports assets when their dependencies change, both the translation and font files will be updated and re-imported automatically if the translation csv changes. diff --git a/learning/workflow/assets/importing_translations.rst b/learning/workflow/assets/importing_translations.rst index 1f47e9b6b..87d4e278d 100644 --- a/learning/workflow/assets/importing_translations.rst +++ b/learning/workflow/assets/importing_translations.rst @@ -26,21 +26,21 @@ languages, but a complete nightmare if working with many languages at the same time. In general, games use the second approach and a unique ID is used for -each string. This allows to revise the text while it's being translated -to others. The unique ID can be a number, a string, or a string with a -number (it's just a unique string anyway). +each string. This allows you to revise the text while it is being +translated to other languages. The unique ID can be a number, a string, +or a string with a number (it's just a unique string anyway). -Translators also, most of the time prefer to work with spreadsheets -(either as a Microsoft Excel file or a shared Google Spreadsheet). +Translators also usually prefer to work with spreadsheets. Translation format ------------------ To complete the picture and allow efficient support for translations, -Godot has a special importer that can read csv files. Both Microsoft -Excel and Google Spreadsheet can export to this format, so the only -requirement is that the files have a special arrangement. The csv files must -be saved in utf-8 encoding and be formatted as follows: +Godot has a special importer that can read CSV files. All spreadsheet +editors (be it Libreoffice, Microsoft Office, Google Docs, etc.) can +export to this format, so the only requirement is that the files have +a special arrangement. The CSV files must be saved in UTF-8 encoding +and be formatted as follows: +--------+----------+----------+----------+ | | | | | @@ -70,11 +70,11 @@ uppercase, to differentiate from other strings). Here's an example: Import dialog ------------- -The import dialog takes a csv file in the previously described format +The import dialog takes a CSV file in the previously described format and generates several compressed translation resource files inside the project. -Selecting a csv file autodetects the languages from the first row and +Selecting a CSV file autodetects the languages from the first row and determines which column represents which language. It is possible to change this manually, by selecting the language for each column. diff --git a/learning/workflow/assets/managing_image_files.rst b/learning/workflow/assets/managing_image_files.rst index 8db62cea4..9b687f228 100644 --- a/learning/workflow/assets/managing_image_files.rst +++ b/learning/workflow/assets/managing_image_files.rst @@ -47,7 +47,7 @@ Mipmaps ~~~~~~~ When the mipmaps option is enabled, Godot will generate mipmaps. -Mipmaps are versions of the image shrunk by half in both axis, +Mipmaps are versions of the image shrunk by half in both axes, recursively, until the image is 1 pixel of size. When the 3D hardware needs to shrink the image, it finds the largest mipmap it can scale from, and scales from there. This improves performance and image @@ -90,7 +90,7 @@ Texture Import and Image Export can also perform this operation. Texture import ~~~~~~~~~~~~~~ -Sometimes, it might be desired to change the above settings per image. +Sometimes, it might be desirable to change the above settings per image. Unfortunately, the image loader settings are global. Texture flags also can't be saved in a regular .png or .jpg file. diff --git a/learning/workflow/export/exporting_projects.rst b/learning/workflow/export/exporting_projects.rst index 9b1b43ca0..5e9a69f14 100644 --- a/learning/workflow/export/exporting_projects.rst +++ b/learning/workflow/export/exporting_projects.rst @@ -28,7 +28,7 @@ to distribute loads of files. Some developers may not like curious users peeking at how the game was made, others may just find it inelegant, etc. -Another reason is that, for distribution, the developer might use a +Another reason is that, for distribution, the developer might prefer a specially compiled binary, which is smaller in size, more optimized and does not include tools inside (like the editor, debugger, etc.). @@ -44,15 +44,15 @@ added to a native project together with the game data. This can be troublesome because it means that the developer must be familiarized with the SDK of each platform before even being able to -export. In other words, while learning each SDK is always encouraged, it -can be frustrating to be forced to do it at an undesired time. +export. While learning each SDK is always encouraged, it can be +frustrating to be forced to do it at an undesired time. -There is also another problem with this approach, which is the fact that -different devices prefer some data in different formats to run. The main -example of this is texture compression. All PC hardware uses S3TC (BC) -compression and that has been standardized for more than a decade, but -mobile devices use different formats for texture compression, such as -PVRCT (iOS) or ETC (Android). +There is also another problem with this approach. Different devices +prefer some data in different formats to run. The main example of this +is texture compression. All PC hardware uses S3TC (BC) compression and +that has been standardized for more than a decade, but mobile devices +use different formats for texture compression, such as PVRCT (iOS) or +ETC (Android). Export dialog ------------- @@ -72,7 +72,7 @@ The dialog will open, showing all the supported export platforms: The default options are often enough to export, so tweaking them is not necessary, but provide extra control. However, many platforms require additional tools (SDKs) to be installed to be able to export. Additionally, Godot -needs exports templates installed to create packages. The export dialog +needs export templates installed to create packages. The export dialog will complain when something is missing and will not allow the user to export for that platform until they resolve it: