mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2026-01-05 14:10:19 +03:00
115 lines
7.6 KiB
ReStructuredText
115 lines
7.6 KiB
ReStructuredText
:github_url: hide
|
||
|
||
.. _class_ImageTextureLayered:
|
||
|
||
ImageTextureLayered
|
||
===================
|
||
|
||
**Успадковує:** :ref:`TextureLayered<class_TextureLayered>` **<** :ref:`Texture<class_Texture>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
|
||
|
||
**Успадковано від:** :ref:`Cubemap<class_Cubemap>`, :ref:`CubemapArray<class_CubemapArray>`, :ref:`Texture2DArray<class_Texture2DArray>`
|
||
|
||
Базовий клас для типів текстур, які містять дані кількох :ref:`ImageTexture<class_ImageTexture>`\ s. Кожен образ однаковий розмір і формат.
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Опис
|
||
--------
|
||
|
||
Базовий клас для :ref:`Texture2DArray<class_Texture2DArray>`, :ref:`Cubemap<class_Cubemap>` та :ref:`CubemapArray<class_CubemapArray>`. Не можна використовувати безпосередньо, але містить всі функції, необхідні для доступу до отриманих типів ресурсів. Дивіться також :ref:`Texture3D<class_Texture3D>`.
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Методи
|
||
------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Error<enum_@GlobalScope_Error>` | :ref:`create_from_images<class_ImageTextureLayered_method_create_from_images>`\ (\ images\: :ref:`Array<class_Array>`\[:ref:`Image<class_Image>`\]\ ) |
|
||
+---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`update_layer<class_ImageTextureLayered_method_update_layer>`\ (\ image\: :ref:`Image<class_Image>`, layer\: :ref:`int<class_int>`\ ) |
|
||
+---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Описи методів
|
||
--------------------------
|
||
|
||
.. _class_ImageTextureLayered_method_create_from_images:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Error<enum_@GlobalScope_Error>` **create_from_images**\ (\ images\: :ref:`Array<class_Array>`\[:ref:`Image<class_Image>`\]\ ) :ref:`🔗<class_ImageTextureLayered_method_create_from_images>`
|
||
|
||
Створює **ImageTextureLayered** із масиву :ref:`Image<class_Image>`. Очікуваний формат даних див. у :ref:`Image.create()<class_Image_method_create>`. Перше зображення визначає ширину, висоту, формат зображення та параметр відображення mip. Інші зображення *повинні* мати однакову ширину, висоту, формат зображення та параметри відображення mip.
|
||
|
||
Кожне ``Зображення`` представляє один ``шар``.
|
||
|
||
::
|
||
|
||
# Заповніть масив зображень різними кольорами.
|
||
var image= []
|
||
const LAYERS = 6
|
||
for I in LAYERS:
|
||
var image = Image.create_empty(128, 128, false, Image.FORMAT_RGB8)
|
||
if i % 3 == 0:
|
||
image.fill(Color.RED)
|
||
elif i % 3 == 1:
|
||
image.fill(Color.GREEN)
|
||
else:
|
||
image.fill(Color.BLUE)
|
||
images.push_back(image)
|
||
|
||
# Створіть і збережіть 2D масив текстур. Масив зображень має містити принаймні 1 зображення.
|
||
var texture_2d_array = Texture2DArray.new()
|
||
texture_2d_array.create_from_images(image)
|
||
ResourceSaver.save(texture_2d_array, "res://texture_2d_array.res", ResourceSaver.FLAG_COMPRESS)
|
||
|
||
# Створіть і збережіть кубічну карту. Масив зображень повинен містити рівно 6 зображень.
|
||
# Зображення кубічної карти вказуються в такому порядку: X+, X-, Y+, Y-, Z+, Z-
|
||
# (у системі координат Godot, тому Y+ означає «вгору», а Z- — «вперед»).
|
||
var cubemap = Cubemap.new()
|
||
cubemap.create_from_images(image)
|
||
ResourceSaver.save(cubemap, "res://cubemap.res", ResourceSaver.FLAG_COMPRESS)
|
||
|
||
# Створіть і збережіть масив cubemap. Масив зображень має бути кратним 6 зображенням.
|
||
# Зображення кожної кубічної карти вказуються в такому порядку: X+, X-, Y+, Y-, Z+, Z-
|
||
# (у системі координат Godot, тому Y+ означає «вгору», а Z- — «вперед»).
|
||
var cubemap_array = CubemapArray.new()
|
||
cubemap_array.create_from_images(image)
|
||
ResourceSaver.save(cubemap_array, "res://cubemap_array.res", ResourceSaver.FLAG_COMPRESS)
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_ImageTextureLayered_method_update_layer:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **update_layer**\ (\ image\: :ref:`Image<class_Image>`, layer\: :ref:`int<class_int>`\ ) :ref:`🔗<class_ImageTextureLayered_method_update_layer>`
|
||
|
||
Замінює наявні дані :ref:`Image<class_Image>` на даній ``Layer`` з цим новим зображенням.
|
||
|
||
Надана :ref:`Image<class_Image>` повинна мати однакову ширину, висоту, формат зображення, і прапором повідомлень, як інші позначені зображення.
|
||
|
||
Якщо формат зображення не підтримується, він буде декомпресований і перетворений на схожий і підтримується [enum Image.Format
|
||
|
||
Оновлення негайне: це синхронізація з кресленням.
|
||
|
||
.. |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 (Значення не повертається.)`
|