# GDScript: 2D nodes

Source: https://tweens.gd/gdscript/nodes/2d/

Helpers for `CanvasItem`, `Node2D`, and the 2D node classes.

Each row pairs a helper with the property path it tweens. Names ending in `_x`, `_y`, `_z`, or `_alpha` write one component.

101 helpers: [CanvasItem](https://tweens.gd/gdscript/nodes/2d/#canvasitem) · [Node2D](https://tweens.gd/gdscript/nodes/2d/#node2d) · [AnimatedSprite2D](https://tweens.gd/gdscript/nodes/2d/#animatedsprite2d) · [Camera2D](https://tweens.gd/gdscript/nodes/2d/#camera2d) · [CanvasLayer](https://tweens.gd/gdscript/nodes/2d/#canvaslayer) · [CanvasModulate](https://tweens.gd/gdscript/nodes/2d/#canvasmodulate) · [CPUParticles2D](https://tweens.gd/gdscript/nodes/2d/#cpuparticles2d) · [GPUParticles2D](https://tweens.gd/gdscript/nodes/2d/#gpuparticles2d) · [Light2D](https://tweens.gd/gdscript/nodes/2d/#light2d) · [Line2D](https://tweens.gd/gdscript/nodes/2d/#line2d) · [Parallax2D](https://tweens.gd/gdscript/nodes/2d/#parallax2d) · [PathFollow2D](https://tweens.gd/gdscript/nodes/2d/#pathfollow2d) · [PointLight2D](https://tweens.gd/gdscript/nodes/2d/#pointlight2d) · [Polygon2D](https://tweens.gd/gdscript/nodes/2d/#polygon2d) · [Sprite2D](https://tweens.gd/gdscript/nodes/2d/#sprite2d)

## CanvasItem

| Helper | Property | Value |
| --- | --- | --- |
| `modulate` | `modulate` | Color |
| `modulate_alpha` | `modulate:a` | float |
| `self_modulate` | `self_modulate` | Color |
| `self_modulate_alpha` | `self_modulate:a` | float |

## Node2D

| Helper | Property | Value |
| --- | --- | --- |
| `global_position_2d` | `global_position` | Vector2 |
| `global_position_2d_x` | `global_position:x` | float |
| `global_position_2d_y` | `global_position:y` | float |
| `global_rotation_2d` | `global_rotation` | float |
| `global_scale_2d` | `global_scale` | Vector2 |
| `global_scale_2d_x` | `global_scale:x` | float |
| `global_scale_2d_y` | `global_scale:y` | float |
| `global_skew_2d` | `global_skew` | float |
| `position_2d` | `position` | Vector2 |
| `position_2d_x` | `position:x` | float |
| `position_2d_y` | `position:y` | float |
| `rotation_2d` | `rotation` | float |
| `scale_2d` | `scale` | Vector2 |
| `scale_2d_x` | `scale:x` | float |
| `scale_2d_y` | `scale:y` | float |
| `skew_2d` | `skew` | float |

## AnimatedSprite2D

| Helper | Property | Value |
| --- | --- | --- |
| `animated_sprite_2d_frame` | `frame` | int |
| `animated_sprite_2d_speed_scale` | `speed_scale` | float |

## Camera2D

| Helper | Property | Value |
| --- | --- | --- |
| `camera_2d_offset` | `offset` | Vector2 |
| `camera_2d_offset_x` | `offset:x` | float |
| `camera_2d_offset_y` | `offset:y` | float |
| `camera_2d_zoom` | `zoom` | Vector2 |
| `camera_2d_zoom_x` | `zoom:x` | float |
| `camera_2d_zoom_y` | `zoom:y` | float |

## CanvasLayer

| Helper | Property | Value |
| --- | --- | --- |
| `canvas_layer_offset` | `offset` | Vector2 |
| `canvas_layer_offset_x` | `offset:x` | float |
| `canvas_layer_offset_y` | `offset:y` | float |
| `canvas_layer_rotation` | `rotation` | float |
| `canvas_layer_scale` | `scale` | Vector2 |
| `canvas_layer_scale_x` | `scale:x` | float |
| `canvas_layer_scale_y` | `scale:y` | float |

## CanvasModulate

| Helper | Property | Value |
| --- | --- | --- |
| `canvas_modulate_color` | `color` | Color |
| `canvas_modulate_color_alpha` | `color:a` | float |

## CPUParticles2D

| Helper | Property | Value |
| --- | --- | --- |
| `cpu_particles_2d_color` | `color` | Color |
| `cpu_particles_2d_color_alpha` | `color:a` | float |
| `cpu_particles_2d_direction` | `direction` | Vector2 |
| `cpu_particles_2d_direction_x` | `direction:x` | float |
| `cpu_particles_2d_direction_y` | `direction:y` | float |
| `cpu_particles_2d_emission_rect_extents` | `emission_rect_extents` | Vector2 |
| `cpu_particles_2d_emission_rect_extents_x` | `emission_rect_extents:x` | float |
| `cpu_particles_2d_emission_rect_extents_y` | `emission_rect_extents:y` | float |
| `cpu_particles_2d_emission_sphere_radius` | `emission_sphere_radius` | float |
| `cpu_particles_2d_explosiveness` | `explosiveness` | float |
| `cpu_particles_2d_gravity` | `gravity` | Vector2 |
| `cpu_particles_2d_gravity_x` | `gravity:x` | float |
| `cpu_particles_2d_gravity_y` | `gravity:y` | float |
| `cpu_particles_2d_lifetime` | `lifetime` | float |
| `cpu_particles_2d_randomness` | `randomness` | float |
| `cpu_particles_2d_speed_scale` | `speed_scale` | float |
| `cpu_particles_2d_spread` | `spread` | float |

## GPUParticles2D

| Helper | Property | Value |
| --- | --- | --- |
| `gpu_particles_2d_amount_ratio` | `amount_ratio` | float |
| `gpu_particles_2d_explosiveness` | `explosiveness` | float |
| `gpu_particles_2d_lifetime` | `lifetime` | float |
| `gpu_particles_2d_randomness` | `randomness` | float |
| `gpu_particles_2d_speed_scale` | `speed_scale` | float |

## Light2D

| Helper | Property | Value |
| --- | --- | --- |
| `light_2d_shadow_color` | `shadow_color` | Color |
| `light_2d_shadow_color_alpha` | `shadow_color:a` | float |
| `light_color_2d` | `color` | Color |
| `light_energy_2d` | `energy` | float |

## Line2D

| Helper | Property | Value |
| --- | --- | --- |
| `line_2d_default_color` | `default_color` | Color |
| `line_2d_default_color_alpha` | `default_color:a` | float |
| `line_2d_width` | `width` | float |

## Parallax2D

| Helper | Property | Value |
| --- | --- | --- |
| `parallax_2d_autoscroll` | `autoscroll` | Vector2 |
| `parallax_2d_autoscroll_x` | `autoscroll:x` | float |
| `parallax_2d_autoscroll_y` | `autoscroll:y` | float |
| `parallax_2d_scroll_offset` | `scroll_offset` | Vector2 |
| `parallax_2d_scroll_offset_x` | `scroll_offset:x` | float |
| `parallax_2d_scroll_offset_y` | `scroll_offset:y` | float |
| `parallax_2d_scroll_scale` | `scroll_scale` | Vector2 |
| `parallax_2d_scroll_scale_x` | `scroll_scale:x` | float |
| `parallax_2d_scroll_scale_y` | `scroll_scale:y` | float |

## PathFollow2D

| Helper | Property | Value |
| --- | --- | --- |
| `path_follow_2d_h_offset` | `h_offset` | float |
| `path_follow_2d_progress` | `progress` | float |
| `path_follow_2d_progress_ratio` | `progress_ratio` | float |
| `path_follow_2d_v_offset` | `v_offset` | float |

## PointLight2D

| Helper | Property | Value |
| --- | --- | --- |
| `point_light_2d_height` | `height` | float |
| `point_light_2d_offset` | `offset` | Vector2 |
| `point_light_2d_offset_x` | `offset:x` | float |
| `point_light_2d_offset_y` | `offset:y` | float |
| `point_light_2d_texture_scale` | `texture_scale` | float |

## Polygon2D

| Helper | Property | Value |
| --- | --- | --- |
| `polygon_2d_color` | `color` | Color |
| `polygon_2d_color_alpha` | `color:a` | float |
| `polygon_2d_offset` | `offset` | Vector2 |
| `polygon_2d_offset_x` | `offset:x` | float |
| `polygon_2d_offset_y` | `offset:y` | float |
| `polygon_2d_texture_offset` | `texture_offset` | Vector2 |
| `polygon_2d_texture_offset_x` | `texture_offset:x` | float |
| `polygon_2d_texture_offset_y` | `texture_offset:y` | float |
| `polygon_2d_texture_rotation` | `texture_rotation` | float |
| `polygon_2d_texture_scale` | `texture_scale` | Vector2 |
| `polygon_2d_texture_scale_x` | `texture_scale:x` | float |
| `polygon_2d_texture_scale_y` | `texture_scale:y` | float |

## Sprite2D

| Helper | Property | Value |
| --- | --- | --- |
| `sprite_2d_frame` | `frame` | int |
| `sprite_2d_offset` | `offset` | Vector2 |
| `sprite_2d_offset_x` | `offset:x` | float |
| `sprite_2d_offset_y` | `offset:y` | float |
| `sprite_2d_region_rect` | `region_rect` | Rect2 |

## Units and constraints

-   Path helpers require a `PathFollow2D` under a `Path2D` with a nonempty curve. The node still controls looping and wrapping.
-   Set up sprite frames and animations before tweening a sprite’s `frame`.
