Selaa lähdekoodia

Update list of features for Godot 3.4

Hugo Locurcio 3 vuotta sitten
vanhempi
commit
7d9d3be81b
2 muutettua tiedostoa jossa 62 lisäystä ja 24 poistoa
  1. 60 24
      about/list_of_features.rst
  2. 2 0
      community/asset_library/using_assetlib.rst

+ 60 - 24
about/list_of_features.rst

@@ -8,7 +8,7 @@ This page aims to list all features currently supported by Godot.
 .. note::
 .. note::
 
 
     This page lists features supported by the current stable version of
     This page lists features supported by the current stable version of
-    Godot (3.3). `More features <https://docs.godotengine.org/en/latest/about/list_of_features.html>`__
+    Godot (3.4). `More features <https://docs.godotengine.org/en/latest/about/list_of_features.html>`__
     are available in the latest development version (4.0).
     are available in the latest development version (4.0).
 
 
 Features
 Features
@@ -45,7 +45,7 @@ Editor
 **Features:**
 **Features:**
 
 
 - Scene tree editor.
 - Scene tree editor.
-- Script editor.
+- Built-in script editor.
 - Support for :ref:`external script editors <doc_external_editor>` such as
 - Support for :ref:`external script editors <doc_external_editor>` such as
   Visual Studio Code or Vim.
   Visual Studio Code or Vim.
 - GDScript :ref:`debugger <doc_debugger_panel>`.
 - GDScript :ref:`debugger <doc_debugger_panel>`.
@@ -71,8 +71,11 @@ Editor
 
 
 - Editor plugins can be downloaded from the
 - Editor plugins can be downloaded from the
   :ref:`asset library <doc_what_is_assetlib>` to extend editor functionality.
   :ref:`asset library <doc_what_is_assetlib>` to extend editor functionality.
-- Create your own plugins using GDScript to add new features or speed up your workflow.
+- :ref:`Create your own plugins <doc_making_plugins>` using GDScript to add new
 - Download projects from the asset library in the project manager and import them directly.
 - Download projects from the asset library in the project manager and import them directly.
+  features or speed up your workflow.
+- :ref:`Download projects from the asset library <doc_using_assetlib_editor>`
+  in the project manager and import them directly.
 
 
 2D graphics
 2D graphics
 ^^^^^^^^^^^
 ^^^^^^^^^^^
@@ -96,7 +99,7 @@ Editor
 - AnimatedSprite as a helper for creating animated sprites.
 - AnimatedSprite as a helper for creating animated sprites.
 - Parallax layers.
 - Parallax layers.
 
 
-   - Pseudo-3D support by automatically duplicating a layer several times.
+   - Pseudo-3D support including preview in the editor.
 
 
 - 2D lighting with normal maps.
 - 2D lighting with normal maps.
 
 
@@ -149,7 +152,9 @@ Editor
 - OpenGL ES 3.0 renderer (uses OpenGL 3.3 on desktop platforms).
 - OpenGL ES 3.0 renderer (uses OpenGL 3.3 on desktop platforms).
 
 
    - High-end visuals. Recommended on desktop platforms.
    - High-end visuals. Recommended on desktop platforms.
-   - HDR rendering with sRGB.
+   - Optional HDR rendering with sRGB (enabled by default).
+   - Uses an optional depth prepass (enabled by default) to reduce the cost of
+     overdraw, which speeds up complex scene rendering.
 
 
 - OpenGL ES 2.0 renderer (uses OpenGL 2.1 on desktop platforms).
 - OpenGL ES 2.0 renderer (uses OpenGL 2.1 on desktop platforms).
 
 
@@ -162,23 +167,35 @@ Editor
 
 
 - Perspective, orthographic and frustum-offset cameras.
 - Perspective, orthographic and frustum-offset cameras.
 
 
-**Physically-based rendering:**
+**Physically-based rendering (built-in material features):**
 
 
 - Follows the Disney PBR model.
 - Follows the Disney PBR model.
