Files
godot-docs-l10n/classes/es/class_basematerial3d.rst
Rémi Verschelde c3f2364c10 Sync classref with 4.6 branch
Lots of translations invalidated (fuzzied) as we just synced Weblate.
2025-12-19 16:39:51 +01:00

4009 lines
209 KiB
ReStructuredText

:github_url: hide
.. _class_BaseMaterial3D:
BaseMaterial3D
==============
**Hereda:** :ref:`Material<class_Material>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
**Heredado por:** :ref:`ORMMaterial3D<class_ORMMaterial3D>`, :ref:`StandardMaterial3D<class_StandardMaterial3D>`
Clase base abstracta para definir las propiedades de renderizado 3D de mallas.
.. rst-class:: classref-introduction-group
Descripción
----------------------
This class serves as a default material with a wide variety of rendering features and properties without the need to write shader code. See the tutorial below for details.
.. rst-class:: classref-introduction-group
Tutoriales
--------------------
- :doc:`Material 3D estándar y Material 3D ORM <../tutorials/3d/standard_material_3d>`
.. rst-class:: classref-reftable-group
Propiedades
----------------------
.. table::
:widths: auto
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Color<class_Color>` | :ref:`albedo_color<class_BaseMaterial3D_property_albedo_color>` | ``Color(1, 1, 1, 1)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`albedo_texture<class_BaseMaterial3D_property_albedo_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`albedo_texture_force_srgb<class_BaseMaterial3D_property_albedo_texture_force_srgb>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`albedo_texture_msdf<class_BaseMaterial3D_property_albedo_texture_msdf>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`alpha_antialiasing_edge<class_BaseMaterial3D_property_alpha_antialiasing_edge>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` | :ref:`alpha_antialiasing_mode<class_BaseMaterial3D_property_alpha_antialiasing_mode>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`alpha_hash_scale<class_BaseMaterial3D_property_alpha_hash_scale>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`alpha_scissor_threshold<class_BaseMaterial3D_property_alpha_scissor_threshold>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`anisotropy<class_BaseMaterial3D_property_anisotropy>` | ``0.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`anisotropy_enabled<class_BaseMaterial3D_property_anisotropy_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`anisotropy_flowmap<class_BaseMaterial3D_property_anisotropy_flowmap>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`ao_enabled<class_BaseMaterial3D_property_ao_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`ao_light_affect<class_BaseMaterial3D_property_ao_light_affect>` | ``0.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`ao_on_uv2<class_BaseMaterial3D_property_ao_on_uv2>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`ao_texture<class_BaseMaterial3D_property_ao_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` | :ref:`ao_texture_channel<class_BaseMaterial3D_property_ao_texture_channel>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Color<class_Color>` | :ref:`backlight<class_BaseMaterial3D_property_backlight>` | ``Color(0, 0, 0, 1)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`backlight_enabled<class_BaseMaterial3D_property_backlight_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`backlight_texture<class_BaseMaterial3D_property_backlight_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`bent_normal_enabled<class_BaseMaterial3D_property_bent_normal_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`bent_normal_texture<class_BaseMaterial3D_property_bent_normal_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`billboard_keep_scale<class_BaseMaterial3D_property_billboard_keep_scale>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>` | :ref:`billboard_mode<class_BaseMaterial3D_property_billboard_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` | :ref:`blend_mode<class_BaseMaterial3D_property_blend_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`clearcoat<class_BaseMaterial3D_property_clearcoat>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`clearcoat_enabled<class_BaseMaterial3D_property_clearcoat_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`clearcoat_roughness<class_BaseMaterial3D_property_clearcoat_roughness>` | ``0.5`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`clearcoat_texture<class_BaseMaterial3D_property_clearcoat_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`CullMode<enum_BaseMaterial3D_CullMode>` | :ref:`cull_mode<class_BaseMaterial3D_property_cull_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`DepthDrawMode<enum_BaseMaterial3D_DepthDrawMode>` | :ref:`depth_draw_mode<class_BaseMaterial3D_property_depth_draw_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`DepthTest<enum_BaseMaterial3D_DepthTest>` | :ref:`depth_test<class_BaseMaterial3D_property_depth_test>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` | :ref:`detail_blend_mode<class_BaseMaterial3D_property_detail_blend_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`detail_enabled<class_BaseMaterial3D_property_detail_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`detail_mask<class_BaseMaterial3D_property_detail_mask>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`detail_normal<class_BaseMaterial3D_property_detail_normal>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`DetailUV<enum_BaseMaterial3D_DetailUV>` | :ref:`detail_uv_layer<class_BaseMaterial3D_property_detail_uv_layer>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`DiffuseMode<enum_BaseMaterial3D_DiffuseMode>` | :ref:`diffuse_mode<class_BaseMaterial3D_property_diffuse_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`disable_ambient_light<class_BaseMaterial3D_property_disable_ambient_light>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`disable_fog<class_BaseMaterial3D_property_disable_fog>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`disable_receive_shadows<class_BaseMaterial3D_property_disable_receive_shadows>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`disable_specular_occlusion<class_BaseMaterial3D_property_disable_specular_occlusion>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`distance_fade_max_distance<class_BaseMaterial3D_property_distance_fade_max_distance>` | ``10.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`distance_fade_min_distance<class_BaseMaterial3D_property_distance_fade_min_distance>` | ``0.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>` | :ref:`distance_fade_mode<class_BaseMaterial3D_property_distance_fade_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Color<class_Color>` | :ref:`emission<class_BaseMaterial3D_property_emission>` | ``Color(0, 0, 0, 1)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`emission_enabled<class_BaseMaterial3D_property_emission_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`emission_energy_multiplier<class_BaseMaterial3D_property_emission_energy_multiplier>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`emission_intensity<class_BaseMaterial3D_property_emission_intensity>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`emission_on_uv2<class_BaseMaterial3D_property_emission_on_uv2>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`EmissionOperator<enum_BaseMaterial3D_EmissionOperator>` | :ref:`emission_operator<class_BaseMaterial3D_property_emission_operator>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`emission_texture<class_BaseMaterial3D_property_emission_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`fixed_size<class_BaseMaterial3D_property_fixed_size>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`fov_override<class_BaseMaterial3D_property_fov_override>` | ``75.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`grow<class_BaseMaterial3D_property_grow>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`grow_amount<class_BaseMaterial3D_property_grow_amount>` | ``0.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`heightmap_deep_parallax<class_BaseMaterial3D_property_heightmap_deep_parallax>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`heightmap_enabled<class_BaseMaterial3D_property_heightmap_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`heightmap_flip_binormal<class_BaseMaterial3D_property_heightmap_flip_binormal>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`heightmap_flip_tangent<class_BaseMaterial3D_property_heightmap_flip_tangent>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`heightmap_flip_texture<class_BaseMaterial3D_property_heightmap_flip_texture>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`heightmap_max_layers<class_BaseMaterial3D_property_heightmap_max_layers>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`heightmap_min_layers<class_BaseMaterial3D_property_heightmap_min_layers>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`heightmap_scale<class_BaseMaterial3D_property_heightmap_scale>` | ``5.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`heightmap_texture<class_BaseMaterial3D_property_heightmap_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`metallic<class_BaseMaterial3D_property_metallic>` | ``0.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`metallic_specular<class_BaseMaterial3D_property_metallic_specular>` | ``0.5`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`metallic_texture<class_BaseMaterial3D_property_metallic_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` | :ref:`metallic_texture_channel<class_BaseMaterial3D_property_metallic_texture_channel>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`msdf_outline_size<class_BaseMaterial3D_property_msdf_outline_size>` | ``0.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`msdf_pixel_range<class_BaseMaterial3D_property_msdf_pixel_range>` | ``4.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`no_depth_test<class_BaseMaterial3D_property_no_depth_test>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`normal_enabled<class_BaseMaterial3D_property_normal_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`normal_scale<class_BaseMaterial3D_property_normal_scale>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`normal_texture<class_BaseMaterial3D_property_normal_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`orm_texture<class_BaseMaterial3D_property_orm_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`particles_anim_h_frames<class_BaseMaterial3D_property_particles_anim_h_frames>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`particles_anim_loop<class_BaseMaterial3D_property_particles_anim_loop>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`particles_anim_v_frames<class_BaseMaterial3D_property_particles_anim_v_frames>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`point_size<class_BaseMaterial3D_property_point_size>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`proximity_fade_distance<class_BaseMaterial3D_property_proximity_fade_distance>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`proximity_fade_enabled<class_BaseMaterial3D_property_proximity_fade_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`refraction_enabled<class_BaseMaterial3D_property_refraction_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`refraction_scale<class_BaseMaterial3D_property_refraction_scale>` | ``0.05`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`refraction_texture<class_BaseMaterial3D_property_refraction_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` | :ref:`refraction_texture_channel<class_BaseMaterial3D_property_refraction_texture_channel>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`rim<class_BaseMaterial3D_property_rim>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`rim_enabled<class_BaseMaterial3D_property_rim_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`rim_texture<class_BaseMaterial3D_property_rim_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`rim_tint<class_BaseMaterial3D_property_rim_tint>` | ``0.5`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`roughness<class_BaseMaterial3D_property_roughness>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`roughness_texture<class_BaseMaterial3D_property_roughness_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` | :ref:`roughness_texture_channel<class_BaseMaterial3D_property_roughness_texture_channel>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>` | :ref:`shading_mode<class_BaseMaterial3D_property_shading_mode>` | ``1`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`shadow_to_opacity<class_BaseMaterial3D_property_shadow_to_opacity>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`SpecularMode<enum_BaseMaterial3D_SpecularMode>` | :ref:`specular_mode<class_BaseMaterial3D_property_specular_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Color<class_Color>` | :ref:`stencil_color<class_BaseMaterial3D_property_stencil_color>` | ``Color(0, 0, 0, 1)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` | :ref:`stencil_compare<class_BaseMaterial3D_property_stencil_compare>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`stencil_flags<class_BaseMaterial3D_property_stencil_flags>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`StencilMode<enum_BaseMaterial3D_StencilMode>` | :ref:`stencil_mode<class_BaseMaterial3D_property_stencil_mode>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`stencil_outline_thickness<class_BaseMaterial3D_property_stencil_outline_thickness>` | ``0.01`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`int<class_int>` | :ref:`stencil_reference<class_BaseMaterial3D_property_stencil_reference>` | ``1`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`subsurf_scatter_enabled<class_BaseMaterial3D_property_subsurf_scatter_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`subsurf_scatter_skin_mode<class_BaseMaterial3D_property_subsurf_scatter_skin_mode>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`subsurf_scatter_strength<class_BaseMaterial3D_property_subsurf_scatter_strength>` | ``0.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`subsurf_scatter_texture<class_BaseMaterial3D_property_subsurf_scatter_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`subsurf_scatter_transmittance_boost<class_BaseMaterial3D_property_subsurf_scatter_transmittance_boost>` | ``0.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Color<class_Color>` | :ref:`subsurf_scatter_transmittance_color<class_BaseMaterial3D_property_subsurf_scatter_transmittance_color>` | ``Color(1, 1, 1, 1)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`subsurf_scatter_transmittance_depth<class_BaseMaterial3D_property_subsurf_scatter_transmittance_depth>` | ``0.1`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`subsurf_scatter_transmittance_enabled<class_BaseMaterial3D_property_subsurf_scatter_transmittance_enabled>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`subsurf_scatter_transmittance_texture<class_BaseMaterial3D_property_subsurf_scatter_transmittance_texture>` | |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` | :ref:`texture_filter<class_BaseMaterial3D_property_texture_filter>` | ``3`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`texture_repeat<class_BaseMaterial3D_property_texture_repeat>` | ``true`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Transparency<enum_BaseMaterial3D_Transparency>` | :ref:`transparency<class_BaseMaterial3D_property_transparency>` | ``0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`use_fov_override<class_BaseMaterial3D_property_use_fov_override>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`use_particle_trails<class_BaseMaterial3D_property_use_particle_trails>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`use_point_size<class_BaseMaterial3D_property_use_point_size>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`use_z_clip_scale<class_BaseMaterial3D_property_use_z_clip_scale>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`uv1_offset<class_BaseMaterial3D_property_uv1_offset>` | ``Vector3(0, 0, 0)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`uv1_scale<class_BaseMaterial3D_property_uv1_scale>` | ``Vector3(1, 1, 1)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`uv1_triplanar<class_BaseMaterial3D_property_uv1_triplanar>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`uv1_triplanar_sharpness<class_BaseMaterial3D_property_uv1_triplanar_sharpness>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`uv1_world_triplanar<class_BaseMaterial3D_property_uv1_world_triplanar>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`uv2_offset<class_BaseMaterial3D_property_uv2_offset>` | ``Vector3(0, 0, 0)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`uv2_scale<class_BaseMaterial3D_property_uv2_scale>` | ``Vector3(1, 1, 1)`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`uv2_triplanar<class_BaseMaterial3D_property_uv2_triplanar>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`uv2_triplanar_sharpness<class_BaseMaterial3D_property_uv2_triplanar_sharpness>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`uv2_world_triplanar<class_BaseMaterial3D_property_uv2_world_triplanar>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`vertex_color_is_srgb<class_BaseMaterial3D_property_vertex_color_is_srgb>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`bool<class_bool>` | :ref:`vertex_color_use_as_albedo<class_BaseMaterial3D_property_vertex_color_use_as_albedo>` | ``false`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
| :ref:`float<class_float>` | :ref:`z_clip_scale<class_BaseMaterial3D_property_z_clip_scale>` | ``1.0`` |
+-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------+-----------------------+
.. rst-class:: classref-reftable-group
Métodos
--------------
.. table::
:widths: auto
+-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`get_feature<class_BaseMaterial3D_method_get_feature>`\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const| |
+-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`get_flag<class_BaseMaterial3D_method_get_flag>`\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const| |
+-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Texture2D<class_Texture2D>` | :ref:`get_texture<class_BaseMaterial3D_method_get_texture>`\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const| |
+-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_feature<class_BaseMaterial3D_method_set_feature>`\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ ) |
+-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_flag<class_BaseMaterial3D_method_set_flag>`\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ ) |
+-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_texture<class_BaseMaterial3D_method_set_texture>`\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ ) |
+-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Enumeraciones
--------------------------
.. _enum_BaseMaterial3D_TextureParam:
.. rst-class:: classref-enumeration
enum **TextureParam**: :ref:`🔗<enum_BaseMaterial3D_TextureParam>`
.. _class_BaseMaterial3D_constant_TEXTURE_ALBEDO:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_ALBEDO** = ``0``
Textura que especifica el color por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_METALLIC:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_METALLIC** = ``1``
Textura que especifica el valor metálico por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_ROUGHNESS:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_ROUGHNESS** = ``2``
Textura que especifica el valor de rugosidad por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_EMISSION:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_EMISSION** = ``3``
Textura que especifica el color de emisión por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_NORMAL:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_NORMAL** = ``4``
Textura que especifica el vector normal por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_BENT_NORMAL:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_BENT_NORMAL** = ``18``
Texture specifying per-pixel bent normal vector.
.. _class_BaseMaterial3D_constant_TEXTURE_RIM:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_RIM** = ``5``
Textura que especifica el valor del borde por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_CLEARCOAT:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_CLEARCOAT** = ``6``
Textura que especifica el valor del barniz por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_FLOWMAP:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_FLOWMAP** = ``7``
Textura que especifica la dirección del mapa de flujo por píxel para su uso con :ref:`anisotropy<class_BaseMaterial3D_property_anisotropy>`.
.. _class_BaseMaterial3D_constant_TEXTURE_AMBIENT_OCCLUSION:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_AMBIENT_OCCLUSION** = ``8``
Textura que especifica el valor de oclusión ambiental por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_HEIGHTMAP:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_HEIGHTMAP** = ``9``
Textura que especifica la altura por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_SUBSURFACE_SCATTERING:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_SUBSURFACE_SCATTERING** = ``10``
Textura que especifica la subsurface scattering por pixel.
.. _class_BaseMaterial3D_constant_TEXTURE_SUBSURFACE_TRANSMITTANCE:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_SUBSURFACE_TRANSMITTANCE** = ``11``
Texture specifying per-pixel transmittance for subsurface scattering.
.. _class_BaseMaterial3D_constant_TEXTURE_BACKLIGHT:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_BACKLIGHT** = ``12``
Textura que especifica el color de luz de fondo por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_REFRACTION:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_REFRACTION** = ``13``
Textura que especifica la fuerza de refracción por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_DETAIL_MASK:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_DETAIL_MASK** = ``14``
Textura que especifica el valor de mezcla de la máscara de detalles por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_DETAIL_ALBEDO:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_DETAIL_ALBEDO** = ``15``
Textura que especifica el color de detalle por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_DETAIL_NORMAL:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_DETAIL_NORMAL** = ``16``
La textura que especifica el detalle de la normal por píxel.
.. _class_BaseMaterial3D_constant_TEXTURE_ORM:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_ORM** = ``17``
Texture holding ambient occlusion, roughness, and metallic.
.. _class_BaseMaterial3D_constant_TEXTURE_MAX:
.. rst-class:: classref-enumeration-constant
:ref:`TextureParam<enum_BaseMaterial3D_TextureParam>` **TEXTURE_MAX** = ``19``
Representa el tamaño del enum :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_TextureFilter:
.. rst-class:: classref-enumeration
enum **TextureFilter**: :ref:`🔗<enum_BaseMaterial3D_TextureFilter>`
.. _class_BaseMaterial3D_constant_TEXTURE_FILTER_NEAREST:
.. rst-class:: classref-enumeration-constant
:ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **TEXTURE_FILTER_NEAREST** = ``0``
The texture filter reads from the nearest pixel only. This makes the texture look pixelated from up close, and grainy from a distance (due to mipmaps not being sampled).
.. _class_BaseMaterial3D_constant_TEXTURE_FILTER_LINEAR:
.. rst-class:: classref-enumeration-constant
:ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **TEXTURE_FILTER_LINEAR** = ``1``
The texture filter blends between the nearest 4 pixels. This makes the texture look smooth from up close, and grainy from a distance (due to mipmaps not being sampled).
.. _class_BaseMaterial3D_constant_TEXTURE_FILTER_NEAREST_WITH_MIPMAPS:
.. rst-class:: classref-enumeration-constant
:ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **TEXTURE_FILTER_NEAREST_WITH_MIPMAPS** = ``2``
The texture filter reads from the nearest pixel and blends between the nearest 2 mipmaps (or uses the nearest mipmap if :ref:`ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter<class_ProjectSettings_property_rendering/textures/default_filters/use_nearest_mipmap_filter>` is ``true``). This makes the texture look pixelated from up close, and smooth from a distance.
.. _class_BaseMaterial3D_constant_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS:
.. rst-class:: classref-enumeration-constant
:ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **TEXTURE_FILTER_LINEAR_WITH_MIPMAPS** = ``3``
The texture filter blends between the nearest 4 pixels and between the nearest 2 mipmaps (or uses the nearest mipmap if :ref:`ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter<class_ProjectSettings_property_rendering/textures/default_filters/use_nearest_mipmap_filter>` is ``true``). This makes the texture look smooth from up close, and smooth from a distance.
.. _class_BaseMaterial3D_constant_TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC:
.. rst-class:: classref-enumeration-constant
:ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC** = ``4``
The texture filter reads from the nearest pixel and blends between 2 mipmaps (or uses the nearest mipmap if :ref:`ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter<class_ProjectSettings_property_rendering/textures/default_filters/use_nearest_mipmap_filter>` is ``true``) based on the angle between the surface and the camera view. This makes the texture look pixelated from up close, and smooth from a distance. Anisotropic filtering improves texture quality on surfaces that are almost in line with the camera, but is slightly slower. The anisotropic filtering level can be changed by adjusting :ref:`ProjectSettings.rendering/textures/default_filters/anisotropic_filtering_level<class_ProjectSettings_property_rendering/textures/default_filters/anisotropic_filtering_level>`.
.. _class_BaseMaterial3D_constant_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC:
.. rst-class:: classref-enumeration-constant
:ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC** = ``5``
The texture filter blends between the nearest 4 pixels and blends between 2 mipmaps (or uses the nearest mipmap if :ref:`ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter<class_ProjectSettings_property_rendering/textures/default_filters/use_nearest_mipmap_filter>` is ``true``) based on the angle between the surface and the camera view. This makes the texture look smooth from up close, and smooth from a distance. Anisotropic filtering improves texture quality on surfaces that are almost in line with the camera, but is slightly slower. The anisotropic filtering level can be changed by adjusting :ref:`ProjectSettings.rendering/textures/default_filters/anisotropic_filtering_level<class_ProjectSettings_property_rendering/textures/default_filters/anisotropic_filtering_level>`.
.. _class_BaseMaterial3D_constant_TEXTURE_FILTER_MAX:
.. rst-class:: classref-enumeration-constant
:ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **TEXTURE_FILTER_MAX** = ``6``
Representa el tamaño del enum :ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>`.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_DetailUV:
.. rst-class:: classref-enumeration
enum **DetailUV**: :ref:`🔗<enum_BaseMaterial3D_DetailUV>`
.. _class_BaseMaterial3D_constant_DETAIL_UV_1:
.. rst-class:: classref-enumeration-constant
:ref:`DetailUV<enum_BaseMaterial3D_DetailUV>` **DETAIL_UV_1** = ``0``
Usa ``UV`` con la textura de detalle.
.. _class_BaseMaterial3D_constant_DETAIL_UV_2:
.. rst-class:: classref-enumeration-constant
:ref:`DetailUV<enum_BaseMaterial3D_DetailUV>` **DETAIL_UV_2** = ``1``
Usa ``UV2`` con la textura de detalle.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_Transparency:
.. rst-class:: classref-enumeration
enum **Transparency**: :ref:`🔗<enum_BaseMaterial3D_Transparency>`
.. _class_BaseMaterial3D_constant_TRANSPARENCY_DISABLED:
.. rst-class:: classref-enumeration-constant
:ref:`Transparency<enum_BaseMaterial3D_Transparency>` **TRANSPARENCY_DISABLED** = ``0``
El material no usará transparencia. Es el más rápido de renderizar.
.. _class_BaseMaterial3D_constant_TRANSPARENCY_ALPHA:
.. rst-class:: classref-enumeration-constant
:ref:`Transparency<enum_BaseMaterial3D_Transparency>` **TRANSPARENCY_ALPHA** = ``1``
The material will use the texture's alpha values for transparency. This is the slowest to render, and disables shadow casting.
.. _class_BaseMaterial3D_constant_TRANSPARENCY_ALPHA_SCISSOR:
.. rst-class:: classref-enumeration-constant
:ref:`Transparency<enum_BaseMaterial3D_Transparency>` **TRANSPARENCY_ALPHA_SCISSOR** = ``2``
El material cortará todos los valores por debajo de un umbral, el resto permanecerá opaco. Las porciones opacas se renderizarán en el pre-paso de profundidad. Esto es más rápido de renderizar que la mezcla alfa, pero más lento que el renderizado opaco. Esto también admite la proyección de sombras.
.. _class_BaseMaterial3D_constant_TRANSPARENCY_ALPHA_HASH:
.. rst-class:: classref-enumeration-constant
:ref:`Transparency<enum_BaseMaterial3D_Transparency>` **TRANSPARENCY_ALPHA_HASH** = ``3``
The material will cut off all values below a spatially-deterministic threshold, the rest will remain opaque. This is faster to render than alpha blending, but slower than opaque rendering. This also supports casting shadows. Alpha hashing is suited for hair rendering.
.. _class_BaseMaterial3D_constant_TRANSPARENCY_ALPHA_DEPTH_PRE_PASS:
.. rst-class:: classref-enumeration-constant
:ref:`Transparency<enum_BaseMaterial3D_Transparency>` **TRANSPARENCY_ALPHA_DEPTH_PRE_PASS** = ``4``
El material utilizará el valor alfa de la textura para la transparencia, pero descartará los fragmentos con un alfa inferior a 0,99 durante el pre-paso de profundidad y los fragmentos con un alfa inferior a 0,1 durante el paso de sombra. Esto también admite la proyección de sombras.
.. _class_BaseMaterial3D_constant_TRANSPARENCY_MAX:
.. rst-class:: classref-enumeration-constant
:ref:`Transparency<enum_BaseMaterial3D_Transparency>` **TRANSPARENCY_MAX** = ``5``
Representa el tamaño del enum :ref:`Transparency<enum_BaseMaterial3D_Transparency>`.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_ShadingMode:
.. rst-class:: classref-enumeration
enum **ShadingMode**: :ref:`🔗<enum_BaseMaterial3D_ShadingMode>`
.. _class_BaseMaterial3D_constant_SHADING_MODE_UNSHADED:
.. rst-class:: classref-enumeration-constant
:ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>` **SHADING_MODE_UNSHADED** = ``0``
El objeto no recibirá sombras. Es la forma más rápida de renderizar, pero desactiva todas las interacciones con las luces.
.. _class_BaseMaterial3D_constant_SHADING_MODE_PER_PIXEL:
.. rst-class:: classref-enumeration-constant
:ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>` **SHADING_MODE_PER_PIXEL** = ``1``
El objeto se sombreará por píxel. Útil para efectos de sombreado realistas.
.. _class_BaseMaterial3D_constant_SHADING_MODE_PER_VERTEX:
.. rst-class:: classref-enumeration-constant
:ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>` **SHADING_MODE_PER_VERTEX** = ``2``
El objeto se sombreará por vértice. Útil cuando se quieren shaders más económicos y no importa la calidad visual.
.. _class_BaseMaterial3D_constant_SHADING_MODE_MAX:
.. rst-class:: classref-enumeration-constant
:ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>` **SHADING_MODE_MAX** = ``3``
Representa el tamaño del enum :ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>`.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_Feature:
.. rst-class:: classref-enumeration
enum **Feature**: :ref:`🔗<enum_BaseMaterial3D_Feature>`
.. _class_BaseMaterial3D_constant_FEATURE_EMISSION:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_EMISSION** = ``0``
Constante para establecer :ref:`emission_enabled<class_BaseMaterial3D_property_emission_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_NORMAL_MAPPING:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_NORMAL_MAPPING** = ``1``
Constante para establecer :ref:`normal_enabled<class_BaseMaterial3D_property_normal_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_RIM:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_RIM** = ``2``
Constante para establecer :ref:`rim_enabled<class_BaseMaterial3D_property_rim_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_CLEARCOAT:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_CLEARCOAT** = ``3``
Constante para establecer :ref:`clearcoat_enabled<class_BaseMaterial3D_property_clearcoat_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_ANISOTROPY:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_ANISOTROPY** = ``4``
Constante para establecer :ref:`anisotropy_enabled<class_BaseMaterial3D_property_anisotropy_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_AMBIENT_OCCLUSION:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_AMBIENT_OCCLUSION** = ``5``
Constante para establecer :ref:`ao_enabled<class_BaseMaterial3D_property_ao_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_HEIGHT_MAPPING:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_HEIGHT_MAPPING** = ``6``
Constante para establecer :ref:`heightmap_enabled<class_BaseMaterial3D_property_heightmap_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_SUBSURFACE_SCATTERING:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_SUBSURFACE_SCATTERING** = ``7``
Constante para establecer :ref:`subsurf_scatter_enabled<class_BaseMaterial3D_property_subsurf_scatter_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_SUBSURFACE_TRANSMITTANCE:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_SUBSURFACE_TRANSMITTANCE** = ``8``
Constante para establecer :ref:`subsurf_scatter_transmittance_enabled<class_BaseMaterial3D_property_subsurf_scatter_transmittance_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_BACKLIGHT:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_BACKLIGHT** = ``9``
Constante para establecer :ref:`backlight_enabled<class_BaseMaterial3D_property_backlight_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_REFRACTION:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_REFRACTION** = ``10``
Constante para establecer :ref:`refraction_enabled<class_BaseMaterial3D_property_refraction_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_DETAIL:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_DETAIL** = ``11``
Constante para establecer :ref:`detail_enabled<class_BaseMaterial3D_property_detail_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_BENT_NORMAL_MAPPING:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_BENT_NORMAL_MAPPING** = ``12``
Constante para establecer :ref:`bent_normal_enabled<class_BaseMaterial3D_property_bent_normal_enabled>`.
.. _class_BaseMaterial3D_constant_FEATURE_MAX:
.. rst-class:: classref-enumeration-constant
:ref:`Feature<enum_BaseMaterial3D_Feature>` **FEATURE_MAX** = ``13``
Representa el tamaño del enum :ref:`Feature<enum_BaseMaterial3D_Feature>`.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_BlendMode:
.. rst-class:: classref-enumeration
enum **BlendMode**: :ref:`🔗<enum_BaseMaterial3D_BlendMode>`
.. _class_BaseMaterial3D_constant_BLEND_MODE_MIX:
.. rst-class:: classref-enumeration-constant
:ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **BLEND_MODE_MIX** = ``0``
Modo de mezcla por defecto. El color del objeto se mezcla sobre el fondo en base al valor alfa del objeto.
.. _class_BaseMaterial3D_constant_BLEND_MODE_ADD:
.. rst-class:: classref-enumeration-constant
:ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **BLEND_MODE_ADD** = ``1``
El color del objeto se añade al fondo.
.. _class_BaseMaterial3D_constant_BLEND_MODE_SUB:
.. rst-class:: classref-enumeration-constant
:ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **BLEND_MODE_SUB** = ``2``
El color del objeto se resta del fondo.
.. _class_BaseMaterial3D_constant_BLEND_MODE_MUL:
.. rst-class:: classref-enumeration-constant
:ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **BLEND_MODE_MUL** = ``3``
El color del objeto se multiplica por el fondo.
.. _class_BaseMaterial3D_constant_BLEND_MODE_PREMULT_ALPHA:
.. rst-class:: classref-enumeration-constant
:ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **BLEND_MODE_PREMULT_ALPHA** = ``4``
The color of the object is added to the background and the alpha channel is used to mask out the background. This is effectively a hybrid of the blend mix and add modes, useful for effects like fire where you want the flame to add but the smoke to mix. By default, this works with unshaded materials using premultiplied textures. For shaded materials, use the ``PREMUL_ALPHA_FACTOR`` built-in so that lighting can be modulated as well.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_AlphaAntiAliasing:
.. rst-class:: classref-enumeration
enum **AlphaAntiAliasing**: :ref:`🔗<enum_BaseMaterial3D_AlphaAntiAliasing>`
.. _class_BaseMaterial3D_constant_ALPHA_ANTIALIASING_OFF:
.. rst-class:: classref-enumeration-constant
:ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **ALPHA_ANTIALIASING_OFF** = ``0``
Disables Alpha AntiAliasing for the material.
.. _class_BaseMaterial3D_constant_ALPHA_ANTIALIASING_ALPHA_TO_COVERAGE:
.. rst-class:: classref-enumeration-constant
:ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **ALPHA_ANTIALIASING_ALPHA_TO_COVERAGE** = ``1``
Enables AlphaToCoverage. Alpha values in the material are passed to the AntiAliasing sample mask.
.. _class_BaseMaterial3D_constant_ALPHA_ANTIALIASING_ALPHA_TO_COVERAGE_AND_TO_ONE:
.. rst-class:: classref-enumeration-constant
:ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **ALPHA_ANTIALIASING_ALPHA_TO_COVERAGE_AND_TO_ONE** = ``2``
Enables AlphaToCoverage and forces all non-zero alpha values to ``1``. Alpha values in the material are passed to the AntiAliasing sample mask.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_DepthDrawMode:
.. rst-class:: classref-enumeration
enum **DepthDrawMode**: :ref:`🔗<enum_BaseMaterial3D_DepthDrawMode>`
.. _class_BaseMaterial3D_constant_DEPTH_DRAW_OPAQUE_ONLY:
.. rst-class:: classref-enumeration-constant
:ref:`DepthDrawMode<enum_BaseMaterial3D_DepthDrawMode>` **DEPTH_DRAW_OPAQUE_ONLY** = ``0``
Default depth draw mode. Depth is drawn only for opaque objects during the opaque prepass (if any) and during the opaque pass.
.. _class_BaseMaterial3D_constant_DEPTH_DRAW_ALWAYS:
.. rst-class:: classref-enumeration-constant
:ref:`DepthDrawMode<enum_BaseMaterial3D_DepthDrawMode>` **DEPTH_DRAW_ALWAYS** = ``1``
Objects will write to depth during the opaque and the transparent passes. Transparent objects that are close to the camera may obscure other transparent objects behind them.
\ **Note:** This does not influence whether transparent objects are included in the depth prepass or not. For that, see :ref:`Transparency<enum_BaseMaterial3D_Transparency>`.
.. _class_BaseMaterial3D_constant_DEPTH_DRAW_DISABLED:
.. rst-class:: classref-enumeration-constant
:ref:`DepthDrawMode<enum_BaseMaterial3D_DepthDrawMode>` **DEPTH_DRAW_DISABLED** = ``2``
Objects will not write their depth to the depth buffer, even during the depth prepass (if enabled).
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_DepthTest:
.. rst-class:: classref-enumeration
enum **DepthTest**: :ref:`🔗<enum_BaseMaterial3D_DepthTest>`
.. _class_BaseMaterial3D_constant_DEPTH_TEST_DEFAULT:
.. rst-class:: classref-enumeration-constant
:ref:`DepthTest<enum_BaseMaterial3D_DepthTest>` **DEPTH_TEST_DEFAULT** = ``0``
Depth test will discard the pixel if it is behind other pixels.
.. _class_BaseMaterial3D_constant_DEPTH_TEST_INVERTED:
.. rst-class:: classref-enumeration-constant
:ref:`DepthTest<enum_BaseMaterial3D_DepthTest>` **DEPTH_TEST_INVERTED** = ``1``
Depth test will discard the pixel if it is in front of other pixels. Useful for stencil effects.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_CullMode:
.. rst-class:: classref-enumeration
enum **CullMode**: :ref:`🔗<enum_BaseMaterial3D_CullMode>`
.. _class_BaseMaterial3D_constant_CULL_BACK:
.. rst-class:: classref-enumeration-constant
:ref:`CullMode<enum_BaseMaterial3D_CullMode>` **CULL_BACK** = ``0``
Default cull mode. The back of the object is culled when not visible. Back face triangles will be culled when facing the camera. This results in only the front side of triangles being drawn. For closed-surface meshes, this means that only the exterior of the mesh will be visible.
.. _class_BaseMaterial3D_constant_CULL_FRONT:
.. rst-class:: classref-enumeration-constant
:ref:`CullMode<enum_BaseMaterial3D_CullMode>` **CULL_FRONT** = ``1``
Los triángulos frontales se descartarán al mirar hacia la cámara. Esto significa que solo se dibujará la parte posterior de los triángulos. En mallas de superficie cerrada, se dibujará el interior de la malla en lugar del exterior.
.. _class_BaseMaterial3D_constant_CULL_DISABLED:
.. rst-class:: classref-enumeration-constant
:ref:`CullMode<enum_BaseMaterial3D_CullMode>` **CULL_DISABLED** = ``2``
No face culling is performed; both the front face and back face will be visible.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_Flags:
.. rst-class:: classref-enumeration
enum **Flags**: :ref:`🔗<enum_BaseMaterial3D_Flags>`
.. _class_BaseMaterial3D_constant_FLAG_DISABLE_DEPTH_TEST:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_DISABLE_DEPTH_TEST** = ``0``
Disables the depth test, so this object is drawn on top of all others drawn before it. This puts the object in the transparent draw pass where it is sorted based on distance to camera. Objects drawn after it in the draw order may cover it. This also disables writing to depth.
.. _class_BaseMaterial3D_constant_FLAG_ALBEDO_FROM_VERTEX_COLOR:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_ALBEDO_FROM_VERTEX_COLOR** = ``1``
Ponga ``ALBEDO`` en el color por vértice especificado en la malla.
.. _class_BaseMaterial3D_constant_FLAG_SRGB_VERTEX_COLOR:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_SRGB_VERTEX_COLOR** = ``2``
Vertex colors are considered to be stored in nonlinear sRGB encoding and are converted to linear encoding during rendering. See also :ref:`vertex_color_is_srgb<class_BaseMaterial3D_property_vertex_color_is_srgb>`.
\ **Note:** Only effective when using the Forward+ and Mobile rendering methods.
.. _class_BaseMaterial3D_constant_FLAG_USE_POINT_SIZE:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_USE_POINT_SIZE** = ``3``
Utiliza el tamaño de los puntos para alterar el tamaño de los puntos primitivos. También cambia la búsqueda de la textura del albedo para usar ``POINT_COORD`` en lugar de ``UV``.
.. _class_BaseMaterial3D_constant_FLAG_FIXED_SIZE:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_FIXED_SIZE** = ``4``
El objeto se escala según la profundidad para que siempre aparezca del mismo tamaño en la pantalla.
.. _class_BaseMaterial3D_constant_FLAG_BILLBOARD_KEEP_SCALE:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_BILLBOARD_KEEP_SCALE** = ``5``
Shader will keep the scale set for the mesh. Otherwise the scale is lost when billboarding. Only applies when :ref:`billboard_mode<class_BaseMaterial3D_property_billboard_mode>` is :ref:`BILLBOARD_ENABLED<class_BaseMaterial3D_constant_BILLBOARD_ENABLED>`.
.. _class_BaseMaterial3D_constant_FLAG_UV1_USE_TRIPLANAR:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_UV1_USE_TRIPLANAR** = ``6``
Use la búsqueda de texturas triplanares para todas las búsquedas de texturas que normalmente usarían ``UV``.
.. _class_BaseMaterial3D_constant_FLAG_UV2_USE_TRIPLANAR:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_UV2_USE_TRIPLANAR** = ``7``
Use la búsqueda de texturas triplanares para todas las búsquedas de texturas que normalmente usarían ``UV2``.
.. _class_BaseMaterial3D_constant_FLAG_UV1_USE_WORLD_TRIPLANAR:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_UV1_USE_WORLD_TRIPLANAR** = ``8``
Use la búsqueda de texturas triplanares para todas las búsquedas de texturas que normalmente usarían ``UV``.
.. _class_BaseMaterial3D_constant_FLAG_UV2_USE_WORLD_TRIPLANAR:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_UV2_USE_WORLD_TRIPLANAR** = ``9``
Use la búsqueda de texturas triplanares para todas las búsquedas de texturas que normalmente usarían ``UV2``.
.. _class_BaseMaterial3D_constant_FLAG_AO_ON_UV2:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_AO_ON_UV2** = ``10``
Use las coordenadas ``UV2`` para mirar hacia arriba desde el :ref:`ao_texture<class_BaseMaterial3D_property_ao_texture>`.
.. _class_BaseMaterial3D_constant_FLAG_EMISSION_ON_UV2:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_EMISSION_ON_UV2** = ``11``
Utiliza las coordenadas ``UV2`` para mirar hacia arriba desde la :ref:`emission_texture<class_BaseMaterial3D_property_emission_texture>`.
.. _class_BaseMaterial3D_constant_FLAG_ALBEDO_TEXTURE_FORCE_SRGB:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_ALBEDO_TEXTURE_FORCE_SRGB** = ``12``
Forces the shader to convert albedo from nonlinear sRGB encoding to linear encoding. See also :ref:`albedo_texture_force_srgb<class_BaseMaterial3D_property_albedo_texture_force_srgb>`.
.. _class_BaseMaterial3D_constant_FLAG_DONT_RECEIVE_SHADOWS:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_DONT_RECEIVE_SHADOWS** = ``13``
Desactiva la recepción de sombras de otros objetos.
.. _class_BaseMaterial3D_constant_FLAG_DISABLE_AMBIENT_LIGHT:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_DISABLE_AMBIENT_LIGHT** = ``14``
Desactiva la recepción de luz ambiental.
.. _class_BaseMaterial3D_constant_FLAG_USE_SHADOW_TO_OPACITY:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_USE_SHADOW_TO_OPACITY** = ``15``
Habilita la característica de opacidad de la sombra.
.. _class_BaseMaterial3D_constant_FLAG_USE_TEXTURE_REPEAT:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_USE_TEXTURE_REPEAT** = ``16``
Enables the texture to repeat when UV coordinates are outside the 0-1 range. If using one of the linear filtering modes, this can result in artifacts at the edges of a texture when the sampler filters across the edges of the texture.
.. _class_BaseMaterial3D_constant_FLAG_INVERT_HEIGHTMAP:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_INVERT_HEIGHTMAP** = ``17``
Invert values read from a depth texture to convert them to height values (heightmap).
.. _class_BaseMaterial3D_constant_FLAG_SUBSURFACE_MODE_SKIN:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_SUBSURFACE_MODE_SKIN** = ``18``
Enables the skin mode for subsurface scattering which is used to improve the look of subsurface scattering when used for human skin.
.. _class_BaseMaterial3D_constant_FLAG_PARTICLE_TRAILS_MODE:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_PARTICLE_TRAILS_MODE** = ``19``
Enables parts of the shader required for :ref:`GPUParticles3D<class_GPUParticles3D>` trails to function. This also requires using a mesh with appropriate skinning, such as :ref:`RibbonTrailMesh<class_RibbonTrailMesh>` or :ref:`TubeTrailMesh<class_TubeTrailMesh>`. Enabling this feature outside of materials used in :ref:`GPUParticles3D<class_GPUParticles3D>` meshes will break material rendering.
.. _class_BaseMaterial3D_constant_FLAG_ALBEDO_TEXTURE_MSDF:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_ALBEDO_TEXTURE_MSDF** = ``20``
Enables multichannel signed distance field rendering shader.
.. _class_BaseMaterial3D_constant_FLAG_DISABLE_FOG:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_DISABLE_FOG** = ``21``
Disables receiving depth-based or volumetric fog.
.. _class_BaseMaterial3D_constant_FLAG_DISABLE_SPECULAR_OCCLUSION:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_DISABLE_SPECULAR_OCCLUSION** = ``22``
Desactiva la oclusión especular.
.. _class_BaseMaterial3D_constant_FLAG_USE_Z_CLIP_SCALE:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_USE_Z_CLIP_SCALE** = ``23``
Habilita el uso de :ref:`z_clip_scale<class_BaseMaterial3D_property_z_clip_scale>`.
.. _class_BaseMaterial3D_constant_FLAG_USE_FOV_OVERRIDE:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_USE_FOV_OVERRIDE** = ``24``
Habilita el uso de :ref:`fov_override<class_BaseMaterial3D_property_fov_override>`.
.. _class_BaseMaterial3D_constant_FLAG_MAX:
.. rst-class:: classref-enumeration-constant
:ref:`Flags<enum_BaseMaterial3D_Flags>` **FLAG_MAX** = ``25``
Representa el tamaño del enum :ref:`Flags<enum_BaseMaterial3D_Flags>`.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_DiffuseMode:
.. rst-class:: classref-enumeration
enum **DiffuseMode**: :ref:`🔗<enum_BaseMaterial3D_DiffuseMode>`
.. _class_BaseMaterial3D_constant_DIFFUSE_BURLEY:
.. rst-class:: classref-enumeration-constant
:ref:`DiffuseMode<enum_BaseMaterial3D_DiffuseMode>` **DIFFUSE_BURLEY** = ``0``
Algoritmo de dispersión difusa por defecto.
.. _class_BaseMaterial3D_constant_DIFFUSE_LAMBERT:
.. rst-class:: classref-enumeration-constant
:ref:`DiffuseMode<enum_BaseMaterial3D_DiffuseMode>` **DIFFUSE_LAMBERT** = ``1``
La dispersión difusa ignora las rugosidades.
.. _class_BaseMaterial3D_constant_DIFFUSE_LAMBERT_WRAP:
.. rst-class:: classref-enumeration-constant
:ref:`DiffuseMode<enum_BaseMaterial3D_DiffuseMode>` **DIFFUSE_LAMBERT_WRAP** = ``2``
Extiende a Lambert para cubrir más de 90 grados cuando la rugosidad aumenta.
.. _class_BaseMaterial3D_constant_DIFFUSE_TOON:
.. rst-class:: classref-enumeration-constant
:ref:`DiffuseMode<enum_BaseMaterial3D_DiffuseMode>` **DIFFUSE_TOON** = ``3``
Utiliza un corte duro para la iluminación, con el alisado afectado por la aspereza.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_SpecularMode:
.. rst-class:: classref-enumeration
enum **SpecularMode**: :ref:`🔗<enum_BaseMaterial3D_SpecularMode>`
.. _class_BaseMaterial3D_constant_SPECULAR_SCHLICK_GGX:
.. rst-class:: classref-enumeration-constant
:ref:`SpecularMode<enum_BaseMaterial3D_SpecularMode>` **SPECULAR_SCHLICK_GGX** = ``0``
Default specular blob.
\ **Note:** Forward+ uses multiscattering for more accurate reflections, although the impact of multiscattering is more noticeable on rough metallic surfaces than on smooth, non-metallic surfaces.
\ **Note:** Mobile and Compatibility don't perform multiscattering for performance reasons. Instead, they perform single scattering, which means rough metallic surfaces may look slightly darker than intended.
.. _class_BaseMaterial3D_constant_SPECULAR_TOON:
.. rst-class:: classref-enumeration-constant
:ref:`SpecularMode<enum_BaseMaterial3D_SpecularMode>` **SPECULAR_TOON** = ``1``
La mancha de un dibujo que cambia de tamaño en función de la rugosidad.
.. _class_BaseMaterial3D_constant_SPECULAR_DISABLED:
.. rst-class:: classref-enumeration-constant
:ref:`SpecularMode<enum_BaseMaterial3D_SpecularMode>` **SPECULAR_DISABLED** = ``2``
No specular blob. This is slightly faster to render than other specular modes.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_BillboardMode:
.. rst-class:: classref-enumeration
enum **BillboardMode**: :ref:`🔗<enum_BaseMaterial3D_BillboardMode>`
.. _class_BaseMaterial3D_constant_BILLBOARD_DISABLED:
.. rst-class:: classref-enumeration-constant
:ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>` **BILLBOARD_DISABLED** = ``0``
Modo Billboard esta desactivado.
.. _class_BaseMaterial3D_constant_BILLBOARD_ENABLED:
.. rst-class:: classref-enumeration-constant
:ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>` **BILLBOARD_ENABLED** = ``1``
El eje Z del objeto siempre estará de cara a la cámara.
.. _class_BaseMaterial3D_constant_BILLBOARD_FIXED_Y:
.. rst-class:: classref-enumeration-constant
:ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>` **BILLBOARD_FIXED_Y** = ``2``
El eje X del objeto siempre estará de cara a la cámara.
.. _class_BaseMaterial3D_constant_BILLBOARD_PARTICLES:
.. rst-class:: classref-enumeration-constant
:ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>` **BILLBOARD_PARTICLES** = ``3``
Used for particle systems when assigned to :ref:`GPUParticles3D<class_GPUParticles3D>` and :ref:`CPUParticles3D<class_CPUParticles3D>` nodes (flipbook animation). Enables ``particles_anim_*`` properties.
The :ref:`ParticleProcessMaterial.anim_speed_min<class_ParticleProcessMaterial_property_anim_speed_min>` or :ref:`CPUParticles3D.anim_speed_min<class_CPUParticles3D_property_anim_speed_min>` should also be set to a value bigger than zero for the animation to play.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_TextureChannel:
.. rst-class:: classref-enumeration
enum **TextureChannel**: :ref:`🔗<enum_BaseMaterial3D_TextureChannel>`
.. _class_BaseMaterial3D_constant_TEXTURE_CHANNEL_RED:
.. rst-class:: classref-enumeration-constant
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **TEXTURE_CHANNEL_RED** = ``0``
Se usa para leer del canal rojo de una textura.
.. _class_BaseMaterial3D_constant_TEXTURE_CHANNEL_GREEN:
.. rst-class:: classref-enumeration-constant
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **TEXTURE_CHANNEL_GREEN** = ``1``
Se usa para leer del canal verde de una textura.
.. _class_BaseMaterial3D_constant_TEXTURE_CHANNEL_BLUE:
.. rst-class:: classref-enumeration-constant
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **TEXTURE_CHANNEL_BLUE** = ``2``
Se usa para leer del canal azul de una textura.
.. _class_BaseMaterial3D_constant_TEXTURE_CHANNEL_ALPHA:
.. rst-class:: classref-enumeration-constant
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **TEXTURE_CHANNEL_ALPHA** = ``3``
Se usa para leer del canal de transparencia de una textura.
.. _class_BaseMaterial3D_constant_TEXTURE_CHANNEL_GRAYSCALE:
.. rst-class:: classref-enumeration-constant
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **TEXTURE_CHANNEL_GRAYSCALE** = ``4``
Used to read from the linear (non-perceptual) average of the red, green and blue channels of a texture.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_EmissionOperator:
.. rst-class:: classref-enumeration
enum **EmissionOperator**: :ref:`🔗<enum_BaseMaterial3D_EmissionOperator>`
.. _class_BaseMaterial3D_constant_EMISSION_OP_ADD:
.. rst-class:: classref-enumeration-constant
:ref:`EmissionOperator<enum_BaseMaterial3D_EmissionOperator>` **EMISSION_OP_ADD** = ``0``
Añade el color de la emisión al color de la textura de la emisión.
.. _class_BaseMaterial3D_constant_EMISSION_OP_MULTIPLY:
.. rst-class:: classref-enumeration-constant
:ref:`EmissionOperator<enum_BaseMaterial3D_EmissionOperator>` **EMISSION_OP_MULTIPLY** = ``1``
Multiplica el color de la emisión por el color de la textura de la emisión.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_DistanceFadeMode:
.. rst-class:: classref-enumeration
enum **DistanceFadeMode**: :ref:`🔗<enum_BaseMaterial3D_DistanceFadeMode>`
.. _class_BaseMaterial3D_constant_DISTANCE_FADE_DISABLED:
.. rst-class:: classref-enumeration-constant
:ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>` **DISTANCE_FADE_DISABLED** = ``0``
No utilizar el desvanecimiento de la distancia.
.. _class_BaseMaterial3D_constant_DISTANCE_FADE_PIXEL_ALPHA:
.. rst-class:: classref-enumeration-constant
:ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>` **DISTANCE_FADE_PIXEL_ALPHA** = ``1``
Suavemente se desvanece el objeto en base a la distancia de cada píxel de la cámara usando el canal alfa.
.. _class_BaseMaterial3D_constant_DISTANCE_FADE_PIXEL_DITHER:
.. rst-class:: classref-enumeration-constant
:ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>` **DISTANCE_FADE_PIXEL_DITHER** = ``2``
Smoothly fades the object out based on each pixel's distance from the camera using a dithering approach. Dithering discards pixels based on a set pattern to smoothly fade without enabling transparency. On certain hardware, this can be faster than :ref:`DISTANCE_FADE_PIXEL_ALPHA<class_BaseMaterial3D_constant_DISTANCE_FADE_PIXEL_ALPHA>`.
.. _class_BaseMaterial3D_constant_DISTANCE_FADE_OBJECT_DITHER:
.. rst-class:: classref-enumeration-constant
:ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>` **DISTANCE_FADE_OBJECT_DITHER** = ``3``
Smoothly fades the object out based on the object's distance from the camera using a dithering approach. Dithering discards pixels based on a set pattern to smoothly fade without enabling transparency. On certain hardware, this can be faster than :ref:`DISTANCE_FADE_PIXEL_ALPHA<class_BaseMaterial3D_constant_DISTANCE_FADE_PIXEL_ALPHA>` and :ref:`DISTANCE_FADE_PIXEL_DITHER<class_BaseMaterial3D_constant_DISTANCE_FADE_PIXEL_DITHER>`.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_StencilMode:
.. rst-class:: classref-enumeration
enum **StencilMode**: :ref:`🔗<enum_BaseMaterial3D_StencilMode>`
.. _class_BaseMaterial3D_constant_STENCIL_MODE_DISABLED:
.. rst-class:: classref-enumeration-constant
:ref:`StencilMode<enum_BaseMaterial3D_StencilMode>` **STENCIL_MODE_DISABLED** = ``0``
Disables stencil operations.
.. _class_BaseMaterial3D_constant_STENCIL_MODE_OUTLINE:
.. rst-class:: classref-enumeration-constant
:ref:`StencilMode<enum_BaseMaterial3D_StencilMode>` **STENCIL_MODE_OUTLINE** = ``1``
Stencil preset which applies an outline to the object.
\ **Note:** Requires a :ref:`Material.next_pass<class_Material_property_next_pass>` material which will be automatically applied. Any manual changes made to :ref:`Material.next_pass<class_Material_property_next_pass>` will be lost when the stencil properties are modified or the scene is reloaded. To safely apply a :ref:`Material.next_pass<class_Material_property_next_pass>` material on a material that uses stencil presets, use :ref:`GeometryInstance3D.material_overlay<class_GeometryInstance3D_property_material_overlay>` instead.
.. _class_BaseMaterial3D_constant_STENCIL_MODE_XRAY:
.. rst-class:: classref-enumeration-constant
:ref:`StencilMode<enum_BaseMaterial3D_StencilMode>` **STENCIL_MODE_XRAY** = ``2``
Stencil preset which shows a silhouette of the object behind walls.
\ **Note:** Requires a :ref:`Material.next_pass<class_Material_property_next_pass>` material which will be automatically applied. Any manual changes made to :ref:`Material.next_pass<class_Material_property_next_pass>` will be lost when the stencil properties are modified or the scene is reloaded. To safely apply a :ref:`Material.next_pass<class_Material_property_next_pass>` material on a material that uses stencil presets, use :ref:`GeometryInstance3D.material_overlay<class_GeometryInstance3D_property_material_overlay>` instead.
.. _class_BaseMaterial3D_constant_STENCIL_MODE_CUSTOM:
.. rst-class:: classref-enumeration-constant
:ref:`StencilMode<enum_BaseMaterial3D_StencilMode>` **STENCIL_MODE_CUSTOM** = ``3``
Enables stencil operations without a preset.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_StencilFlags:
.. rst-class:: classref-enumeration
enum **StencilFlags**: :ref:`🔗<enum_BaseMaterial3D_StencilFlags>`
.. _class_BaseMaterial3D_constant_STENCIL_FLAG_READ:
.. rst-class:: classref-enumeration-constant
:ref:`StencilFlags<enum_BaseMaterial3D_StencilFlags>` **STENCIL_FLAG_READ** = ``1``
The material will only be rendered where it passes a stencil comparison with existing stencil buffer values.
.. _class_BaseMaterial3D_constant_STENCIL_FLAG_WRITE:
.. rst-class:: classref-enumeration-constant
:ref:`StencilFlags<enum_BaseMaterial3D_StencilFlags>` **STENCIL_FLAG_WRITE** = ``2``
The material will write the reference value to the stencil buffer where it passes the depth test.
.. _class_BaseMaterial3D_constant_STENCIL_FLAG_WRITE_DEPTH_FAIL:
.. rst-class:: classref-enumeration-constant
:ref:`StencilFlags<enum_BaseMaterial3D_StencilFlags>` **STENCIL_FLAG_WRITE_DEPTH_FAIL** = ``4``
The material will write the reference value to the stencil buffer where it fails the depth test.
.. rst-class:: classref-item-separator
----
.. _enum_BaseMaterial3D_StencilCompare:
.. rst-class:: classref-enumeration
enum **StencilCompare**: :ref:`🔗<enum_BaseMaterial3D_StencilCompare>`
.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_ALWAYS:
.. rst-class:: classref-enumeration-constant
:ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **STENCIL_COMPARE_ALWAYS** = ``0``
Always passes the stencil test.
.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_LESS:
.. rst-class:: classref-enumeration-constant
:ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **STENCIL_COMPARE_LESS** = ``1``
Passes the stencil test when the reference value is less than the existing stencil value.
.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_EQUAL:
.. rst-class:: classref-enumeration-constant
:ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **STENCIL_COMPARE_EQUAL** = ``2``
Passes the stencil test when the reference value is equal to the existing stencil value.
.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_LESS_OR_EQUAL:
.. rst-class:: classref-enumeration-constant
:ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **STENCIL_COMPARE_LESS_OR_EQUAL** = ``3``
Passes the stencil test when the reference value is less than or equal to the existing stencil value.
.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_GREATER:
.. rst-class:: classref-enumeration-constant
:ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **STENCIL_COMPARE_GREATER** = ``4``
Passes the stencil test when the reference value is greater than the existing stencil value.
.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_NOT_EQUAL:
.. rst-class:: classref-enumeration-constant
:ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **STENCIL_COMPARE_NOT_EQUAL** = ``5``
Passes the stencil test when the reference value is not equal to the existing stencil value.
.. _class_BaseMaterial3D_constant_STENCIL_COMPARE_GREATER_OR_EQUAL:
.. rst-class:: classref-enumeration-constant
:ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **STENCIL_COMPARE_GREATER_OR_EQUAL** = ``6``
Passes the stencil test when the reference value is greater than or equal to the existing stencil value.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descripciones de Propiedades
--------------------------------------------------------
.. _class_BaseMaterial3D_property_albedo_color:
.. rst-class:: classref-property
:ref:`Color<class_Color>` **albedo_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗<class_BaseMaterial3D_property_albedo_color>`
.. rst-class:: classref-property-setget
- |void| **set_albedo**\ (\ value\: :ref:`Color<class_Color>`\ )
- :ref:`Color<class_Color>` **get_albedo**\ (\ )
Color base del material.
\ **Nota:** Si :ref:`detail_enabled<class_BaseMaterial3D_property_detail_enabled>` es ``true`` y se especifica una textura :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>`, :ref:`albedo_color<class_BaseMaterial3D_property_albedo_color>` *no* modulará la textura de detalle. Esto se puede usar para colorear áreas parciales de un material sin especificar una textura de albedo y usando una textura :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>` transparente.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_albedo_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **albedo_texture** :ref:`🔗<class_BaseMaterial3D_property_albedo_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Texture to multiply by :ref:`albedo_color<class_BaseMaterial3D_property_albedo_color>`. Used for basic texturing of objects.
If the texture appears unexpectedly too dark or too bright, check :ref:`albedo_texture_force_srgb<class_BaseMaterial3D_property_albedo_texture_force_srgb>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_albedo_texture_force_srgb:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **albedo_texture_force_srgb** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_albedo_texture_force_srgb>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, forces a conversion of the :ref:`albedo_texture<class_BaseMaterial3D_property_albedo_texture>` from nonlinear sRGB encoding to linear encoding. See also :ref:`vertex_color_is_srgb<class_BaseMaterial3D_property_vertex_color_is_srgb>`.
This should only be enabled when needed (typically when using a :ref:`ViewportTexture<class_ViewportTexture>` as :ref:`albedo_texture<class_BaseMaterial3D_property_albedo_texture>`). If :ref:`albedo_texture_force_srgb<class_BaseMaterial3D_property_albedo_texture_force_srgb>` is ``true`` when it shouldn't be, the texture will appear to be too dark. If :ref:`albedo_texture_force_srgb<class_BaseMaterial3D_property_albedo_texture_force_srgb>` is ``false`` when it shouldn't be, the texture will appear to be too bright.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_albedo_texture_msdf:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **albedo_texture_msdf** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_albedo_texture_msdf>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Enables multichannel signed distance field rendering shader. Use :ref:`msdf_pixel_range<class_BaseMaterial3D_property_msdf_pixel_range>` and :ref:`msdf_outline_size<class_BaseMaterial3D_property_msdf_outline_size>` to configure MSDF parameters.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_alpha_antialiasing_edge:
.. rst-class:: classref-property
:ref:`float<class_float>` **alpha_antialiasing_edge** :ref:`🔗<class_BaseMaterial3D_property_alpha_antialiasing_edge>`
.. rst-class:: classref-property-setget
- |void| **set_alpha_antialiasing_edge**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_alpha_antialiasing_edge**\ (\ )
Threshold at which antialiasing will be applied on the alpha channel.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_alpha_antialiasing_mode:
.. rst-class:: classref-property
:ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **alpha_antialiasing_mode** :ref:`🔗<class_BaseMaterial3D_property_alpha_antialiasing_mode>`
.. rst-class:: classref-property-setget
- |void| **set_alpha_antialiasing**\ (\ value\: :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>`\ )
- :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **get_alpha_antialiasing**\ (\ )
El tipo de antialiasing alfa que se aplicará.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_alpha_hash_scale:
.. rst-class:: classref-property
:ref:`float<class_float>` **alpha_hash_scale** :ref:`🔗<class_BaseMaterial3D_property_alpha_hash_scale>`
.. rst-class:: classref-property-setget
- |void| **set_alpha_hash_scale**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_alpha_hash_scale**\ (\ )
The hashing scale for Alpha Hash. Recommended values between ``0`` and ``2``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_alpha_scissor_threshold:
.. rst-class:: classref-property
:ref:`float<class_float>` **alpha_scissor_threshold** :ref:`🔗<class_BaseMaterial3D_property_alpha_scissor_threshold>`
.. rst-class:: classref-property-setget
- |void| **set_alpha_scissor_threshold**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_alpha_scissor_threshold**\ (\ )
Threshold at which the alpha scissor will discard values. Higher values will result in more pixels being discarded. If the material becomes too opaque at a distance, try increasing :ref:`alpha_scissor_threshold<class_BaseMaterial3D_property_alpha_scissor_threshold>`. If the material disappears at a distance, try decreasing :ref:`alpha_scissor_threshold<class_BaseMaterial3D_property_alpha_scissor_threshold>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_anisotropy:
.. rst-class:: classref-property
:ref:`float<class_float>` **anisotropy** = ``0.0`` :ref:`🔗<class_BaseMaterial3D_property_anisotropy>`
.. rst-class:: classref-property-setget
- |void| **set_anisotropy**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_anisotropy**\ (\ )
The strength of the anisotropy effect. This is multiplied by :ref:`anisotropy_flowmap<class_BaseMaterial3D_property_anisotropy_flowmap>`'s alpha channel if a texture is defined there and the texture contains an alpha channel.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_anisotropy_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **anisotropy_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_anisotropy_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, anisotropy is enabled. Anisotropy changes the shape of the specular blob and aligns it to tangent space. This is useful for brushed aluminum and hair reflections.
\ **Note:** Mesh tangents are needed for anisotropy to work. If the mesh does not contain tangents, the anisotropy effect will appear broken.
\ **Note:** Material anisotropy should not to be confused with anisotropic texture filtering, which can be enabled by setting :ref:`texture_filter<class_BaseMaterial3D_property_texture_filter>` to :ref:`TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC<class_BaseMaterial3D_constant_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_anisotropy_flowmap:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **anisotropy_flowmap** :ref:`🔗<class_BaseMaterial3D_property_anisotropy_flowmap>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Texture that offsets the tangent map for anisotropy calculations and optionally controls the anisotropy effect (if an alpha channel is present). The flowmap texture is expected to be a derivative map, with the red channel representing distortion on the X axis and green channel representing distortion on the Y axis. Values below 0.5 will result in negative distortion, whereas values above 0.5 will result in positive distortion.
If present, the texture's alpha channel will be used to multiply the strength of the :ref:`anisotropy<class_BaseMaterial3D_property_anisotropy>` effect. Fully opaque pixels will keep the anisotropy effect's original strength while fully transparent pixels will disable the anisotropy effect entirely. The flowmap texture's blue channel is ignored.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_ao_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **ao_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_ao_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
Si es ``true``, se activa la oclusión ambiental. La oclusión ambiental oscurece las áreas basadas en el :ref:`ao_texture<class_BaseMaterial3D_property_ao_texture>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_ao_light_affect:
.. rst-class:: classref-property
:ref:`float<class_float>` **ao_light_affect** = ``0.0`` :ref:`🔗<class_BaseMaterial3D_property_ao_light_affect>`
.. rst-class:: classref-property-setget
- |void| **set_ao_light_affect**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_ao_light_affect**\ (\ )
La cantidad que la oclusión ambiental afecta a la iluminación de las luces. Si ``0``, la oclusión ambiental sólo afecta a la luz ambiental. Si ``1``, la oclusión ambiental afecta a las luces tanto como a la luz ambiental. Esto puede utilizarse para influir en la intensidad del efecto de la oclusión ambiental, pero normalmente tiene un aspecto poco realista.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_ao_on_uv2:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **ao_on_uv2** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_ao_on_uv2>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, usa las coordenadas ``UV2`` para mirar hacia arriba desde el :ref:`ao_texture<class_BaseMaterial3D_property_ao_texture>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_ao_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **ao_texture** :ref:`🔗<class_BaseMaterial3D_property_ao_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Textura que define la cantidad de oclusión ambiental para un punto determinado del objeto.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_ao_texture_channel:
.. rst-class:: classref-property
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **ao_texture_channel** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_ao_texture_channel>`
.. rst-class:: classref-property-setget
- |void| **set_ao_texture_channel**\ (\ value\: :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>`\ )
- :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **get_ao_texture_channel**\ (\ )
Especifica el canal del :ref:`ao_texture<class_BaseMaterial3D_property_ao_texture>` en el que se almacena la información de oclusión ambiental. Esto es útil cuando se almacena la información de múltiples efectos en una sola textura. Por ejemplo, si almacena metálico en el canal rojo, rugosidad en el azul y oclusión ambiental en el verde podría reducir el número de texturas que utiliza.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_backlight:
.. rst-class:: classref-property
:ref:`Color<class_Color>` **backlight** = ``Color(0, 0, 0, 1)`` :ref:`🔗<class_BaseMaterial3D_property_backlight>`
.. rst-class:: classref-property-setget
- |void| **set_backlight**\ (\ value\: :ref:`Color<class_Color>`\ )
- :ref:`Color<class_Color>` **get_backlight**\ (\ )
The color used by the backlight effect. Represents the light passing through an object.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_backlight_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **backlight_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_backlight_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, the backlight effect is enabled. See also :ref:`subsurf_scatter_transmittance_enabled<class_BaseMaterial3D_property_subsurf_scatter_transmittance_enabled>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_backlight_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **backlight_texture** :ref:`🔗<class_BaseMaterial3D_property_backlight_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Texture used to control the backlight effect per-pixel. Added to :ref:`backlight<class_BaseMaterial3D_property_backlight>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_bent_normal_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **bent_normal_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_bent_normal_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, the bent normal map is enabled. This allows for more accurate indirect lighting and specular occlusion.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_bent_normal_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **bent_normal_texture** :ref:`🔗<class_BaseMaterial3D_property_bent_normal_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Texture that specifies the average direction of incoming ambient light at a given pixel. The :ref:`bent_normal_texture<class_BaseMaterial3D_property_bent_normal_texture>` only uses the red and green channels; the blue and alpha channels are ignored. The normal read from :ref:`bent_normal_texture<class_BaseMaterial3D_property_bent_normal_texture>` is oriented around the surface normal provided by the :ref:`Mesh<class_Mesh>`.
\ **Note:** A bent normal map is different from a regular normal map. When baking a bent normal map make sure to use **a cosine distribution** for the bent normal map to work correctly.
\ **Note:** The mesh must have both normals and tangents defined in its vertex data. Otherwise, the shading produced by the bent normal map will not look correct. If creating geometry with :ref:`SurfaceTool<class_SurfaceTool>`, you can use :ref:`SurfaceTool.generate_normals()<class_SurfaceTool_method_generate_normals>` and :ref:`SurfaceTool.generate_tangents()<class_SurfaceTool_method_generate_tangents>` to automatically generate normals and tangents respectively.
\ **Note:** Godot expects the bent normal map to use X+, Y+, and Z+ coordinates. See `this page <http://wiki.polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates>`__ for a comparison of normal map coordinates expected by popular engines.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_billboard_keep_scale:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **billboard_keep_scale** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_billboard_keep_scale>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, the shader will keep the scale set for the mesh. Otherwise, the scale is lost when billboarding. Only applies when :ref:`billboard_mode<class_BaseMaterial3D_property_billboard_mode>` is not :ref:`BILLBOARD_DISABLED<class_BaseMaterial3D_constant_BILLBOARD_DISABLED>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_billboard_mode:
.. rst-class:: classref-property
:ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>` **billboard_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_billboard_mode>`
.. rst-class:: classref-property-setget
- |void| **set_billboard_mode**\ (\ value\: :ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>`\ )
- :ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>` **get_billboard_mode**\ (\ )
Controls how the object faces the camera.
\ **Note:** Billboard mode is not suitable for VR because the left-right vector of the camera is not horizontal when the screen is attached to your head instead of on the table. See `GitHub issue #41567 <https://github.com/godotengine/godot/issues/41567>`__ for details.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_blend_mode:
.. rst-class:: classref-property
:ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **blend_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_blend_mode>`
.. rst-class:: classref-property-setget
- |void| **set_blend_mode**\ (\ value\: :ref:`BlendMode<enum_BaseMaterial3D_BlendMode>`\ )
- :ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **get_blend_mode**\ (\ )
The material's blend mode.
\ **Note:** Values other than ``Mix`` force the object into the transparent pipeline.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_clearcoat:
.. rst-class:: classref-property
:ref:`float<class_float>` **clearcoat** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_clearcoat>`
.. rst-class:: classref-property-setget
- |void| **set_clearcoat**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_clearcoat**\ (\ )
Establece la fuerza del efecto del barniz. Ajustar a ``0`` se ve igual que desactivar el efecto de barniz.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_clearcoat_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **clearcoat_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_clearcoat_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, clearcoat rendering is enabled. Adds a secondary transparent pass to the lighting calculation resulting in an added specular blob. This makes materials appear as if they have a clear layer on them that can be either glossy or rough.
\ **Note:** Clearcoat rendering is not visible if the material's :ref:`shading_mode<class_BaseMaterial3D_property_shading_mode>` is :ref:`SHADING_MODE_UNSHADED<class_BaseMaterial3D_constant_SHADING_MODE_UNSHADED>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_clearcoat_roughness:
.. rst-class:: classref-property
:ref:`float<class_float>` **clearcoat_roughness** = ``0.5`` :ref:`🔗<class_BaseMaterial3D_property_clearcoat_roughness>`
.. rst-class:: classref-property-setget
- |void| **set_clearcoat_roughness**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_clearcoat_roughness**\ (\ )
Sets the roughness of the clearcoat pass. A higher value results in a rougher clearcoat while a lower value results in a smoother clearcoat.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_clearcoat_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **clearcoat_texture** :ref:`🔗<class_BaseMaterial3D_property_clearcoat_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Textura que define la fuerza del efecto del barniz y el brillo del barniz. La fuerza se especifica en el canal rojo mientras que el brillo se especifica en el canal verde.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_cull_mode:
.. rst-class:: classref-property
:ref:`CullMode<enum_BaseMaterial3D_CullMode>` **cull_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_cull_mode>`
.. rst-class:: classref-property-setget
- |void| **set_cull_mode**\ (\ value\: :ref:`CullMode<enum_BaseMaterial3D_CullMode>`\ )
- :ref:`CullMode<enum_BaseMaterial3D_CullMode>` **get_cull_mode**\ (\ )
Determines which side of the triangle to cull depending on whether the triangle faces towards or away from the camera.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_depth_draw_mode:
.. rst-class:: classref-property
:ref:`DepthDrawMode<enum_BaseMaterial3D_DepthDrawMode>` **depth_draw_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_depth_draw_mode>`
.. rst-class:: classref-property-setget
- |void| **set_depth_draw_mode**\ (\ value\: :ref:`DepthDrawMode<enum_BaseMaterial3D_DepthDrawMode>`\ )
- :ref:`DepthDrawMode<enum_BaseMaterial3D_DepthDrawMode>` **get_depth_draw_mode**\ (\ )
Determina cuándo el renderizado de profundidad se lleva a cabo. Véase también :ref:`transparency<class_BaseMaterial3D_property_transparency>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_depth_test:
.. rst-class:: classref-property
:ref:`DepthTest<enum_BaseMaterial3D_DepthTest>` **depth_test** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_depth_test>`
.. rst-class:: classref-property-setget
- |void| **set_depth_test**\ (\ value\: :ref:`DepthTest<enum_BaseMaterial3D_DepthTest>`\ )
- :ref:`DepthTest<enum_BaseMaterial3D_DepthTest>` **get_depth_test**\ (\ )
**Experimental:** May be affected by future rendering pipeline changes.
Determines which comparison operator is used when testing depth.
\ **Note:** Changing :ref:`depth_test<class_BaseMaterial3D_property_depth_test>` to a non-default value only has a visible effect when used on a transparent material, or a material that has :ref:`depth_draw_mode<class_BaseMaterial3D_property_depth_draw_mode>` set to :ref:`DEPTH_DRAW_DISABLED<class_BaseMaterial3D_constant_DEPTH_DRAW_DISABLED>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_detail_albedo:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **detail_albedo** :ref:`🔗<class_BaseMaterial3D_property_detail_albedo>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Texture that specifies the color of the detail overlay. :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>`'s alpha channel is used as a mask, even when the material is opaque. To use a dedicated texture as a mask, see :ref:`detail_mask<class_BaseMaterial3D_property_detail_mask>`.
\ **Note:** :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>` is *not* modulated by :ref:`albedo_color<class_BaseMaterial3D_property_albedo_color>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_detail_blend_mode:
.. rst-class:: classref-property
:ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **detail_blend_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_detail_blend_mode>`
.. rst-class:: classref-property-setget
- |void| **set_detail_blend_mode**\ (\ value\: :ref:`BlendMode<enum_BaseMaterial3D_BlendMode>`\ )
- :ref:`BlendMode<enum_BaseMaterial3D_BlendMode>` **get_detail_blend_mode**\ (\ )
Especifica cómo el :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>` debe mezclarse con el ``ALBEDO`` actual.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_detail_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **detail_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_detail_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, enables the detail overlay. Detail is a second texture that gets mixed over the surface of the object based on :ref:`detail_mask<class_BaseMaterial3D_property_detail_mask>` and :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>`'s alpha channel. This can be used to add variation to objects, or to blend between two different albedo/normal textures.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_detail_mask:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **detail_mask** :ref:`🔗<class_BaseMaterial3D_property_detail_mask>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Texture used to specify how the detail textures get blended with the base textures. :ref:`detail_mask<class_BaseMaterial3D_property_detail_mask>` can be used together with :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>`'s alpha channel (if any).
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_detail_normal:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **detail_normal** :ref:`🔗<class_BaseMaterial3D_property_detail_normal>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Texture that specifies the per-pixel normal of the detail overlay. The :ref:`detail_normal<class_BaseMaterial3D_property_detail_normal>` texture only uses the red and green channels; the blue and alpha channels are ignored. The normal read from :ref:`detail_normal<class_BaseMaterial3D_property_detail_normal>` is oriented around the surface normal provided by the :ref:`Mesh<class_Mesh>`.
\ **Note:** Godot expects the normal map to use X+, Y+, and Z+ coordinates. See `this page <http://wiki.polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates>`__ for a comparison of normal map coordinates expected by popular engines.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_detail_uv_layer:
.. rst-class:: classref-property
:ref:`DetailUV<enum_BaseMaterial3D_DetailUV>` **detail_uv_layer** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_detail_uv_layer>`
.. rst-class:: classref-property-setget
- |void| **set_detail_uv**\ (\ value\: :ref:`DetailUV<enum_BaseMaterial3D_DetailUV>`\ )
- :ref:`DetailUV<enum_BaseMaterial3D_DetailUV>` **get_detail_uv**\ (\ )
Especifica si se utiliza ``UV`` o ``UV2`` para la capa de detalle.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_diffuse_mode:
.. rst-class:: classref-property
:ref:`DiffuseMode<enum_BaseMaterial3D_DiffuseMode>` **diffuse_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_diffuse_mode>`
.. rst-class:: classref-property-setget
- |void| **set_diffuse_mode**\ (\ value\: :ref:`DiffuseMode<enum_BaseMaterial3D_DiffuseMode>`\ )
- :ref:`DiffuseMode<enum_BaseMaterial3D_DiffuseMode>` **get_diffuse_mode**\ (\ )
El algoritmo utilizado para la dispersión de luz difusa.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_disable_ambient_light:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **disable_ambient_light** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_disable_ambient_light>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, el objeto no recibe luz ambiental.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_disable_fog:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **disable_fog** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_disable_fog>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, the object will not be affected by fog (neither volumetric nor depth fog). This is useful for unshaded or transparent materials (e.g. particles), which without this setting will be affected even if fully transparent.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_disable_receive_shadows:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **disable_receive_shadows** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_disable_receive_shadows>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, el objeto no recibe ninguna sombra que de otra manera sería arrojada sobre él.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_disable_specular_occlusion:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **disable_specular_occlusion** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_disable_specular_occlusion>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, disables specular occlusion even if :ref:`ProjectSettings.rendering/reflections/specular_occlusion/enabled<class_ProjectSettings_property_rendering/reflections/specular_occlusion/enabled>` is ``false``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_distance_fade_max_distance:
.. rst-class:: classref-property
:ref:`float<class_float>` **distance_fade_max_distance** = ``10.0`` :ref:`🔗<class_BaseMaterial3D_property_distance_fade_max_distance>`
.. rst-class:: classref-property-setget
- |void| **set_distance_fade_max_distance**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_distance_fade_max_distance**\ (\ )
Distance at which the object appears fully opaque.
\ **Note:** If :ref:`distance_fade_max_distance<class_BaseMaterial3D_property_distance_fade_max_distance>` is less than :ref:`distance_fade_min_distance<class_BaseMaterial3D_property_distance_fade_min_distance>`, the behavior will be reversed. The object will start to fade away at :ref:`distance_fade_max_distance<class_BaseMaterial3D_property_distance_fade_max_distance>` and will fully disappear once it reaches :ref:`distance_fade_min_distance<class_BaseMaterial3D_property_distance_fade_min_distance>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_distance_fade_min_distance:
.. rst-class:: classref-property
:ref:`float<class_float>` **distance_fade_min_distance** = ``0.0`` :ref:`🔗<class_BaseMaterial3D_property_distance_fade_min_distance>`
.. rst-class:: classref-property-setget
- |void| **set_distance_fade_min_distance**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_distance_fade_min_distance**\ (\ )
Distance at which the object starts to become visible. If the object is less than this distance away, it will be invisible.
\ **Note:** If :ref:`distance_fade_min_distance<class_BaseMaterial3D_property_distance_fade_min_distance>` is greater than :ref:`distance_fade_max_distance<class_BaseMaterial3D_property_distance_fade_max_distance>`, the behavior will be reversed. The object will start to fade away at :ref:`distance_fade_max_distance<class_BaseMaterial3D_property_distance_fade_max_distance>` and will fully disappear once it reaches :ref:`distance_fade_min_distance<class_BaseMaterial3D_property_distance_fade_min_distance>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_distance_fade_mode:
.. rst-class:: classref-property
:ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>` **distance_fade_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_distance_fade_mode>`
.. rst-class:: classref-property-setget
- |void| **set_distance_fade**\ (\ value\: :ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>`\ )
- :ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>` **get_distance_fade**\ (\ )
Especifica el tipo de desvanecimiento a utilizar. Puede ser cualquiera de los :ref:`DistanceFadeMode<enum_BaseMaterial3D_DistanceFadeMode>`\ s.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_emission:
.. rst-class:: classref-property
:ref:`Color<class_Color>` **emission** = ``Color(0, 0, 0, 1)`` :ref:`🔗<class_BaseMaterial3D_property_emission>`
.. rst-class:: classref-property-setget
- |void| **set_emission**\ (\ value\: :ref:`Color<class_Color>`\ )
- :ref:`Color<class_Color>` **get_emission**\ (\ )
El color de la luz emitida. Véase :ref:`emission_enabled<class_BaseMaterial3D_property_emission_enabled>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_emission_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **emission_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_emission_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, the body emits light. Emitting light makes the object appear brighter. The object can also cast light on other objects if a :ref:`VoxelGI<class_VoxelGI>`, SDFGI, or :ref:`LightmapGI<class_LightmapGI>` is used and this object is used in baked lighting.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_emission_energy_multiplier:
.. rst-class:: classref-property
:ref:`float<class_float>` **emission_energy_multiplier** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_emission_energy_multiplier>`
.. rst-class:: classref-property-setget
- |void| **set_emission_energy_multiplier**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_emission_energy_multiplier**\ (\ )
El multiplicador de la luz emitida. Véase :ref:`emission_enabled<class_BaseMaterial3D_property_emission_enabled>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_emission_intensity:
.. rst-class:: classref-property
:ref:`float<class_float>` **emission_intensity** :ref:`🔗<class_BaseMaterial3D_property_emission_intensity>`
.. rst-class:: classref-property-setget
- |void| **set_emission_intensity**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_emission_intensity**\ (\ )
Luminance of emitted light, measured in nits (candela per square meter). Only available when :ref:`ProjectSettings.rendering/lights_and_shadows/use_physical_light_units<class_ProjectSettings_property_rendering/lights_and_shadows/use_physical_light_units>` is enabled. The default is roughly equivalent to an indoor lightbulb.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_emission_on_uv2:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **emission_on_uv2** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_emission_on_uv2>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Utiliza ``UV2`` para leer de la :ref:`emission_texture<class_BaseMaterial3D_property_emission_texture>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_emission_operator:
.. rst-class:: classref-property
:ref:`EmissionOperator<enum_BaseMaterial3D_EmissionOperator>` **emission_operator** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_emission_operator>`
.. rst-class:: classref-property-setget
- |void| **set_emission_operator**\ (\ value\: :ref:`EmissionOperator<enum_BaseMaterial3D_EmissionOperator>`\ )
- :ref:`EmissionOperator<enum_BaseMaterial3D_EmissionOperator>` **get_emission_operator**\ (\ )
Sets how :ref:`emission<class_BaseMaterial3D_property_emission>` interacts with :ref:`emission_texture<class_BaseMaterial3D_property_emission_texture>`. Can either add or multiply.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_emission_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **emission_texture** :ref:`🔗<class_BaseMaterial3D_property_emission_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Textura que especifica cuánta superficie emite luz en un punto determinado.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_fixed_size:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **fixed_size** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_fixed_size>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, the object is rendered at the same size regardless of distance. The object's size on screen is the same as if the camera was ``1.0`` units away from the object's origin, regardless of the actual distance from the camera. The :ref:`Camera3D<class_Camera3D>`'s field of view (or :ref:`Camera3D.size<class_Camera3D_property_size>` when in orthogonal/frustum mode) still affects the size the object is drawn at.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_fov_override:
.. rst-class:: classref-property
:ref:`float<class_float>` **fov_override** = ``75.0`` :ref:`🔗<class_BaseMaterial3D_property_fov_override>`
.. rst-class:: classref-property-setget
- |void| **set_fov_override**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_fov_override**\ (\ )
Overrides the :ref:`Camera3D<class_Camera3D>`'s field of view angle (in degrees).
\ **Note:** This behaves as if the field of view is set on a :ref:`Camera3D<class_Camera3D>` with :ref:`Camera3D.keep_aspect<class_Camera3D_property_keep_aspect>` set to :ref:`Camera3D.KEEP_HEIGHT<class_Camera3D_constant_KEEP_HEIGHT>`. Additionally, it may not look correct on a non-perspective camera where the field of view setting is ignored.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_grow:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **grow** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_grow>`
.. rst-class:: classref-property-setget
- |void| **set_grow_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_grow_enabled**\ (\ )
If ``true``, enables the vertex grow setting. This can be used to create mesh-based outlines using a second material pass and its :ref:`cull_mode<class_BaseMaterial3D_property_cull_mode>` set to :ref:`CULL_FRONT<class_BaseMaterial3D_constant_CULL_FRONT>`. See also :ref:`grow_amount<class_BaseMaterial3D_property_grow_amount>`.
\ **Note:** Vertex growth cannot create new vertices, which means that visible gaps may occur in sharp corners. This can be alleviated by designing the mesh to use smooth normals exclusively using `face weighted normals <http://wiki.polycount.com/wiki/Face_weighted_normals>`__ in the 3D authoring software. In this case, grow will be able to join every outline together, just like in the original mesh.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_grow_amount:
.. rst-class:: classref-property
:ref:`float<class_float>` **grow_amount** = ``0.0`` :ref:`🔗<class_BaseMaterial3D_property_grow_amount>`
.. rst-class:: classref-property-setget
- |void| **set_grow**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_grow**\ (\ )
Grows object vertices in the direction of their normals. Only effective if :ref:`grow<class_BaseMaterial3D_property_grow>` is ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_deep_parallax:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **heightmap_deep_parallax** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_heightmap_deep_parallax>`
.. rst-class:: classref-property-setget
- |void| **set_heightmap_deep_parallax**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_heightmap_deep_parallax_enabled**\ (\ )
If ``true``, uses parallax occlusion mapping to represent depth in the material instead of simple offset mapping (see :ref:`heightmap_enabled<class_BaseMaterial3D_property_heightmap_enabled>`). This results in a more convincing depth effect, but is much more expensive on the GPU. Only enable this on materials where it makes a significant visual difference.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **heightmap_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_heightmap_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, height mapping is enabled (also called "parallax mapping" or "depth mapping"). See also :ref:`normal_enabled<class_BaseMaterial3D_property_normal_enabled>`. Height mapping is a demanding feature on the GPU, so it should only be used on materials where it makes a significant visual difference.
\ **Note:** Height mapping is not supported if triplanar mapping is used on the same material. The value of :ref:`heightmap_enabled<class_BaseMaterial3D_property_heightmap_enabled>` will be ignored if :ref:`uv1_triplanar<class_BaseMaterial3D_property_uv1_triplanar>` is enabled.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_flip_binormal:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **heightmap_flip_binormal** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_heightmap_flip_binormal>`
.. rst-class:: classref-property-setget
- |void| **set_heightmap_deep_parallax_flip_binormal**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_heightmap_deep_parallax_flip_binormal**\ (\ )
Si es ``true``, invierte los vectores binormales de la malla al interpretar el mapa de altura. Si el efecto del mapa de altura se ve raro cuando la cámara se mueve (incluso con una :ref:`heightmap_scale<class_BaseMaterial3D_property_heightmap_scale>` razonable), intenta establecer esto a ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_flip_tangent:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **heightmap_flip_tangent** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_heightmap_flip_tangent>`
.. rst-class:: classref-property-setget
- |void| **set_heightmap_deep_parallax_flip_tangent**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_heightmap_deep_parallax_flip_tangent**\ (\ )
Si es ``true``, invierte los vectores tangentes de la malla al interpretar el mapa de altura. Si el efecto del mapa de altura se ve raro cuando la cámara se mueve (incluso con una :ref:`heightmap_scale<class_BaseMaterial3D_property_heightmap_scale>` razonable), intenta establecer esto a ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_flip_texture:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **heightmap_flip_texture** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_heightmap_flip_texture>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, interpreta la textura del mapa de altura como un mapa de profundidad, donde los valores más brillantes parecen estar "más bajos" en altitud en comparación con los valores más oscuros.
Esto se puede habilitar para la compatibilidad con algunos materiales creados para Godot 3.x. Esto no es necesario si la opción de importación Invertir se usó para invertir el mapa de profundidad en Godot 3.x, en cuyo caso :ref:`heightmap_flip_texture<class_BaseMaterial3D_property_heightmap_flip_texture>` debería permanecer en ``false``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_max_layers:
.. rst-class:: classref-property
:ref:`int<class_int>` **heightmap_max_layers** :ref:`🔗<class_BaseMaterial3D_property_heightmap_max_layers>`
.. rst-class:: classref-property-setget
- |void| **set_heightmap_deep_parallax_max_layers**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_heightmap_deep_parallax_max_layers**\ (\ )
El número de capas que se utilizarán para el mapeo de oclusión de paralaje cuando la cámara esté cerca del material. Los valores más altos resultan en un efecto de profundidad más convincente, especialmente en los materiales que tienen cambios de altura pronunciados. Los valores más altos tienen un coste significativo en la GPU, por lo que solo debe aumentarse en los materiales donde produce una diferencia visual significativa.
\ **Nota:** Solo es efectivo si :ref:`heightmap_deep_parallax<class_BaseMaterial3D_property_heightmap_deep_parallax>` es ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_min_layers:
.. rst-class:: classref-property
:ref:`int<class_int>` **heightmap_min_layers** :ref:`🔗<class_BaseMaterial3D_property_heightmap_min_layers>`
.. rst-class:: classref-property-setget
- |void| **set_heightmap_deep_parallax_min_layers**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_heightmap_deep_parallax_min_layers**\ (\ )
El número de capas que se utilizarán para el mapeo de oclusión de paralaje cuando la cámara esté lejos del material. Los valores más altos resultan en un efecto de profundidad más convincente, especialmente en los materiales que tienen cambios de altura pronunciados. Los valores más altos tienen un coste significativo en la GPU, por lo que solo debe aumentarse en los materiales donde produce una diferencia visual significativa.
\ **Nota:** Solo es efectivo si :ref:`heightmap_deep_parallax<class_BaseMaterial3D_property_heightmap_deep_parallax>` es ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_scale:
.. rst-class:: classref-property
:ref:`float<class_float>` **heightmap_scale** = ``5.0`` :ref:`🔗<class_BaseMaterial3D_property_heightmap_scale>`
.. rst-class:: classref-property-setget
- |void| **set_heightmap_scale**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_heightmap_scale**\ (\ )
The heightmap scale to use for the parallax effect (see :ref:`heightmap_enabled<class_BaseMaterial3D_property_heightmap_enabled>`). The default value is tuned so that the highest point (value = 255) appears to be 5 cm higher than the lowest point (value = 0). Higher values result in a deeper appearance, but may result in artifacts appearing when looking at the material from oblique angles, especially when the camera moves. Negative values can be used to invert the parallax effect, but this is different from inverting the texture using :ref:`heightmap_flip_texture<class_BaseMaterial3D_property_heightmap_flip_texture>` as the material will also appear to be "closer" to the camera. In most cases, :ref:`heightmap_scale<class_BaseMaterial3D_property_heightmap_scale>` should be kept to a positive value.
\ **Note:** If the height map effect looks strange regardless of this value, try adjusting :ref:`heightmap_flip_binormal<class_BaseMaterial3D_property_heightmap_flip_binormal>` and :ref:`heightmap_flip_tangent<class_BaseMaterial3D_property_heightmap_flip_tangent>`. See also :ref:`heightmap_texture<class_BaseMaterial3D_property_heightmap_texture>` for recommendations on authoring heightmap textures, as the way the heightmap texture is authored affects how :ref:`heightmap_scale<class_BaseMaterial3D_property_heightmap_scale>` behaves.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_heightmap_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **heightmap_texture** :ref:`🔗<class_BaseMaterial3D_property_heightmap_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
The texture to use as a height map. See also :ref:`heightmap_enabled<class_BaseMaterial3D_property_heightmap_enabled>`.
For best results, the texture should be normalized (with :ref:`heightmap_scale<class_BaseMaterial3D_property_heightmap_scale>` reduced to compensate). In `GIMP <https://gimp.org>`__, this can be done using **Colors > Auto > Equalize**. If the texture only uses a small part of its available range, the parallax effect may look strange, especially when the camera moves.
\ **Note:** To reduce memory usage and improve loading times, you may be able to use a lower-resolution heightmap texture as most heightmaps are only comprised of low-frequency data.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_metallic:
.. rst-class:: classref-property
:ref:`float<class_float>` **metallic** = ``0.0`` :ref:`🔗<class_BaseMaterial3D_property_metallic>`
.. rst-class:: classref-property-setget
- |void| **set_metallic**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_metallic**\ (\ )
Un valor alto hace que el material parezca más como un metal. Los no metálicos usan su albedo como color difuso y añaden difusión a la reflexión especular. Con los no metálicos, la reflexión aparece sobre el color del albedo. Los metales usan su albedo como multiplicador de la reflexión especular y ponen el color difuso en negro, lo que resulta en una reflexión teñida. Los materiales funcionan mejor cuando son totalmente metálicos o totalmente no metálicos, los valores entre ``0`` y ``1`` sólo deben utilizarse para la mezcla entre secciones metálicas y no metálicas. Para alterar la cantidad de reflexión utiliza :ref:`roughness<class_BaseMaterial3D_property_roughness>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_metallic_specular:
.. rst-class:: classref-property
:ref:`float<class_float>` **metallic_specular** = ``0.5`` :ref:`🔗<class_BaseMaterial3D_property_metallic_specular>`
.. rst-class:: classref-property-setget
- |void| **set_specular**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_specular**\ (\ )
Adjusts the strength of specular reflections. Specular reflections are composed of scene reflections and the specular lobe which is the bright spot that is reflected from light sources. When set to ``0.0``, no specular reflections will be visible. This differs from the :ref:`SPECULAR_DISABLED<class_BaseMaterial3D_constant_SPECULAR_DISABLED>` :ref:`SpecularMode<enum_BaseMaterial3D_SpecularMode>` as :ref:`SPECULAR_DISABLED<class_BaseMaterial3D_constant_SPECULAR_DISABLED>` only applies to the specular lobe from the light source.
\ **Note:** Unlike :ref:`metallic<class_BaseMaterial3D_property_metallic>`, this is not energy-conserving, so it should be left at ``0.5`` in most cases. See also :ref:`roughness<class_BaseMaterial3D_property_roughness>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_metallic_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **metallic_texture** :ref:`🔗<class_BaseMaterial3D_property_metallic_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Textura utilizada para especificar el metal de un objeto. Se multiplica por :ref:`metallic<class_BaseMaterial3D_property_metallic>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_metallic_texture_channel:
.. rst-class:: classref-property
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **metallic_texture_channel** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_metallic_texture_channel>`
.. rst-class:: classref-property-setget
- |void| **set_metallic_texture_channel**\ (\ value\: :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>`\ )
- :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **get_metallic_texture_channel**\ (\ )
Especifica el canal de la :ref:`metallic_texture<class_BaseMaterial3D_property_metallic_texture>` en el que se almacena la información metálica. Esto es útil cuando se almacena la información para múltiples efectos en una sola textura. Por ejemplo, si almacenas metálicos en el canal rojo, rugosidad en el azul y oclusión ambiental en el verde, podrías reducir el número de texturas que utilizas.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_msdf_outline_size:
.. rst-class:: classref-property
:ref:`float<class_float>` **msdf_outline_size** = ``0.0`` :ref:`🔗<class_BaseMaterial3D_property_msdf_outline_size>`
.. rst-class:: classref-property-setget
- |void| **set_msdf_outline_size**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_msdf_outline_size**\ (\ )
El ancho del contorno de la forma.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_msdf_pixel_range:
.. rst-class:: classref-property
:ref:`float<class_float>` **msdf_pixel_range** = ``4.0`` :ref:`🔗<class_BaseMaterial3D_property_msdf_pixel_range>`
.. rst-class:: classref-property-setget
- |void| **set_msdf_pixel_range**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_msdf_pixel_range**\ (\ )
The width of the range around the shape between the minimum and maximum representable signed distance.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_no_depth_test:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **no_depth_test** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_no_depth_test>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, la prueba de profundidad está desactivada y el objeto se dibujará en orden de renderizado.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_normal_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **normal_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_normal_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, normal mapping is enabled. This has a slight performance cost, especially on mobile GPUs.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_normal_scale:
.. rst-class:: classref-property
:ref:`float<class_float>` **normal_scale** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_normal_scale>`
.. rst-class:: classref-property-setget
- |void| **set_normal_scale**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_normal_scale**\ (\ )
La fuerza del efecto del mapa normal.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_normal_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **normal_texture** :ref:`🔗<class_BaseMaterial3D_property_normal_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Texture used to specify the normal at a given pixel. The :ref:`normal_texture<class_BaseMaterial3D_property_normal_texture>` only uses the red and green channels; the blue and alpha channels are ignored. The normal read from :ref:`normal_texture<class_BaseMaterial3D_property_normal_texture>` is oriented around the surface normal provided by the :ref:`Mesh<class_Mesh>`.
\ **Note:** The mesh must have both normals and tangents defined in its vertex data. Otherwise, the normal map won't render correctly and will only appear to darken the whole surface. If creating geometry with :ref:`SurfaceTool<class_SurfaceTool>`, you can use :ref:`SurfaceTool.generate_normals()<class_SurfaceTool_method_generate_normals>` and :ref:`SurfaceTool.generate_tangents()<class_SurfaceTool_method_generate_tangents>` to automatically generate normals and tangents respectively.
\ **Note:** Godot expects the normal map to use X+, Y+, and Z+ coordinates. See `this page <http://wiki.polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates>`__ for a comparison of normal map coordinates expected by popular engines.
\ **Note:** If :ref:`detail_enabled<class_BaseMaterial3D_property_detail_enabled>` is ``true``, the :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>` texture is drawn *below* the :ref:`normal_texture<class_BaseMaterial3D_property_normal_texture>`. To display a normal map *above* the :ref:`detail_albedo<class_BaseMaterial3D_property_detail_albedo>` texture, use :ref:`detail_normal<class_BaseMaterial3D_property_detail_normal>` instead.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_orm_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **orm_texture** :ref:`🔗<class_BaseMaterial3D_property_orm_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
The Occlusion/Roughness/Metallic texture to use. This is a more efficient replacement of :ref:`ao_texture<class_BaseMaterial3D_property_ao_texture>`, :ref:`roughness_texture<class_BaseMaterial3D_property_roughness_texture>` and :ref:`metallic_texture<class_BaseMaterial3D_property_metallic_texture>` in :ref:`ORMMaterial3D<class_ORMMaterial3D>`. Ambient occlusion is stored in the red channel. Roughness map is stored in the green channel. Metallic map is stored in the blue channel. The alpha channel is ignored.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_particles_anim_h_frames:
.. rst-class:: classref-property
:ref:`int<class_int>` **particles_anim_h_frames** :ref:`🔗<class_BaseMaterial3D_property_particles_anim_h_frames>`
.. rst-class:: classref-property-setget
- |void| **set_particles_anim_h_frames**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_particles_anim_h_frames**\ (\ )
The number of horizontal frames in the particle sprite sheet. Only enabled when using :ref:`BILLBOARD_PARTICLES<class_BaseMaterial3D_constant_BILLBOARD_PARTICLES>`. See :ref:`billboard_mode<class_BaseMaterial3D_property_billboard_mode>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_particles_anim_loop:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **particles_anim_loop** :ref:`🔗<class_BaseMaterial3D_property_particles_anim_loop>`
.. rst-class:: classref-property-setget
- |void| **set_particles_anim_loop**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_particles_anim_loop**\ (\ )
If ``true``, particle animations are looped. Only enabled when using :ref:`BILLBOARD_PARTICLES<class_BaseMaterial3D_constant_BILLBOARD_PARTICLES>`. See :ref:`billboard_mode<class_BaseMaterial3D_property_billboard_mode>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_particles_anim_v_frames:
.. rst-class:: classref-property
:ref:`int<class_int>` **particles_anim_v_frames** :ref:`🔗<class_BaseMaterial3D_property_particles_anim_v_frames>`
.. rst-class:: classref-property-setget
- |void| **set_particles_anim_v_frames**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_particles_anim_v_frames**\ (\ )
Número de fotogramas verticales en la hoja de sprites de partículas. Solo se habilita al usar :ref:`BILLBOARD_PARTICLES<class_BaseMaterial3D_constant_BILLBOARD_PARTICLES>`. Véase :ref:`billboard_mode<class_BaseMaterial3D_property_billboard_mode>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_point_size:
.. rst-class:: classref-property
:ref:`float<class_float>` **point_size** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_point_size>`
.. rst-class:: classref-property-setget
- |void| **set_point_size**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_point_size**\ (\ )
Tamaño en píxeles. Véase :ref:`use_point_size<class_BaseMaterial3D_property_use_point_size>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_proximity_fade_distance:
.. rst-class:: classref-property
:ref:`float<class_float>` **proximity_fade_distance** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_proximity_fade_distance>`
.. rst-class:: classref-property-setget
- |void| **set_proximity_fade_distance**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_proximity_fade_distance**\ (\ )
Distancia a la que se produce el efecto de desvanecimiento. Cuanto mayor es la distancia, más tiempo tarda un objeto en desvanecerse.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_proximity_fade_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **proximity_fade_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_proximity_fade_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_proximity_fade_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_proximity_fade_enabled**\ (\ )
Si es ``true``, se activa el efecto de desvanecimiento por proximidad. El efecto de desvanecimiento por proximidad se desvanece cada píxel basado en su distancia a otro objeto.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_refraction_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **refraction_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_refraction_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, the refraction effect is enabled. Distorts transparency based on light from behind the object.
\ **Note:** Refraction is implemented using the screen texture. Only opaque materials will appear in the refraction, since transparent materials do not appear in the screen texture.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_refraction_scale:
.. rst-class:: classref-property
:ref:`float<class_float>` **refraction_scale** = ``0.05`` :ref:`🔗<class_BaseMaterial3D_property_refraction_scale>`
.. rst-class:: classref-property-setget
- |void| **set_refraction**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_refraction**\ (\ )
La fuerza del efecto de refracción.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_refraction_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **refraction_texture** :ref:`🔗<class_BaseMaterial3D_property_refraction_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
Textura que controla la fuerza de la refracción por píxel. Multiplicado por :ref:`refraction_scale<class_BaseMaterial3D_property_refraction_scale>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_refraction_texture_channel:
.. rst-class:: classref-property
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **refraction_texture_channel** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_refraction_texture_channel>`
.. rst-class:: classref-property-setget
- |void| **set_refraction_texture_channel**\ (\ value\: :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>`\ )
- :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **get_refraction_texture_channel**\ (\ )
Specifies the channel of the :ref:`refraction_texture<class_BaseMaterial3D_property_refraction_texture>` in which the refraction information is stored. This is useful when you store the information for multiple effects in a single texture. For example if you stored refraction in the red channel, roughness in the blue, and ambient occlusion in the green you could reduce the number of textures you use.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_rim:
.. rst-class:: classref-property
:ref:`float<class_float>` **rim** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_rim>`
.. rst-class:: classref-property-setget
- |void| **set_rim**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_rim**\ (\ )
Establece la fuerza del efecto de iluminación del borde.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_rim_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **rim_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_rim_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, rim effect is enabled. Rim lighting increases the brightness at glancing angles on an object.
\ **Note:** Rim lighting is not visible if the material's :ref:`shading_mode<class_BaseMaterial3D_property_shading_mode>` is :ref:`SHADING_MODE_UNSHADED<class_BaseMaterial3D_constant_SHADING_MODE_UNSHADED>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_rim_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **rim_texture** :ref:`🔗<class_BaseMaterial3D_property_rim_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
La textura utilizada para establecer la fuerza del efecto de iluminación del borde por píxel. Multiplicado por el :ref:`rim<class_BaseMaterial3D_property_rim>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_rim_tint:
.. rst-class:: classref-property
:ref:`float<class_float>` **rim_tint** = ``0.5`` :ref:`🔗<class_BaseMaterial3D_property_rim_tint>`
.. rst-class:: classref-property-setget
- |void| **set_rim_tint**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_rim_tint**\ (\ )
La cantidad de luz de mezclia y el color del albedo cuando se renderiza el efecto de borde. Si se utiliza ``0`` el color de la luz, mientras que ``1`` significa que se utiliza el color del albedo. Un valor intermedio generalmente funciona mejor.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_roughness:
.. rst-class:: classref-property
:ref:`float<class_float>` **roughness** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_roughness>`
.. rst-class:: classref-property-setget
- |void| **set_roughness**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_roughness**\ (\ )
Reflexión de la superficie. Un valor de ``0`` representa un espejo perfecto mientras que un valor de ``1`` difumina completamente el reflejo. Véase también :ref:`metallic<class_BaseMaterial3D_property_metallic>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_roughness_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **roughness_texture** :ref:`🔗<class_BaseMaterial3D_property_roughness_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
La textura utilizada para controlar la rugosidad por píxel. Multiplicado por :ref:`roughness<class_BaseMaterial3D_property_roughness>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_roughness_texture_channel:
.. rst-class:: classref-property
:ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **roughness_texture_channel** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_roughness_texture_channel>`
.. rst-class:: classref-property-setget
- |void| **set_roughness_texture_channel**\ (\ value\: :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>`\ )
- :ref:`TextureChannel<enum_BaseMaterial3D_TextureChannel>` **get_roughness_texture_channel**\ (\ )
Specifies the channel of the :ref:`roughness_texture<class_BaseMaterial3D_property_roughness_texture>` in which the roughness information is stored. This is useful when you store the information for multiple effects in a single texture. For example if you stored metallic in the red channel, roughness in the blue, and ambient occlusion in the green you could reduce the number of textures you use.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_shading_mode:
.. rst-class:: classref-property
:ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>` **shading_mode** = ``1`` :ref:`🔗<class_BaseMaterial3D_property_shading_mode>`
.. rst-class:: classref-property-setget
- |void| **set_shading_mode**\ (\ value\: :ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>`\ )
- :ref:`ShadingMode<enum_BaseMaterial3D_ShadingMode>` **get_shading_mode**\ (\ )
Sets whether the shading takes place, per-pixel, per-vertex or unshaded. Per-vertex lighting is faster, making it the best choice for mobile applications, however it looks considerably worse than per-pixel. Unshaded rendering is the fastest, but disables all interactions with lights.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_shadow_to_opacity:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **shadow_to_opacity** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_shadow_to_opacity>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, habilita el modo de representación "sombra a opacidad" en el que la iluminación modifica el alfa de modo que las áreas sombreadas son opacas y las áreas no sombreadas son transparentes. Es útil para superponer sombras en una cámara de alimentación en AR.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_specular_mode:
.. rst-class:: classref-property
:ref:`SpecularMode<enum_BaseMaterial3D_SpecularMode>` **specular_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_specular_mode>`
.. rst-class:: classref-property-setget
- |void| **set_specular_mode**\ (\ value\: :ref:`SpecularMode<enum_BaseMaterial3D_SpecularMode>`\ )
- :ref:`SpecularMode<enum_BaseMaterial3D_SpecularMode>` **get_specular_mode**\ (\ )
The method for rendering the specular blob.
\ **Note:** :ref:`specular_mode<class_BaseMaterial3D_property_specular_mode>` only applies to the specular blob. It does not affect specular reflections from the sky, screen-space reflections, :ref:`VoxelGI<class_VoxelGI>`, SDFGI or :ref:`ReflectionProbe<class_ReflectionProbe>`\ s. To disable reflections from these sources as well, set :ref:`metallic_specular<class_BaseMaterial3D_property_metallic_specular>` to ``0.0`` instead.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_stencil_color:
.. rst-class:: classref-property
:ref:`Color<class_Color>` **stencil_color** = ``Color(0, 0, 0, 1)`` :ref:`🔗<class_BaseMaterial3D_property_stencil_color>`
.. rst-class:: classref-property-setget
- |void| **set_stencil_effect_color**\ (\ value\: :ref:`Color<class_Color>`\ )
- :ref:`Color<class_Color>` **get_stencil_effect_color**\ (\ )
**Experimental:** May be affected by future rendering pipeline changes.
The primary color of the stencil effect.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_stencil_compare:
.. rst-class:: classref-property
:ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **stencil_compare** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_stencil_compare>`
.. rst-class:: classref-property-setget
- |void| **set_stencil_compare**\ (\ value\: :ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>`\ )
- :ref:`StencilCompare<enum_BaseMaterial3D_StencilCompare>` **get_stencil_compare**\ (\ )
**Experimental:** May be affected by future rendering pipeline changes.
The comparison operator to use for stencil masking operations.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_stencil_flags:
.. rst-class:: classref-property
:ref:`int<class_int>` **stencil_flags** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_stencil_flags>`
.. rst-class:: classref-property-setget
- |void| **set_stencil_flags**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_stencil_flags**\ (\ )
**Experimental:** May be affected by future rendering pipeline changes.
The flags dictating how the stencil operation behaves.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_stencil_mode:
.. rst-class:: classref-property
:ref:`StencilMode<enum_BaseMaterial3D_StencilMode>` **stencil_mode** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_stencil_mode>`
.. rst-class:: classref-property-setget
- |void| **set_stencil_mode**\ (\ value\: :ref:`StencilMode<enum_BaseMaterial3D_StencilMode>`\ )
- :ref:`StencilMode<enum_BaseMaterial3D_StencilMode>` **get_stencil_mode**\ (\ )
**Experimental:** May be affected by future rendering pipeline changes.
The stencil effect mode.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_stencil_outline_thickness:
.. rst-class:: classref-property
:ref:`float<class_float>` **stencil_outline_thickness** = ``0.01`` :ref:`🔗<class_BaseMaterial3D_property_stencil_outline_thickness>`
.. rst-class:: classref-property-setget
- |void| **set_stencil_effect_outline_thickness**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_stencil_effect_outline_thickness**\ (\ )
**Experimental:** May be affected by future rendering pipeline changes.
The outline thickness for :ref:`STENCIL_MODE_OUTLINE<class_BaseMaterial3D_constant_STENCIL_MODE_OUTLINE>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_stencil_reference:
.. rst-class:: classref-property
:ref:`int<class_int>` **stencil_reference** = ``1`` :ref:`🔗<class_BaseMaterial3D_property_stencil_reference>`
.. rst-class:: classref-property-setget
- |void| **set_stencil_reference**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_stencil_reference**\ (\ )
**Experimental:** May be affected by future rendering pipeline changes.
The stencil reference value (0-255). Typically a power of 2.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **subsurf_scatter_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, subsurface scattering is enabled. Emulates light that penetrates an object's surface, is scattered, and then emerges. Subsurface scattering quality is controlled by :ref:`ProjectSettings.rendering/environment/subsurface_scattering/subsurface_scattering_quality<class_ProjectSettings_property_rendering/environment/subsurface_scattering/subsurface_scattering_quality>`.
\ **Note:** Subsurface scattering is not supported on viewports that have a transparent background (where :ref:`Viewport.transparent_bg<class_Viewport_property_transparent_bg>` is ``true``).
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_skin_mode:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **subsurf_scatter_skin_mode** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_skin_mode>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, subsurface scattering will use a special mode optimized for the color and density of human skin, such as boosting the intensity of the red channel in subsurface scattering.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_strength:
.. rst-class:: classref-property
:ref:`float<class_float>` **subsurf_scatter_strength** = ``0.0`` :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_strength>`
.. rst-class:: classref-property-setget
- |void| **set_subsurface_scattering_strength**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_subsurface_scattering_strength**\ (\ )
The strength of the subsurface scattering effect. The depth of the effect is also controlled by :ref:`ProjectSettings.rendering/environment/subsurface_scattering/subsurface_scattering_scale<class_ProjectSettings_property_rendering/environment/subsurface_scattering/subsurface_scattering_scale>`, which is set globally.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **subsurf_scatter_texture** :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
La textura utilizada para controlar la fuerza del subsurface scattering. Se almacena en el canal rojo de la textura. Multiplicado por :ref:`subsurf_scatter_strength<class_BaseMaterial3D_property_subsurf_scatter_strength>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_transmittance_boost:
.. rst-class:: classref-property
:ref:`float<class_float>` **subsurf_scatter_transmittance_boost** = ``0.0`` :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_transmittance_boost>`
.. rst-class:: classref-property-setget
- |void| **set_transmittance_boost**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_transmittance_boost**\ (\ )
The intensity of the subsurface scattering transmittance effect.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_transmittance_color:
.. rst-class:: classref-property
:ref:`Color<class_Color>` **subsurf_scatter_transmittance_color** = ``Color(1, 1, 1, 1)`` :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_transmittance_color>`
.. rst-class:: classref-property-setget
- |void| **set_transmittance_color**\ (\ value\: :ref:`Color<class_Color>`\ )
- :ref:`Color<class_Color>` **get_transmittance_color**\ (\ )
The color to multiply the subsurface scattering transmittance effect with. Ignored if :ref:`subsurf_scatter_skin_mode<class_BaseMaterial3D_property_subsurf_scatter_skin_mode>` is ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_transmittance_depth:
.. rst-class:: classref-property
:ref:`float<class_float>` **subsurf_scatter_transmittance_depth** = ``0.1`` :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_transmittance_depth>`
.. rst-class:: classref-property-setget
- |void| **set_transmittance_depth**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_transmittance_depth**\ (\ )
The depth of the subsurface scattering transmittance effect.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_transmittance_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **subsurf_scatter_transmittance_enabled** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_transmittance_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const|
If ``true``, enables subsurface scattering transmittance. Only effective if :ref:`subsurf_scatter_enabled<class_BaseMaterial3D_property_subsurf_scatter_enabled>` is ``true``. See also :ref:`backlight_enabled<class_BaseMaterial3D_property_backlight_enabled>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_subsurf_scatter_transmittance_texture:
.. rst-class:: classref-property
:ref:`Texture2D<class_Texture2D>` **subsurf_scatter_transmittance_texture** :ref:`🔗<class_BaseMaterial3D_property_subsurf_scatter_transmittance_texture>`
.. rst-class:: classref-property-setget
- |void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ )
- :ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const|
The texture to use for multiplying the intensity of the subsurface scattering transmittance intensity. See also :ref:`subsurf_scatter_texture<class_BaseMaterial3D_property_subsurf_scatter_texture>`. Ignored if :ref:`subsurf_scatter_skin_mode<class_BaseMaterial3D_property_subsurf_scatter_skin_mode>` is ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_texture_filter:
.. rst-class:: classref-property
:ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **texture_filter** = ``3`` :ref:`🔗<class_BaseMaterial3D_property_texture_filter>`
.. rst-class:: classref-property-setget
- |void| **set_texture_filter**\ (\ value\: :ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>`\ )
- :ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` **get_texture_filter**\ (\ )
Filter flags for the texture.
\ **Note:** :ref:`heightmap_texture<class_BaseMaterial3D_property_heightmap_texture>` is always sampled with linear filtering, even if nearest-neighbor filtering is selected here. This is to ensure the heightmap effect looks as intended. If you need sharper height transitions between pixels, resize the heightmap texture in an image editor with nearest-neighbor filtering.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_texture_repeat:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **texture_repeat** = ``true`` :ref:`🔗<class_BaseMaterial3D_property_texture_repeat>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, the texture repeats when exceeding the texture's size. See :ref:`FLAG_USE_TEXTURE_REPEAT<class_BaseMaterial3D_constant_FLAG_USE_TEXTURE_REPEAT>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_transparency:
.. rst-class:: classref-property
:ref:`Transparency<enum_BaseMaterial3D_Transparency>` **transparency** = ``0`` :ref:`🔗<class_BaseMaterial3D_property_transparency>`
.. rst-class:: classref-property-setget
- |void| **set_transparency**\ (\ value\: :ref:`Transparency<enum_BaseMaterial3D_Transparency>`\ )
- :ref:`Transparency<enum_BaseMaterial3D_Transparency>` **get_transparency**\ (\ )
The material's transparency mode. Some transparency modes will disable shadow casting. Any transparency mode other than :ref:`TRANSPARENCY_DISABLED<class_BaseMaterial3D_constant_TRANSPARENCY_DISABLED>` has a greater performance impact compared to opaque rendering. See also :ref:`blend_mode<class_BaseMaterial3D_property_blend_mode>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_use_fov_override:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **use_fov_override** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_use_fov_override>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true`` use :ref:`fov_override<class_BaseMaterial3D_property_fov_override>` to override the :ref:`Camera3D<class_Camera3D>`'s field of view angle.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_use_particle_trails:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **use_particle_trails** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_use_particle_trails>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, enables parts of the shader required for :ref:`GPUParticles3D<class_GPUParticles3D>` trails to function. This also requires using a mesh with appropriate skinning, such as :ref:`RibbonTrailMesh<class_RibbonTrailMesh>` or :ref:`TubeTrailMesh<class_TubeTrailMesh>`. Enabling this feature outside of materials used in :ref:`GPUParticles3D<class_GPUParticles3D>` meshes will break material rendering.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_use_point_size:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **use_point_size** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_use_point_size>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, render point size can be changed.
\ **Note:** This is only effective for objects whose geometry is point-based rather than triangle-based. See also :ref:`point_size<class_BaseMaterial3D_property_point_size>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_use_z_clip_scale:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **use_z_clip_scale** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_use_z_clip_scale>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true`` use :ref:`z_clip_scale<class_BaseMaterial3D_property_z_clip_scale>` to scale the object being rendered towards the camera to avoid clipping into things like walls.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv1_offset:
.. rst-class:: classref-property
:ref:`Vector3<class_Vector3>` **uv1_offset** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_BaseMaterial3D_property_uv1_offset>`
.. rst-class:: classref-property-setget
- |void| **set_uv1_offset**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
- :ref:`Vector3<class_Vector3>` **get_uv1_offset**\ (\ )
How much to offset the ``UV`` coordinates. This amount will be added to ``UV`` in the vertex function. This can be used to offset a texture. The Z component is used when :ref:`uv1_triplanar<class_BaseMaterial3D_property_uv1_triplanar>` is enabled, but it is not used anywhere else.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv1_scale:
.. rst-class:: classref-property
:ref:`Vector3<class_Vector3>` **uv1_scale** = ``Vector3(1, 1, 1)`` :ref:`🔗<class_BaseMaterial3D_property_uv1_scale>`
.. rst-class:: classref-property-setget
- |void| **set_uv1_scale**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
- :ref:`Vector3<class_Vector3>` **get_uv1_scale**\ (\ )
How much to scale the ``UV`` coordinates. This is multiplied by ``UV`` in the vertex function. The Z component is used when :ref:`uv1_triplanar<class_BaseMaterial3D_property_uv1_triplanar>` is enabled, but it is not used anywhere else.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv1_triplanar:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **uv1_triplanar** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_uv1_triplanar>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, en lugar de usar ``UV`` las texturas usarán una búsqueda de texturas triplanares para determinar cómo aplicarlas. Triplanar usa la orientación de la superficie del objeto para mezclar entre las coordenadas de la textura. Lee de la textura fuente 3 veces, una para cada eje y luego se mezcla entre los resultados en base a cuán cerca se alinea el píxel con cada eje. Esto se utiliza a menudo para las características naturales para obtener una mezcla realista de los materiales. Debido a que la textura triplanar requiere muchas más lecturas de textura por píxel, es mucho más lenta que la textura UV normal. Además, debido a que está mezclando la textura entre los tres ejes, es inadecuado cuando se trata de lograr una textura nítida.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv1_triplanar_sharpness:
.. rst-class:: classref-property
:ref:`float<class_float>` **uv1_triplanar_sharpness** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_uv1_triplanar_sharpness>`
.. rst-class:: classref-property-setget
- |void| **set_uv1_triplanar_blend_sharpness**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_uv1_triplanar_blend_sharpness**\ (\ )
A lower number blends the texture more softly while a higher number blends the texture more sharply.
\ **Note:** :ref:`uv1_triplanar_sharpness<class_BaseMaterial3D_property_uv1_triplanar_sharpness>` is clamped between ``0.0`` and ``150.0`` (inclusive) as values outside that range can look broken depending on the mesh.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv1_world_triplanar:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **uv1_world_triplanar** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_uv1_world_triplanar>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, triplanar mapping for ``UV`` is calculated in world space rather than object local space. See also :ref:`uv1_triplanar<class_BaseMaterial3D_property_uv1_triplanar>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv2_offset:
.. rst-class:: classref-property
:ref:`Vector3<class_Vector3>` **uv2_offset** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_BaseMaterial3D_property_uv2_offset>`
.. rst-class:: classref-property-setget
- |void| **set_uv2_offset**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
- :ref:`Vector3<class_Vector3>` **get_uv2_offset**\ (\ )
How much to offset the ``UV2`` coordinates. This amount will be added to ``UV2`` in the vertex function. This can be used to offset a texture. The Z component is used when :ref:`uv2_triplanar<class_BaseMaterial3D_property_uv2_triplanar>` is enabled, but it is not used anywhere else.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv2_scale:
.. rst-class:: classref-property
:ref:`Vector3<class_Vector3>` **uv2_scale** = ``Vector3(1, 1, 1)`` :ref:`🔗<class_BaseMaterial3D_property_uv2_scale>`
.. rst-class:: classref-property-setget
- |void| **set_uv2_scale**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
- :ref:`Vector3<class_Vector3>` **get_uv2_scale**\ (\ )
How much to scale the ``UV2`` coordinates. This is multiplied by ``UV2`` in the vertex function. The Z component is used when :ref:`uv2_triplanar<class_BaseMaterial3D_property_uv2_triplanar>` is enabled, but it is not used anywhere else.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv2_triplanar:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **uv2_triplanar** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_uv2_triplanar>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, en lugar de usar ``UV2`` las texturas usarán una búsqueda de texturas triplanares para determinar cómo aplicarlas. Triplanar usa la orientación de la superficie del objeto para mezclar entre las coordenadas de la textura. Lee de la textura fuente 3 veces, una para cada eje y luego se mezcla entre los resultados en base a cuán cerca se alinea el píxel con cada eje. Esto se utiliza a menudo para las características naturales para obtener una mezcla realista de los materiales. Debido a que la textura triplanar requiere muchas más lecturas de textura por píxel, es mucho más lenta que la textura UV normal. Además, debido a que está mezclando la textura entre los tres ejes, es inadecuado cuando se trata de lograr una textura nítida.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv2_triplanar_sharpness:
.. rst-class:: classref-property
:ref:`float<class_float>` **uv2_triplanar_sharpness** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_uv2_triplanar_sharpness>`
.. rst-class:: classref-property-setget
- |void| **set_uv2_triplanar_blend_sharpness**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_uv2_triplanar_blend_sharpness**\ (\ )
A lower number blends the texture more softly while a higher number blends the texture more sharply.
\ **Note:** :ref:`uv2_triplanar_sharpness<class_BaseMaterial3D_property_uv2_triplanar_sharpness>` is clamped between ``0.0`` and ``150.0`` (inclusive) as values outside that range can look broken depending on the mesh.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_uv2_world_triplanar:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **uv2_world_triplanar** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_uv2_world_triplanar>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, triplanar mapping for ``UV2`` is calculated in world space rather than object local space. See also :ref:`uv2_triplanar<class_BaseMaterial3D_property_uv2_triplanar>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_vertex_color_is_srgb:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **vertex_color_is_srgb** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_vertex_color_is_srgb>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
If ``true``, vertex colors are considered to be stored in nonlinear sRGB encoding and are converted to linear encoding during rendering. If ``false``, vertex colors are considered to be stored in linear encoding and are rendered as-is. See also :ref:`albedo_texture_force_srgb<class_BaseMaterial3D_property_albedo_texture_force_srgb>`.
\ **Note:** Only effective when using the Forward+ and Mobile rendering methods, not Compatibility.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_vertex_color_use_as_albedo:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **vertex_color_use_as_albedo** = ``false`` :ref:`🔗<class_BaseMaterial3D_property_vertex_color_use_as_albedo>`
.. rst-class:: classref-property-setget
- |void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const|
Si es ``true``, el color del vértice se utiliza como color del albedo.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_property_z_clip_scale:
.. rst-class:: classref-property
:ref:`float<class_float>` **z_clip_scale** = ``1.0`` :ref:`🔗<class_BaseMaterial3D_property_z_clip_scale>`
.. rst-class:: classref-property-setget
- |void| **set_z_clip_scale**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_z_clip_scale**\ (\ )
Scales the object being rendered towards the camera to avoid clipping into things like walls. This is intended to be used for objects that are fixed with respect to the camera like player arms, tools, etc. Lighting and shadows will continue to work correctly when this setting is adjusted, but screen-space effects like SSAO and SSR may break with lower scales. Therefore, try to keep this setting as close to ``1.0`` as possible.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descripciones de Métodos
------------------------------------------------
.. _class_BaseMaterial3D_method_get_feature:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **get_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`\ ) |const| :ref:`🔗<class_BaseMaterial3D_method_get_feature>`
Returns ``true`` if the specified ``feature`` is enabled.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_method_get_flag:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **get_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`\ ) |const| :ref:`🔗<class_BaseMaterial3D_method_get_flag>`
Returns ``true`` if the specified ``flag`` is enabled.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_method_get_texture:
.. rst-class:: classref-method
:ref:`Texture2D<class_Texture2D>` **get_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`\ ) |const| :ref:`🔗<class_BaseMaterial3D_method_get_texture>`
Returns the :ref:`Texture2D<class_Texture2D>` associated with the specified texture ``param``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_method_set_feature:
.. rst-class:: classref-method
|void| **set_feature**\ (\ feature\: :ref:`Feature<enum_BaseMaterial3D_Feature>`, enable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_BaseMaterial3D_method_set_feature>`
If ``enable`` is ``true``, enables the specified ``feature``. Many features that are available in **BaseMaterial3D** need to be enabled before use. This way, the cost for using the feature is only incurred when specified. Features can also be enabled by setting their corresponding property to ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_method_set_flag:
.. rst-class:: classref-method
|void| **set_flag**\ (\ flag\: :ref:`Flags<enum_BaseMaterial3D_Flags>`, enable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_BaseMaterial3D_method_set_flag>`
If ``enable`` is ``true``, enables the specified ``flag``. Flags are optional behavior that can be turned on and off. Only one flag can be enabled at a time with this function, the flag enumerators cannot be bit-masked together to enable or disable multiple flags at once. Flags can also be enabled by setting their corresponding property to ``true``.
.. rst-class:: classref-item-separator
----
.. _class_BaseMaterial3D_method_set_texture:
.. rst-class:: classref-method
|void| **set_texture**\ (\ param\: :ref:`TextureParam<enum_BaseMaterial3D_TextureParam>`, texture\: :ref:`Texture2D<class_Texture2D>`\ ) :ref:`🔗<class_BaseMaterial3D_method_set_texture>`
Establece la textura para la ranura especificada por ``param``.
.. |virtual| replace:: :abbr:`virtual (Normalmente, este método debería ser sobreescrito por el usuario para que tenga algún efecto.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Este método no tiene efectos secundarios. No modifica ninguna de las variables miembro de la instancia.)`
.. |vararg| replace:: :abbr:`vararg (Este método permite agregar cualquier número de argumentos después de los descritos aquí.)`
.. |constructor| replace:: :abbr:`constructor (Este método se utiliza para construir un tipo.)`
.. |static| replace:: :abbr:`static (Este método no necesita una instancia para ser llamado, por lo que puede llamarse directamente utilizando el nombre de la clase.)`
.. |operator| replace:: :abbr:`operator (Este método describe un operador válido para usar con este tipo como operando izquierdo.)`
.. |bitfield| replace:: :abbr:`BitField (Este valor es un entero compuesto como una máscara de bits de las siguientes banderas.)`
.. |void| replace:: :abbr:`void (Sin valor de retorno.)`