Files
godot-docs/classes/class_cubemaparray.rst
2022-11-17 21:03:53 +01:00

36 lines
2.6 KiB
ReStructuredText

:github_url: hide
.. DO NOT EDIT THIS FILE!!!
.. Generated automatically from Godot engine sources.
.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/CubemapArray.xml.
.. _class_CubemapArray:
CubemapArray
============
**Inherits:** :ref:`ImageTextureLayered<class_ImageTextureLayered>` **<** :ref:`TextureLayered<class_TextureLayered>` **<** :ref:`Texture<class_Texture>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
A single composite texture resource which consists of multiple :ref:`Cubemap<class_Cubemap>`\ s.
Description
-----------
``CubemapArray``\ s are made of an array of :ref:`Cubemap<class_Cubemap>`\ s. Accordingly, like :ref:`Cubemap<class_Cubemap>`\ s they are made of multiple textures the amount of which must be divisible by 6 (one image for each face of the cube). The primary benefit of ``CubemapArray``\ s is that they can be accessed in shader code using a single texture reference. In other words, you can pass multiple :ref:`Cubemap<class_Cubemap>`\ s into a shader using a single ``CubemapArray``.
Generally, ``CubemapArray``\ s provide a more efficient way for storing multiple :ref:`Cubemap<class_Cubemap>`\ s compared to storing multiple :ref:`Cubemap<class_Cubemap>`\ s themselves in an array.
Internally, Godot uses ``CubemapArray``\ s for many effects including the :ref:`Sky<class_Sky>`, if you set :ref:`ProjectSettings.rendering/reflections/sky_reflections/texture_array_reflections<class_ProjectSettings_property_rendering/reflections/sky_reflections/texture_array_reflections>` to ``true``.
To create such a texture file yourself, reimport your image files using the Godot Editor import presets.
\ **Note:** ``CubemapArray`` is not supported in the OpenGL 3 rendering backend.
.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`