mirror of
https://github.com/godotengine/godot-docs.git
synced 2026-01-04 14:11:02 +03:00
Language fixes and improvements
Based of first part of the patch in #184.
(cherry picked from commit aa520a75ea)
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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:
|
||||
|
||||
+--------+----------+----------+----------+
|
||||
| | <lang1> | <lang2> | <langN> |
|
||||
@@ -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.
|
||||
|
||||
|
||||
@@ -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.
|
||||
|
||||
|
||||
@@ -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:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user