ViewportTexture
Hereda: Texture2D < Texture < Resource < RefCounted < Object
Proporciona el contenido de un Viewport como una textura dinámica.
Descripción
Un ViewportTexture proporciona el contenido de un Viewport como una Texture2D dinámica. Esto se puede utilizar para combinar el renderizado de nodos Control, Node2D y Node3D. Por ejemplo, puedes utilizar esta textura para mostrar una escena 3D dentro de un TextureRect, o una superposición 2D en un Sprite3D.
Para obtener un ViewportTexture en el código, utiliza el método Viewport.get_texture() en el viewport de destino.
Nota: Un ViewportTexture es siempre local a su escena (véase Resource.resource_local_to_scene). Si la raíz de la escena no está lista, puede devolver datos incorrectos (véase Node.ready).
Nota: Instanciar escenas que contengan un ViewportTexture de alta resolución puede causar tartamudeo notable.
Nota: Cuando se utiliza un Viewport con Viewport.use_hdr_2d establecido en true, la textura devuelta será una imagen HDR codificada en espacio lineal. Esto puede verse más oscuro de lo normal cuando se muestra directamente en la pantalla. Para convertir al espacio gamma, puedes hacer lo siguiente:
img.convert(Image.FORMAT_RGBA8)
imb.linear_to_srgb()
Nota: Algunos nodos como Decal, Light3D y PointLight2D no soportan el uso de ViewportTexture directamente. Para utilizar los datos de textura de un ViewportTexture en estos nodos, es necesario crear un ImageTexture llamando a Texture2D.get_image() en el ViewportTexture y pasando el resultado a ImageTexture.create_from_image(). Esta conversión es una operación lenta, por lo que no debe realizarse en cada fotograma.
Tutoriales
Propiedades
|
Descripciones de Propiedades
NodePath viewport_path = NodePath("") 🔗
La ruta al nodo Viewport a mostrar. Es relativa a la raíz de la escena local (véase Resource.get_local_scene()), no a los nodos que usan esta textura.
Nota: En el editor, esta ruta se actualiza automáticamente cuando el viewport objetivo o uno de sus ancestros es renombrado o movido. En tiempo de ejecución, esta ruta podría no actualizarse automáticamente si la raíz de la escena no puede ser encontrada.