Files
godot-docs-l10n/classes/it/class_springarm3d.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

205 lines
9.1 KiB
ReStructuredText

:github_url: hide
.. _class_SpringArm3D:
SpringArm3D
===========
**Eredita:** :ref:`Node3D<class_Node3D>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
Una proiezione di raggio 3D che sposta dinamicamente i suoi nodi figlio vicino al punto di collisione.
.. rst-class:: classref-introduction-group
Descrizione
----------------------
**SpringArm3D** proietta un raggio o una forma lungo il suo asse Z e sposta tutti i suoi nodi figlio diretti al punto di collisione, con un margine opzionale. Questo è utile per le telecamere in terza persona che si avvicinano al giocatore quando si trovano in uno spazio ristretto (potrebbe essere necessario escludere il collisore del giocatore dalla verifica di collisione dello **SpringArm3D**).
.. rst-class:: classref-introduction-group
Tutorial
----------------
- :doc:`Telecamera in terza persona con braccio a molla <../tutorials/3d/spring_arm>`
.. rst-class:: classref-reftable-group
Proprietà
------------------
.. table::
:widths: auto
+-------------------------------+------------------------------------------------------------------+----------+
| :ref:`int<class_int>` | :ref:`collision_mask<class_SpringArm3D_property_collision_mask>` | ``1`` |
+-------------------------------+------------------------------------------------------------------+----------+
| :ref:`float<class_float>` | :ref:`margin<class_SpringArm3D_property_margin>` | ``0.01`` |
+-------------------------------+------------------------------------------------------------------+----------+
| :ref:`Shape3D<class_Shape3D>` | :ref:`shape<class_SpringArm3D_property_shape>` | |
+-------------------------------+------------------------------------------------------------------+----------+
| :ref:`float<class_float>` | :ref:`spring_length<class_SpringArm3D_property_spring_length>` | ``1.0`` |
+-------------------------------+------------------------------------------------------------------+----------+
.. rst-class:: classref-reftable-group
Metodi
------------
.. table::
:widths: auto
+---------------------------+-------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`add_excluded_object<class_SpringArm3D_method_add_excluded_object>`\ (\ RID\: :ref:`RID<class_RID>`\ ) |
+---------------------------+-------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`clear_excluded_objects<class_SpringArm3D_method_clear_excluded_objects>`\ (\ ) |
+---------------------------+-------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_hit_length<class_SpringArm3D_method_get_hit_length>`\ (\ ) |
+---------------------------+-------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`remove_excluded_object<class_SpringArm3D_method_remove_excluded_object>`\ (\ RID\: :ref:`RID<class_RID>`\ ) |
+---------------------------+-------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descrizioni delle proprietà
------------------------------------------------------
.. _class_SpringArm3D_property_collision_mask:
.. rst-class:: classref-property
:ref:`int<class_int>` **collision_mask** = ``1`` :ref:`🔗<class_SpringArm3D_property_collision_mask>`
.. rst-class:: classref-property-setget
- |void| **set_collision_mask**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_collision_mask**\ (\ )
The layers against which the collision check will be done. See `Collision layers and masks <../tutorials/physics/physics_introduction.html#collision-layers-and-masks>`__ in the documentation for more information.
.. rst-class:: classref-item-separator
----
.. _class_SpringArm3D_property_margin:
.. rst-class:: classref-property
:ref:`float<class_float>` **margin** = ``0.01`` :ref:`🔗<class_SpringArm3D_property_margin>`
.. rst-class:: classref-property-setget
- |void| **set_margin**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_margin**\ (\ )
Quando è effettuata la verifica di collisione, è fornita una lunghezza candidata per lo SpringArm3D.
Il margine è quindi sottratto a questa lunghezza e la traslazione è applicata agli oggetti figlio dello SpringArm3D.
Questo margine è utile quando lo SpringArm3D ha una :ref:`Camera3D<class_Camera3D>` come nodo figlio: senza il margine, la :ref:`Camera3D<class_Camera3D>` sarebbe posizionata sul punto esatto di collisione, mentre con il margine la :ref:`Camera3D<class_Camera3D>` sarebbe posizionata vicino al punto di collisione.
.. rst-class:: classref-item-separator
----
.. _class_SpringArm3D_property_shape:
.. rst-class:: classref-property
:ref:`Shape3D<class_Shape3D>` **shape** :ref:`🔗<class_SpringArm3D_property_shape>`
.. rst-class:: classref-property-setget
- |void| **set_shape**\ (\ value\: :ref:`Shape3D<class_Shape3D>`\ )
- :ref:`Shape3D<class_Shape3D>` **get_shape**\ (\ )
Lo :ref:`Shape3D<class_Shape3D>` da utilizzare per SpringArm3D.
Quando la forma è impostata, lo SpringArm3D eseguirà la proiezione dello :ref:`Shape3D<class_Shape3D>` sul suo asse z invece di eseguire una proiezione di raggio.
.. rst-class:: classref-item-separator
----
.. _class_SpringArm3D_property_spring_length:
.. rst-class:: classref-property
:ref:`float<class_float>` **spring_length** = ``1.0`` :ref:`🔗<class_SpringArm3D_property_spring_length>`
.. rst-class:: classref-property-setget
- |void| **set_length**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_length**\ (\ )
L'estensione massima dello SpringArm3D. È usata come lunghezza per la proiezione sia di raggio sia di forma, utilizzata internamente per calcolare la posizione desiderata dei nodi figlio dello SpringArm3D.
Per saperne di più su come eseguire una proiezione di forma o una proiezione di raggio, consultare la documentazione di :ref:`PhysicsDirectSpaceState3D<class_PhysicsDirectSpaceState3D>`.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descrizioni dei metodi
--------------------------------------------
.. _class_SpringArm3D_method_add_excluded_object:
.. rst-class:: classref-method
|void| **add_excluded_object**\ (\ RID\: :ref:`RID<class_RID>`\ ) :ref:`🔗<class_SpringArm3D_method_add_excluded_object>`
Aggiunge l'oggetto :ref:`PhysicsBody3D<class_PhysicsBody3D>` con il :ref:`RID<class_RID>` specificato alla lista degli oggetti :ref:`PhysicsBody3D<class_PhysicsBody3D>` esclusi dalla verifica delle collisioni.
.. rst-class:: classref-item-separator
----
.. _class_SpringArm3D_method_clear_excluded_objects:
.. rst-class:: classref-method
|void| **clear_excluded_objects**\ (\ ) :ref:`🔗<class_SpringArm3D_method_clear_excluded_objects>`
Svuota la lista degli oggetti :ref:`PhysicsBody3D<class_PhysicsBody3D>` esclusi dalla verifica delle collisioni.
.. rst-class:: classref-item-separator
----
.. _class_SpringArm3D_method_get_hit_length:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_hit_length**\ (\ ) :ref:`🔗<class_SpringArm3D_method_get_hit_length>`
Restituisce la lunghezza attuale del braccio a molla.
.. rst-class:: classref-item-separator
----
.. _class_SpringArm3D_method_remove_excluded_object:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **remove_excluded_object**\ (\ RID\: :ref:`RID<class_RID>`\ ) :ref:`🔗<class_SpringArm3D_method_remove_excluded_object>`
Rimuove il :ref:`RID<class_RID>` specificato dalla lista degli oggetti :ref:`PhysicsBody3D<class_PhysicsBody3D>` esclusi dalla verifica delle collisioni.
.. |virtual| replace:: :abbr:`virtual (Questo metodo dovrebbe solitamente essere sovrascritto dall'utente per aver un effetto.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Questo metodo non ha effetti collaterali. Non modifica alcuna variabile appartenente all'istanza.)`
.. |vararg| replace:: :abbr:`vararg (Questo metodo accetta qualsiasi numero di argomenti oltre a quelli descritti qui.)`
.. |constructor| replace:: :abbr:`constructor (Questo metodo è utilizzato per creare un tipo.)`
.. |static| replace:: :abbr:`static (Questo metodo non necessita di alcun'istanza per essere chiamato, quindi può essere chiamato direttamente usando il nome della classe.)`
.. |operator| replace:: :abbr:`operator (Questo metodo descrive un operatore valido da usare con questo tipo come operando di sinistra.)`
.. |bitfield| replace:: :abbr:`BitField (Questo valore è un intero composto da una maschera di bit dei seguenti flag.)`
.. |void| replace:: :abbr:`void (Nessun valore restituito.)`