+- Supports Lambert, Lambert Wrap (half-Lambert), Oren-Nayar and Toon diffuse shading modes.
+- Supports Schlick-GGX, Blinn, Phong, Toon and Disabled specular shading modes.
 - Uses a roughness-metallic workflow with support for ORM textures.
 - Uses a roughness-metallic workflow with support for ORM textures.
+- Uses horizon specular occlusion (Filament model) to improve material appearance
 - Normal mapping.
 - Normal mapping.
-- *GLES3:* Parallax/relief mapping with automatic level of detail based on distance.
-- *GLES3:* Sub-surface scattering and transmittance.
-- *GLES3:* Proximity fade (soft particles).
+- Detail mapping for the albedo and normal maps.
 - Distance fade which can use alpha blending or dithering to avoid going through
 - Distance fade which can use alpha blending or dithering to avoid going through
   the transparent pipeline.
   the transparent pipeline.
 - Dithering can be determined on a per-pixel or per-object basis.
 - Dithering can be determined on a per-pixel or per-object basis.
+- *GLES3:* Parallax/relief mapping with automatic level of detail based on distance.
+- *GLES3:* Sub-surface scattering and transmittance.
+- *GLES3:* Refraction with support for material roughness (resulting in blurry refraction).
+  On GLES2, refraction is still functional but lacks support for material roughness.
+- *GLES3:* Proximity fade (soft particles).
 
 
 **Real-time lighting:**
 **Real-time lighting:**
 
 
 - Directional lights (sun/moon). Up to 4 per scene.
 - Directional lights (sun/moon). Up to 4 per scene.
 - Omnidirectional lights.
 - Omnidirectional lights.
 - Spot lights with adjustable cone angle and attenuation.
 - Spot lights with adjustable cone angle and attenuation.
+- Specular energy can be adjusted on a per-light basis.
+- *GLES3:* Lighting is done with a single-pass forward approach.
+  By default, up to 32 omni light and 32 spot lights can be displayed per mesh resource.
+  If needed, this limit can be increased at the cost of increased shader compilation times and lower performance.
+  GLES2 uses a multi-pass forward approach to lighting, which doesn't have a
+  limit on the number of lights but is slower with many lights.
 
 
 **Shadow mapping:**
 **Shadow mapping:**
 
 
@@ -203,11 +220,11 @@ Editor
 
 
 **Reflections:**
 **Reflections:**
 
 
-- *GLES3:* Voxel-based reflections (when using GI probes).
 - Fast baked reflections or slow real-time reflections using ReflectionProbe.
 - Fast baked reflections or slow real-time reflections using ReflectionProbe.
-  Parallax correction can optionally be enabled.
-- *GLES3:* Screen-space reflections.
+  Parallax box correction can optionally be enabled.
 - Reflection techniques can be mixed together for greater accuracy or scalability.
 - Reflection techniques can be mixed together for greater accuracy or scalability.
+- *GLES3:* Voxel-based reflections (when using GI probes).
+- *GLES3:* Screen-space reflections.
 
 
 **Sky:**
 **Sky:**
 
 
@@ -245,18 +262,30 @@ Editor
 
 
 **Texture compression:**
 **Texture compression:**
 
 
+- Lossless or lossy WebP (does not save VRAM; only reduces storage size).
+- S3TC (only supported on desktop platforms).
+- ETC1 (recommended when using the GLES2 renderer).
 - *GLES3:* BPTC for high-quality compression (not supported on macOS).
 - *GLES3:* BPTC for high-quality compression (not supported on macOS).
 - *GLES3:* ETC2 (not supported on macOS).
 - *GLES3:* ETC2 (not supported on macOS).
