<?xml version="1.0" encoding="UTF-8" ?>
<class name="ImageTexture3D" inherits="Texture3D" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Texture with 3 dimensions.
	</brief_description>
	<description>
		[ImageTexture3D] is a 3-dimensional [ImageTexture] that has a width, height, and depth. See also [ImageTextureLayered].
		3D textures are typically used to store density maps for [FogMaterial], color correction LUTs for [Environment], vector fields for [GPUParticlesAttractorVectorField3D] and collision maps for [GPUParticlesCollisionSDF3D]. 3D textures can also be used in custom shaders.
	</description>
	<tutorials>
	</tutorials>
	<methods>
		<method name="create">
			<return type="int" enum="Error" />
			<param index="0" name="format" type="int" enum="Image.Format" />
			<param index="1" name="width" type="int" />
			<param index="2" name="height" type="int" />
			<param index="3" name="depth" type="int" />
			<param index="4" name="use_mipmaps" type="bool" />
			<param index="5" name="data" type="Image[]" />
			<description>
				Creates the [ImageTexture3D] with specified [param format], [param width], [param height], and [param depth]. If [param use_mipmaps] is [code]true[/code], generates mipmaps for the [ImageTexture3D].
			</description>
		</method>
		<method name="update">
			<return type="void" />
			<param index="0" name="data" type="Image[]" />
			<description>
				Replaces the texture's existing data with the layers specified in [param data]. The size of [param data] must match the parameters that were used for [method create]. In other words, the texture cannot be resized or have its format changed by calling [method update].
			</description>
		</method>
	</methods>
</class>
