Files
godot-docs-l10n/classes/uk/class_cubemap.rst

91 lines
7.0 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. _class_Cubemap:
Cubemap
=======
**Успадковує:** :ref:`ImageTextureLayered<class_ImageTextureLayered>` **<** :ref:`TextureLayered<class_TextureLayered>` **<** :ref:`Texture<class_Texture>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
Шість квадратових текстур, що представляють обличчя куба. Зазвичай використовується як хмарочос.
.. rst-class:: classref-introduction-group
Опис
--------
Кубічна карта складається з 6 текстур, організованих у шари. Зазвичай вони використовуються для імітації відображень у 3D-візуалізації (див. :ref:`ReflectionProbe<class_ReflectionProbe>`). Його можна використовувати, щоб зробити об’єкт таким, ніби він відображає навколишнє середовище. Це зазвичай забезпечує набагато кращу продуктивність, ніж інші методи відображення.
Цей ресурс зазвичай використовується як уніформа в власних шейдерах. Кілька основних методів Godot використовують ресурси **Cubemap**.
Щоб самостійно створити такий файл текстури, повторно імпортуйте файли зображень за допомогою попередніх налаштувань імпорту редактора Godot. Щоб створити Cubemap із коду, використовуйте :ref:`ImageTextureLayered.create_from_images()<class_ImageTextureLayered_method_create_from_images>` для екземпляра класу Cubemap.
Очікуваний порядок зображень: X+, X-, Y+, Y-, Z+, Z- (у системі координат Godot, тому Y+ — «вгору», а Z- — «вперед»). За основу можна взяти один із наступних шаблонів:
- `Шаблон кубічної карти 2×3 (параметр макета за замовчуванням) <https://raw.githubusercontent.com/godotengine/godot-docs/master/tutorials/assets_pipeline/img/cubemap_template_2x3.webp>`__
- `Шаблон кубічної карти 3×2 <https://raw.githubusercontent.com/godotengine/godot-docs/master/tutorials/assets_pipeline/img/cubemap_template_3x2.webp>`__
- `Шаблон кубічної карти 1×6 <https://raw.githubusercontent.com/godotengine/godot-docs/master/tutorials/assets_pipeline/img/cubemap_template_1x6.webp>`__
- `Шаблон кубічної карти 6×1 <https://raw.githubusercontent.com/godotengine/godot-docs/master/tutorials/assets_pipeline/img/cubemap_template_6x1.webp>`__
\ **Примітка: ** Godot не підтримує використання кубичних карт у :ref:`PanoramaSkyMaterial<class_PanoramaSkyMaterial>`. Щоб використовувати кубічну карту як скайбокс, перетворіть :ref:`PanoramaSkyMaterial<class_PanoramaSkyMaterial>` на :ref:`ShaderMaterial<class_ShaderMaterial>` за допомогою параметра **Convert to ShaderMaterial** ресурсу, що випадає, а потім замініть його код таким:
.. code:: text
shader_type sky;
uniform samplerCube source_panorama : filter_linear, source_color, hint_default_black;
uniform float exposure: hint_range(0, 128) = 1,0;
void sky() {
// Якщо імпортуєте кубічну карту з іншого механізму, вам може знадобитися перевернути один із компонентів `EYEDIR` нижче
// замінивши його на `-EYEDIR`.
vec3 eyedir = vec3(EYEDIR.x, EYEDIR.y, EYEDIR.z);
COLOR = texture(source_panorama, eyedir).rgb * exposure;
}
Після заміни коду шейдера та збереження вкажіть імпортований ресурс Cubemap у розділі Shader Parameters ShaderMaterial в інспекторі.
Крім того, ви можете використовувати `цей інструмент <https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/cubemap_to_panorama.html>`__, щоб перетворити кубічну карту на рівнопрямокутну карту неба та використовувати :ref:`PanoramaSkyMaterial<class_PanoramaSkyMaterial>` як зазвичай.
.. rst-class:: classref-reftable-group
Методи
------------
.. table::
:widths: auto
+---------------------------------+----------------------------------------------------------------------------------+
| :ref:`Resource<class_Resource>` | :ref:`create_placeholder<class_Cubemap_method_create_placeholder>`\ (\ ) |const| |
+---------------------------------+----------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описи методів
--------------------------
.. _class_Cubemap_method_create_placeholder:
.. rst-class:: classref-method
:ref:`Resource<class_Resource>` **create_placeholder**\ (\ ) |const| :ref:`🔗<class_Cubemap_method_create_placeholder>`
Створює резиденцію вкладника цього ресурсу (``ОтримувачаКупета``).
.. |virtual| replace:: :abbr:`virtual (Зазвичай, цей метод перевизначається користувачем, щоб він мав вплив.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Цей метод не має побічних ефектів. Не змінює ніяку змінну екземпляра об'єкта.)`
.. |vararg| replace:: :abbr:`vararg (Цей метод приймає будь-яке число аргументів після описаних тут.)`
.. |constructor| replace:: :abbr:`constructor (Цей метод використовується для побудови типів.)`
.. |static| replace:: :abbr:`static (Цей метод не потребує екземпляра для виклику, його можна викликати безпосередньо за допомогою назви класу.)`
.. |operator| replace:: :abbr:`operator (Цей метод описує дійсний оператор для взаємодії з цим типом як з лівим операндом.)`
.. |bitfield| replace:: :abbr:`BitField (Це значення є цілим числом, складеним у вигляді бітової маски з наступних прапорів.)`
.. |void| replace:: :abbr:`void (Значення не повертається.)`