-- ETC1 (recommended when using the GLES2 renderer).
-- *GLES3:* S3TC (not supported on mobile/Web platforms).
 
 
 **Anti-aliasing:**
 **Anti-aliasing:**
 
 
 - Multi-sample antialiasing (MSAA).
 - Multi-sample antialiasing (MSAA).
 - Fast approximate antialiasing (FXAA).
 - Fast approximate antialiasing (FXAA).
 
 
-Most of these effects can be adjusted for better performance or to further
-improve quality. This can be helpful when using Godot for offline rendering.
+**Performance:**
+
+- Occlusion culling with :ref:`rooms and portals <doc_rooms_and_portals>`.
+  Supports gameplay notifications with primary and secondary visibility to
+  disable AI/physics processing for nodes that don't need it.
+- Real-time occluder spheres. Not as effective as rooms and portals
+  (and doesn't support gameplay notifications), but easier to set up.
+
+.. note::
+
+    Most of the effects listed above can be adjusted for better performance or
+    to further improve quality. This can be helpful when using Godot for
+    offline rendering.
 
 
 3D tools
 3D tools
 ^^^^^^^^
 ^^^^^^^^
@@ -270,6 +299,7 @@ improve quality. This can be helpful when using Godot for offline rendering.
    - PathFollow3D node to make nodes follow a Path3D.
    - PathFollow3D node to make nodes follow a Path3D.
 
 
 - 3D geometry helper class.
 - 3D geometry helper class.
+- Support for exporting the current scene as a glTF 2.0 file from the editor.
 
 
 3D physics
 3D physics
 ^^^^^^^^^^
 ^^^^^^^^^^
@@ -361,7 +391,7 @@ Audio
 
 
 - Support for re-routable :ref:`audio buses <doc_audio_buses>` and effects
 - Support for re-routable :ref:`audio buses <doc_audio_buses>` and effects
   with dozens of effects included.
   with dozens of effects included.
-- Listener3D node to listen from a position different than the camera in 3D.
+- Listener2D and Listener3D nodes to listen from a position different than the camera.
 - Audio input to record microphones with real-time access using the AudioEffectCapture class.
 - Audio input to record microphones with real-time access using the AudioEffectCapture class.
 - MIDI input.
 - MIDI input.
 
 
@@ -476,6 +506,10 @@ Windowing and OS integration
 - Execute commands in a blocking or non-blocking manner.
 - Execute commands in a blocking or non-blocking manner.
 - Open file paths and URLs using default or custom protocol handlers (if registered on the system).
 - Open file paths and URLs using default or custom protocol handlers (if registered on the system).
 - Parse custom command line arguments.
 - Parse custom command line arguments.
+- :ref:`Headless/server binaries <doc_exporting_for_dedicated_servers>` can be
+  downloaded for Linux and :ref:`compiled for macOS <doc_compiling_for_osx>`.
+  Any binary can be used without a window using the ``--no-window``
+  :ref:`command line argument <doc_command_line_tutorial>`.
 
 
 Mobile
 Mobile
 ^^^^^^
 ^^^^^^
@@ -489,9 +523,9 @@ XR support (AR and VR)
 
 
 - Support for ARKit on iOS out of the box.
 - Support for ARKit on iOS out of the box.
 - Support for the OpenXR APIs.
 - Support for the OpenXR APIs.
-  
+
    - Includes support for popular headsets like the Meta Quest and the Valve Index.
    - Includes support for popular headsets like the Meta Quest and the Valve Index.
-  
+
 - Support for the OpenVR APIs.
 - Support for the OpenVR APIs.
 
 
 GUI system
 GUI system
@@ -510,7 +544,8 @@ The editor UI can easily be extended in many ways using add-ons.
 - Labels.
 - Labels.
 - RichTextLabel for :ref:`text formatted using BBCode <doc_bbcode_in_richtextlabel>`.
 - RichTextLabel for :ref:`text formatted using BBCode <doc_bbcode_in_richtextlabel>`.
 - Trees (can also be used to represent tables).
 - Trees (can also be used to represent tables).
-- Containers (horizontal, vertical, grid, center, margin, draggable splitter, ...).
+- Color picker with RGB and HSV modes.
+- Containers (horizontal, vertical, grid, flow, center, margin, aspect ratio, draggable splitter, ...).
 - Controls can be rotated and scaled.
 - Controls can be rotated and scaled.
 
 
 **Sizing:**
 **Sizing:**
@@ -535,7 +570,7 @@ The editor UI can easily be extended in many ways using add-ons.
 
 
 - Procedural vector-based theming using :ref:`class_StyleBoxFlat`.
 - Procedural vector-based theming using :ref:`class_StyleBoxFlat`.
 
 
-   - Supports rounded/beveled corners, drop shadows and per-border widths.
+   - Supports rounded/beveled corners, drop shadows, per-border widths and antialiasing.
 
 
 - Texture-based theming using :ref:`class_StyleBoxTexture`.
 - Texture-based theming using :ref:`class_StyleBoxTexture`.
 
 
@@ -546,6 +581,7 @@ Animation
 ^^^^^^^^^
 ^^^^^^^^^
 
 
 - Direct kinematics and inverse kinematics.
 - Direct kinematics and inverse kinematics.
+- :ref:`Tween <class_Tween>` node to easily perform procedural animations by code.
 - Support for animating any property with customizable interpolation.
 - Support for animating any property with customizable interpolation.
 - Support for calling methods in animation tracks.
 - Support for calling methods in animation tracks.
 - Support for playing sounds in animation tracks.
 - Support for playing sounds in animation tracks.
@@ -566,7 +602,7 @@ File formats
 - Read and write :ref:`class_JSON` files.
 - Read and write :ref:`class_JSON` files.
 - Read and write INI-style configuration files using :ref:`class_ConfigFile`.
 - Read and write INI-style configuration files using :ref:`class_ConfigFile`.
 
 
-   - Can (de)serialize any Godot datatype, including Vector, Color, ...
+   - Can (de)serialize any Godot datatype, including Vector2/3, Color, ...
 
 
 - Read XML files using :ref:`class_XMLParser`.
 - Read XML files using :ref:`class_XMLParser`.
 - Pack game data into a PCK file (custom format optimized for fast seeking),
 - Pack game data into a PCK file (custom format optimized for fast seeking),
@@ -579,10 +615,10 @@ Miscellaneous
 
 
 - :ref:`Low-level access to servers <doc_using_servers>` which allows bypassing
 - :ref:`Low-level access to servers <doc_using_servers>` which allows bypassing
   the scene tree's overhead when needed.
   the scene tree's overhead when needed.
-- Command line interface for automation.
+- :ref:`Command line interface <doc_command_line_tutorial>` for automation.
 
 
    - Export and deploy projects using continuous integration platforms.
    - Export and deploy projects using continuous integration platforms.
-   - `Completion scripts <https://github.com/godotengine/godot/tree/master/misc/dist/shell>`__
+   - `Shell completion scripts <https://github.com/godotengine/godot/tree/master/misc/dist/shell>`__
      are available for Bash, zsh and fish.
      are available for Bash, zsh and fish.
 
 
 - Support for :ref:`C++ modules <doc_custom_modules_in_c++>` statically linked
 - Support for :ref:`C++ modules <doc_custom_modules_in_c++>` statically linked

+ 2 - 0
community/asset_library/using_assetlib.rst

@@ -101,6 +101,8 @@ new functions:
 You can learn how to submit assets to the Library, and what the asset submission
 You can learn how to submit assets to the Library, and what the asset submission
 guidelines are, in the next part of this tutorial, :ref:`doc_submitting_to_assetlib`.
 guidelines are, in the next part of this tutorial, :ref:`doc_submitting_to_assetlib`.
 
 
+.. _doc_using_assetlib_editor:
+
 In the editor
 In the editor
 -------------
 -------------